summaryrefslogtreecommitdiff
path: root/classes/Notice_tag.php
diff options
context:
space:
mode:
authorEvan Prodromou <evan@controlyourself.ca>2008-09-28 14:09:04 -0400
committerEvan Prodromou <evan@controlyourself.ca>2008-09-28 14:09:04 -0400
commit8d53a7d463e3cc21f1db6b0b8df31d3b51cbd820 (patch)
tree56f5e21bb0b8cbbc01540936d6a1c86ab1095ed4 /classes/Notice_tag.php
parentb2046502428273482368d2698361e06dd236229e (diff)
cache tag streams in Memcached, too
darcs-hash:20080928180904-5ed1f-ebf95f6f04ee4128a1ab2bb9a6a06a946926665d.gz
Diffstat (limited to 'classes/Notice_tag.php')
-rw-r--r--classes/Notice_tag.php30
1 files changed, 28 insertions, 2 deletions
diff --git a/classes/Notice_tag.php b/classes/Notice_tag.php
index 7f950d946..0f4c2f0d5 100644
--- a/classes/Notice_tag.php
+++ b/classes/Notice_tag.php
@@ -1,7 +1,22 @@
<?php
-/**
- * Table Definition for notice_tag
+/*
+ * Laconica - a distributed open-source microblogging tool
+ * Copyright (C) 2008, Controlez-Vous, Inc.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
+
require_once INSTALLDIR.'/classes/Memcached_DataObject.php';
class Notice_tag extends Memcached_DataObject
@@ -19,4 +34,15 @@ class Notice_tag extends Memcached_DataObject
/* the code above is auto generated do not remove the tag below */
###END_AUTOCODE
+
+ static function noticeStream($tag, $offset=0, $limit=20) {
+ $qry =
+ 'SELECT notice.* ' .
+ 'FROM notice JOIN notice_tag ON notice.id = notice_tag.notice_id ' .
+ 'WHERE notice_tag.tag = "%s"';
+
+ return Notice::getStream(sprintf($qry, $tag),
+ 'notice_tag:notice_stream:' . $tag,
+ $offset, $limit);
+ }
}