]> git.mxchange.org Git - friendica.git/commitdiff
Issue 6521: Don't send notifications for deleted items
authorMichael <heluecht@pirati.ca>
Tue, 10 Sep 2019 05:44:09 +0000 (05:44 +0000)
committerMichael <heluecht@pirati.ca>
Tue, 10 Sep 2019 05:44:09 +0000 (05:44 +0000)
include/enotify.php

index becf672b2aaa4cddae79f208d963f9901c099990..6a66c8fa09a1822d7df160420e651659ce4dcb91 100644 (file)
@@ -142,7 +142,7 @@ function notification($params)
        }
 
        if ($params['type'] == NOTIFY_COMMENT || $params['type'] == NOTIFY_TAGSELF) {
-               $thread = Item::selectFirstThreadForUser($params['uid'], ['ignored'], ['iid' => $parent_id]);
+               $thread = Item::selectFirstThreadForUser($params['uid'], ['ignored'], ['iid' => $parent_id, 'deleted' => false]);
                if (DBA::isResult($thread) && $thread['ignored']) {
                        Logger::log('Thread ' . $parent_id . ' will be ignored', Logger::DEBUG);
                        L10n::popLang();
@@ -161,7 +161,7 @@ function notification($params)
                // if it's a post figure out who's post it is.
                $item = null;
                if ($params['otype'] === 'item' && $parent_id) {
-                       $item = Item::selectFirstForUser($params['uid'], Item::ITEM_FIELDLIST, ['id' => $parent_id]);
+                       $item = Item::selectFirstForUser($params['uid'], Item::ITEM_FIELDLIST, ['id' => $parent_id, 'deleted' => false]);
                }
 
                $item_post_type = Item::postType($item);
@@ -783,7 +783,7 @@ function check_item_notification($itemid, $uid, $defaulttype = "") {
        $fields = ['id', 'mention', 'tag', 'parent', 'title', 'body',
                'author-link', 'author-name', 'author-avatar', 'author-id',
                'guid', 'parent-uri', 'uri', 'contact-id', 'network'];
-       $condition = ['id' => $itemid, 'gravity' => [GRAVITY_PARENT, GRAVITY_COMMENT]];
+       $condition = ['id' => $itemid, 'gravity' => [GRAVITY_PARENT, GRAVITY_COMMENT], 'deleted' => false];
        $item = Item::selectFirstForUser($uid, $fields, $condition);
        if (!DBA::isResult($item) || in_array($item['author-id'], $contacts)) {
                return false;
@@ -840,7 +840,7 @@ function check_item_notification($itemid, $uid, $defaulttype = "") {
 
        // Is it a post that the user had started?
        $fields = ['ignored', 'mention'];
-       $thread = Item::selectFirstThreadForUser($params['uid'], $fields, ['iid' => $item["parent"]]);
+       $thread = Item::selectFirstThreadForUser($params['uid'], $fields, ['iid' => $item["parent"], 'deleted' => false]);
 
        if ($thread['mention'] && !$thread['ignored'] && !isset($params["type"])) {
                $params["type"] = NOTIFY_COMMENT;
@@ -848,7 +848,7 @@ function check_item_notification($itemid, $uid, $defaulttype = "") {
        }
 
        // And now we check for participation of one of our contacts in the thread
-       $condition = ['parent' => $item["parent"], 'author-id' => $contacts];
+       $condition = ['parent' => $item["parent"], 'author-id' => $contacts, 'deleted' => false];
 
        if (!$thread['ignored'] && !isset($params["type"]) && Item::exists($condition)) {
                $params["type"] = NOTIFY_COMMENT;