diff options
author | Friendika <info@friendika.com> | 2011-10-13 15:32:43 -0700 |
---|---|---|
committer | Friendika <info@friendika.com> | 2011-10-13 15:32:43 -0700 |
commit | 4eae1e5d8a37f206177c8eeb379c0f32aa84d5ab (patch) | |
tree | b5fb1b72d12c9356cb3332549a5f762924898f77 /include/notifier.php | |
parent | d60505ffb088048b7ebcb7e44a15cd454cbd6f1e (diff) | |
download | volse-hubzilla-4eae1e5d8a37f206177c8eeb379c0f32aa84d5ab.tar.gz volse-hubzilla-4eae1e5d8a37f206177c8eeb379c0f32aa84d5ab.tar.bz2 volse-hubzilla-4eae1e5d8a37f206177c8eeb379c0f32aa84d5ab.zip |
don't propagate deletions for other people's stuff
Diffstat (limited to 'include/notifier.php')
-rw-r--r-- | include/notifier.php | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/include/notifier.php b/include/notifier.php index 9dc524585..bbddee109 100644 --- a/include/notifier.php +++ b/include/notifier.php @@ -192,6 +192,8 @@ function notifier_run($argv, $argc){ // be notified during this run. // Other DFRN conversation members will be alerted during polled updates. + + // Diaspora members currently are not notified of expirations, and other networks have // either limited or no ability to process deletions. We should at least fix Diaspora // by stringing togther an array of retractions and sending them onward. @@ -210,6 +212,7 @@ function notifier_run($argv, $argc){ */ if((! $top_level) && ($parent['wall'] == 0) && (! $expire) && (stristr($target_item['uri'],$localhost))) { + logger('notifier: followup', LOGGER_DEBUG); // local followup to remote post $followup = true; $public_message = false; // not public @@ -218,6 +221,13 @@ function notifier_run($argv, $argc){ else { $followup = false; + // don't send deletions onward for other people's stuff + + if($target_item['deleted'] && (! intval($target_item['wall']))) { + logger('notifier: ignoring delete notification for non-wall item'); + return; + } + if((strlen($parent['allow_cid'])) || (strlen($parent['allow_gid'])) || (strlen($parent['deny_cid'])) @@ -357,6 +367,7 @@ function notifier_run($argv, $argc){ if(($public_message) && $item['private']) continue; + $contact = get_item_contact($item,$contacts); if(! $contact) |