diff options
Diffstat (limited to 'include/conversation.php')
-rw-r--r-- | include/conversation.php | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/include/conversation.php b/include/conversation.php index e58429255..a3fdf39df 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -395,7 +395,9 @@ function count_descendants($item) { * @brief Check if the activity of the item is visible. * * likes (etc.) can apply to other things besides posts. Check if they are post - * children, in which case we handle them specially. + * children, in which case we handle them specially. Activities which are unrecognised + * as having special meaning and hidden will be treated as posts or comments and visible + * in the stream. * * @param array $item * @return boolean @@ -403,12 +405,21 @@ function count_descendants($item) { function visible_activity($item) { $hidden_activities = array(ACTIVITY_LIKE, ACTIVITY_DISLIKE, ACTIVITY_AGREE, ACTIVITY_DISAGREE, ACTIVITY_ABSTAIN, ACTIVITY_ATTEND, ACTIVITY_ATTENDNO, ACTIVITY_ATTENDMAYBE); + $post_types = array(ACTIVITY_OBJ_NOTE,ACTIVITY_OBJ_COMMENT,basename(ACTIVITY_OBJ_NOTE),basename(ACTIVITY_OBJ_COMMENT)); + foreach ($hidden_activities as $act) { if ((activity_match($item['verb'], $act)) && ($item['mid'] != $item['parent_mid'])) { return false; } } + // In order to share edits with networks which have no concept of editing, we'll create + // separate activities to indicate the edit. Our network will not require them, since our + // edits are automatically applied and the activity indicated. + + if(($item['verb'] === ACTIVITY_UPDATE) && (in_array($item['obj_type'],$post_types))) + return false; + return true; } |