Only get POST verbs for noticestreams for now

Since we store 'favorite' verbs as notices now too, they caused a lot of
"null" notices that might not be interesting before we handle them better
in the UIs.
This commit is contained in:
Mikael Nordfeldth 2014-07-09 13:37:09 +02:00
parent 42e2232371
commit efa3e8f3f4
5 changed files with 28 additions and 2 deletions

View File

@ -95,6 +95,12 @@ class RawConversationNoticeStream extends NoticeStream
$notice->limit($offset, $limit);
}
if (!$this->allVerbs) {
$notice->whereAdd(sprintf('verb="%s" OR verb="%s"',
ActivityVerb::POST,
ActivityUtils::resolveUri(ActivityVerb::POST, true)));
}
// ORDER BY
// currently imitates the previously used "_reverseChron" sorting
$notice->orderBy('notice.created DESC');

View File

@ -46,6 +46,8 @@ if (!defined('STATUSNET')) {
*/
abstract class NoticeStream
{
protected $allVerbs = false; // Will only get 'post' activityverbs by default.
abstract function getNoticeIds($offset, $limit, $since_id, $max_id);
function getNotices($offset, $limit, $sinceId = null, $maxId = null)

View File

@ -136,6 +136,12 @@ class RawProfileNoticeStream extends NoticeStream
Notice::addWhereSinceId($notice, $since_id);
Notice::addWhereMaxId($notice, $max_id);
if (!$this->allVerbs) {
$notice->whereAdd(sprintf('verb="%s" OR verb="%s"',
ActivityVerb::POST,
ActivityUtils::resolveUri(ActivityVerb::POST, true)));
}
$notice->orderBy('created DESC, id DESC');
if (!is_null($offset)) {

View File

@ -92,6 +92,12 @@ class RawPublicNoticeStream extends NoticeStream
Notice::addWhereSinceId($notice, $since_id);
Notice::addWhereMaxId($notice, $max_id);
if (!$this->allVerbs) {
$notice->whereAdd(sprintf('verb="%s" OR verb="%s"',
ActivityVerb::POST,
ActivityUtils::resolveUri(ActivityVerb::POST, true)));
}
$ids = array();
if ($notice->find()) {
@ -105,4 +111,4 @@ class RawPublicNoticeStream extends NoticeStream
return $ids;
}
}
}

View File

@ -86,6 +86,12 @@ class RawReplyNoticeStream extends NoticeStream
Notice::addWhereSinceId($reply, $since_id, 'notice_id', 'modified');
Notice::addWhereMaxId($reply, $max_id, 'notice_id', 'modified');
if (!$this->allVerbs) {
$notice->whereAdd(sprintf('verb="%s" OR verb="%s"',
ActivityVerb::POST,
ActivityUtils::resolveUri(ActivityVerb::POST, true)));
}
$reply->orderBy('modified DESC, notice_id DESC');
if (!is_null($offset)) {
@ -102,4 +108,4 @@ class RawReplyNoticeStream extends NoticeStream
return $ids;
}
}
}