fail gracefully when no IDs for tag cloud

This commit is contained in:
Evan Prodromou 2011-04-20 19:07:07 -04:00
parent 0c0aabeda5
commit 5899a3f5ee
2 changed files with 54 additions and 46 deletions

View File

@ -70,6 +70,9 @@ class InboxTagCloudSection extends TagCloudSection
$ids = $stream->getNoticeIds(0, Inbox::MAX_NOTICES, null, null); $ids = $stream->getNoticeIds(0, Inbox::MAX_NOTICES, null, null);
if (empty($ids)) {
$tag = array();
} else {
$weightexpr = common_sql_weight('notice_tag.created', common_config('tag', 'dropoff')); $weightexpr = common_sql_weight('notice_tag.created', common_config('tag', 'dropoff'));
// @fixme should we use the cutoff too? Doesn't help with indexing per-user. // @fixme should we use the cutoff too? Doesn't help with indexing per-user.
@ -99,6 +102,7 @@ class InboxTagCloudSection extends TagCloudSection
while ($t->fetch()) { while ($t->fetch()) {
$tag[] = clone($t); $tag[] = clone($t);
} }
}
Memcached_DataObject::cacheSet($keypart, $tag, 3600); Memcached_DataObject::cacheSet($keypart, $tag, 3600);
} }

View File

@ -71,6 +71,9 @@ class PublicTagCloudSection extends TagCloudSection
$ids = $stream->getNoticeIds(0, 500, null, null); $ids = $stream->getNoticeIds(0, 500, null, null);
if (empty($ids)) {
$tag = array();
} else {
$weightexpr = common_sql_weight('notice_tag.created', common_config('tag', 'dropoff')); $weightexpr = common_sql_weight('notice_tag.created', common_config('tag', 'dropoff'));
// @fixme should we use the cutoff too? Doesn't help with indexing per-user. // @fixme should we use the cutoff too? Doesn't help with indexing per-user.
@ -100,6 +103,7 @@ class PublicTagCloudSection extends TagCloudSection
while ($t->fetch()) { while ($t->fetch()) {
$tag[] = clone($t); $tag[] = clone($t);
} }
}
Memcached_DataObject::cacheSet($keypart, $tag, 60 * 60 * 24); Memcached_DataObject::cacheSet($keypart, $tag, 60 * 60 * 24);
} }