diff options
-rw-r--r-- | Zotlabs/Module/Request.php | 20 | ||||
-rw-r--r-- | include/items.php | 19 |
2 files changed, 21 insertions, 18 deletions
diff --git a/Zotlabs/Module/Request.php b/Zotlabs/Module/Request.php index 811350205..dee4aa6b6 100644 --- a/Zotlabs/Module/Request.php +++ b/Zotlabs/Module/Request.php @@ -60,6 +60,7 @@ class Request extends Controller killme(); } + $parent = intval($_GET['parent']); $mid = strip_tags($_GET['mid']); @@ -82,23 +83,24 @@ class Request extends Controller } if (!$r) { - $sys = get_sys_channel(); - $sql_extra = item_permissions_sql(0, $observer_hash); + + $x = q("SELECT uid FROM item WHERE id = %d", + intval($parent) + ); + + $sql_extra = item_permissions_sql($x[0]['uid'], $observer_hash); $r = q("SELECT xchan_hash, xchan_name as name, xchan_url as url, xchan_photo_s as photo FROM item LEFT JOIN xchan ON author_xchan = xchan_hash - WHERE - -- This covers /channel/name -- This covers /pubstream - ((item.thr_parent = '%s' $sql_extra) OR (item.thr_parent = '%s' AND item.uid = %d)) - AND parent = %d + WHERE uid = %d + AND thr_parent = '%s' AND verb = '%s' AND item_thread_top = 0 + $sql_extra $item_normal ORDER BY item.created", + intval($x[0]['uid']), dbesc($mid), - dbesc($mid), - intval($sys['channel_id']), - intval($parent), dbesc($verb) ); } diff --git a/include/items.php b/include/items.php index 87921b2b2..87ba2842c 100644 --- a/include/items.php +++ b/include/items.php @@ -5460,9 +5460,13 @@ function items_by_thr_parent($mid, $parent, $sql_extra = '') { } if (!$ret) { - $sys = get_sys_channel(); + + $x = q("SELECT uid FROM item WHERE id = %d", + intval($parent) + ); + $observer_hash = get_observer_hash(); - $sql_extra = item_permissions_sql(0, $observer_hash); + $sql_extra = item_permissions_sql($x[0]['uid'], $observer_hash); $ret = q( "SELECT item.*, @@ -5472,19 +5476,16 @@ function items_by_thr_parent($mid, $parent, $sql_extra = '') { AND c.item_thread_top = 0 AND c.thr_parent = item.mid $item_normal_c - WHERE - -- This covers /channel/name -- This covers /pubstream - ((item.thr_parent = '%s' $sql_extra) OR (item.thr_parent = '%s' AND item.uid = %d)) - AND item.parent = %d + WHERE item.thr_parent = '%s' + AND item.uid = %d AND item.verb NOT IN ('Like', 'Dislike', 'Announce') AND item.item_thread_top = 0 + $sql_extra $item_normal GROUP BY item.id ORDER BY item.created", dbesc($mid), - dbesc($mid), - intval($sys['channel_id']), - intval($parent) + intval($x[0]['uid']) ); } |