X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=include%2Fthreads.php;h=d88307ecfb648ff1c653b0f7bfb55ab22fbf77b3;hb=8bdb026745a442ef8aa4ba9ee44d0be30f8b80d4;hp=e9a0d7f1f271d7a4c5710d8e9b1a9f6e7005749c;hpb=5c0b550f38dba890f9d79b5356661bf1bf2f82b6;p=friendica.git diff --git a/include/threads.php b/include/threads.php index e9a0d7f1f2..d88307ecfb 100644 --- a/include/threads.php +++ b/include/threads.php @@ -19,10 +19,6 @@ function add_thread($itemid, $onlyshadow = false) { logger("add_thread: Add thread for item ".$itemid." - ".print_r($result, true), LOGGER_DEBUG); } - // Store a shadow copy of public items for displaying a global community page? - if (!get_config('system', 'global_community')) - return; - // is it already a copy? if (($itemid == 0) OR ($item['uid'] == 0)) return; @@ -66,9 +62,11 @@ function add_thread($itemid, $onlyshadow = false) { if (!$r) { // Preparing public shadow (removing user specific data) require_once("include/items.php"); + require_once("include/Contact.php"); + unset($item[0]['id']); $item[0]['uid'] = 0; - $item[0]['contact-id'] = 0; + $item[0]['contact-id'] = get_contact($item[0]['author-link'], 0); $public_shadow = item_store($item[0], false, false, true); logger("add_thread: Stored public shadow for post ".$itemid." under id ".$public_shadow, LOGGER_DEBUG); @@ -76,6 +74,35 @@ function add_thread($itemid, $onlyshadow = false) { } } +function add_shadow_entry($item) { + + // Is this a shadow entry? + if ($item['uid'] == 0) + return; + + // Is there a shadow parent? + $r = q("SELECT `id` FROM `item` WHERE `uri` = '%s' AND `uid` = 0 LIMIT 1", dbesc($item['parent-uri'])); + if (!count($r)) + return; + + // Is there already a shadow entry? + $r = q("SELECT `id` FROM `item` WHERE `uri` = '%s' AND `uid` = 0 LIMIT 1", dbesc($item['uri'])); + + if (count($r)) + return; + + // Preparing public shadow (removing user specific data) + require_once("include/items.php"); + require_once("include/Contact.php"); + + unset($item['id']); + $item['uid'] = 0; + $item['contact-id'] = get_contact($item['author-link'], 0); + $public_shadow = item_store($item, false, false, true); + + logger("Stored public shadow for comment ".$item['uri']." under id ".$public_shadow, LOGGER_DEBUG); +} + function update_thread_uri($itemuri, $uid) { $messages = q("SELECT `id` FROM `item` WHERE uri ='%s' AND uid=%d", dbesc($itemuri), intval($uid));