diff options
author | Mario <mario@mariovavti.com> | 2023-04-08 20:18:17 +0000 |
---|---|---|
committer | Mario <mario@mariovavti.com> | 2023-04-08 20:18:17 +0000 |
commit | 9b93dc51373878d7a0cbce3053e4308e7715b9c1 (patch) | |
tree | 2fb87ed54c4690ddd85716b688d88283da52d24a | |
parent | 5ec721b97823df32dca418bf2b5343b70c584114 (diff) | |
download | volse-hubzilla-9b93dc51373878d7a0cbce3053e4308e7715b9c1.tar.gz volse-hubzilla-9b93dc51373878d7a0cbce3053e4308e7715b9c1.tar.bz2 volse-hubzilla-9b93dc51373878d7a0cbce3053e4308e7715b9c1.zip |
split up a potentially long running sql query
-rw-r--r-- | Zotlabs/Lib/Libzot.php | 14 | ||||
-rw-r--r-- | include/text.php | 2 |
2 files changed, 12 insertions, 4 deletions
diff --git a/Zotlabs/Lib/Libzot.php b/Zotlabs/Lib/Libzot.php index 129ac6b56..97ea1bbfd 100644 --- a/Zotlabs/Lib/Libzot.php +++ b/Zotlabs/Lib/Libzot.php @@ -1389,14 +1389,20 @@ class Libzot { $r = []; $thread_parent = self::find_parent($env, $act); if ($thread_parent) { - $z = q("select channel_hash as hash from channel left join item on channel.channel_id = item.uid where ( item.thr_parent = '%s' OR item.parent_mid = '%s' ) and channel_hash != '%s'", + $uids = q("SELECT uid FROM item WHERE thr_parent = '%s' OR parent_mid = '%s'", dbesc($thread_parent), - dbesc($thread_parent), - dbesc($env['sender']) + dbesc($thread_parent) ); + + $uids = ids_to_querystr($uids, 'uid'); + + $z = q("SELECT channel_hash FROM channel WHERE channel_hash != '%s' AND channel_id IN ($uids)", + dbesc($msg['sender']) + ); + if ($z) { foreach ($z as $zv) { - $r[] = $zv['hash']; + $r[] = $zv['channel_hash']; } } } diff --git a/include/text.php b/include/text.php index 705147e93..f1a7f5fbf 100644 --- a/include/text.php +++ b/include/text.php @@ -3322,6 +3322,8 @@ function item_url_replace($channel,&$item,$old,$new,$oldnick = '') { $root_replaced = null; $nick_replaced = null; + // FIXME: ignore anything in a share tag + $item['body'] = str_replace($old, $new, $item['body'], $root_replaced); if($oldnick && ($oldnick !== $channel['channel_address'])) { |