]> git.mxchange.org Git - friendica.git/blobdiff - include/api.php
Merge pull request #9901 from annando/post-thread-user
[friendica.git] / include / api.php
index bcf14d6a829603e38054331a762f81bb08a46655..4c90ab80dc1083cf363c6ebefd1473f310f59462 100644 (file)
@@ -43,7 +43,6 @@ use Friendica\Model\Notification;
 use Friendica\Model\Photo;
 use Friendica\Model\Post;
 use Friendica\Model\User;
-use Friendica\Model\UserItem;
 use Friendica\Model\Verb;
 use Friendica\Network\HTTPException;
 use Friendica\Network\HTTPException\BadRequestException;
@@ -2170,24 +2169,21 @@ function api_statuses_mentions($type)
 
        $start = max(0, ($page - 1) * $count);
 
-       $query = "`gravity` IN (?, ?) AND `id` IN (SELECT `iid` FROM `user-item`                
-               WHERE (`hidden` IS NULL OR NOT `hidden`) AND
-                       `uid` = ? AND `notification-type` & ? != 0
-                       AND `iid` > ?";
+       $query = "`gravity` IN (?, ?) AND `uri-id` IN
+               (SELECT `uri-id` FROM `post-user-notification` WHERE `uid` = ? AND `notification-type` & ? != 0 ORDER BY `uri-id`)
+               AND (`uid` = 0 OR (`uid` = ? AND NOT `global`)) AND `id` > ?";
 
        $condition = [GRAVITY_PARENT, GRAVITY_COMMENT, api_user(),
-               UserItem::NOTIF_EXPLICIT_TAGGED | UserItem::NOTIF_IMPLICIT_TAGGED |
-               UserItem::NOTIF_THREAD_COMMENT | UserItem::NOTIF_DIRECT_COMMENT |
-               UserItem::NOTIF_DIRECT_THREAD_COMMENT,
-               $since_id];
+               Post\UserNotification::NOTIF_EXPLICIT_TAGGED | Post\UserNotification::NOTIF_IMPLICIT_TAGGED |
+               Post\UserNotification::NOTIF_THREAD_COMMENT | Post\UserNotification::NOTIF_DIRECT_COMMENT |
+               Post\UserNotification::NOTIF_DIRECT_THREAD_COMMENT,
+               api_user(), $since_id];
 
        if ($max_id > 0) {
-               $query .= " AND `iid` <= ?";
+               $query .= " AND `id` <= ?";
                $condition[] = $max_id;
        }
 
-       $query .= ")";
-
        array_unshift($condition, $query);
 
        $params = ['order' => ['id' => true], 'limit' => [$start, $count]];