]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - lib/inboxnoticestream.php
Squashed commit of the following:
[quix0rs-gnu-social.git] / lib / inboxnoticestream.php
index 5517cef1137b4bcfddb3033a59c0611efc5dbb9c..58b007505084baa76ab557c23d48249ff69406c4 100644 (file)
@@ -135,4 +135,30 @@ class RawInboxNoticeStream extends NoticeStream
 
         return $ids;
     }
+
+    function getNotices($offset, $limit, $sinceId, $maxId)
+    {
+        $all = array();
+
+        do {
+
+            $ids = $this->getNoticeIds($offset, $limit, $sinceId, $maxId);
+
+            $notices = Memcached_DataObject::pivotGet('Notice', 'id', $ids);
+
+            // By default, takes out false values
+
+            $notices = array_filter($notices);
+
+            $all = array_merge($all, $notices);
+
+            if (count($notices < count($ids))) {
+                $offset += $limit;
+                $limit  -= count($notices);
+            }
+
+        } while (count($notices) < count($ids) && count($ids) > 0);
+
+        return new ArrayWrapper($all);
+    }
 }