diff --git a/include/items.php b/include/items.php index 381032629a..caf4973457 100644 --- a/include/items.php +++ b/include/items.php @@ -2033,13 +2033,12 @@ function local_delivery($importer,$data) { $community = false; -// if($importer['page-flags'] == PAGE_COMMUNITY) { -// $sql_extra = ''; -// $community = true; -// logger('local_delivery: community reply'); -// } -// else - + if($importer['page-flags'] == PAGE_COMMUNITY) { + $sql_extra = ''; + $community = true; + logger('local_delivery: community reply'); + } + else $sql_extra = " and contact.self = 1 and item.wall = 1 "; // was the top-level post for this reply written by somebody on this site? @@ -2113,14 +2112,14 @@ function local_delivery($importer,$data) { } } - if($community) { - $newtag = '@[url=' . $a->get_baseurl() . '/profile/' . $importer['nickname'] . ']' . $importer['username'] . '[/url]'; - if(! stristr($datarray['tag'],$newtag)) { - if(strlen($datarray['tag'])) - $datarray['tag'] .= ','; - $datarray['tag'] .= $newtag; - } - } +// if($community) { +// $newtag = '@[url=' . $a->get_baseurl() . '/profile/' . $importer['nickname'] . ']' . $importer['username'] . '[/url]'; +// if(! stristr($datarray['tag'],$newtag)) { +// if(strlen($datarray['tag'])) +// $datarray['tag'] .= ','; +// $datarray['tag'] .= $newtag; +// } +// } $posted_id = item_store($datarray); diff --git a/include/notifier.php b/include/notifier.php index a4fe9b71e0..c81ca2d153 100644 --- a/include/notifier.php +++ b/include/notifier.php @@ -218,6 +218,11 @@ function notifier_run($argv, $argc){ $relay_to_owner = true; } + + if(($cmd === 'uplink') && (intval($parent['forum_mode'])) && (! $top_level)) { + $relay_to_owner = true; + } + // until the 'origin' flag has been in use for several months // we will just use it as a fallback test // later we will be able to use it as the primary test of whether or not to relay. @@ -259,6 +264,13 @@ function notifier_run($argv, $argc){ $deny_people = expand_acl($parent['deny_cid']); $deny_groups = expand_groups(expand_acl($parent['deny_gid'])); + // if our parent is a forum, uplink to the origonal author causing + // a delivery fork + + if(intval($parent['forum_mode']) && (! $top_level) && ($cmd !== 'uplink')) { + proc_run('php','include/notifier','uplink',$item_id); + } + $conversants = array(); foreach($items as $item) {