]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - classes/Notice_tag.php
remove 'nudge' -- it won't be in this release
[quix0rs-gnu-social.git] / classes / Notice_tag.php
index 5dca41a7ab5a5a79ccbaf11ec47bbff43025f37f..5b75ff13feb05a22bf48596ac5d73fdaf69f1759 100644 (file)
@@ -1,8 +1,23 @@
 <?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 'classes/Memcached_DataObject.php';
+
+require_once INSTALLDIR.'/classes/Memcached_DataObject.php';
 
 class Notice_tag extends Memcached_DataObject 
 {
@@ -19,4 +34,22 @@ class Notice_tag extends Memcached_DataObject
 
     /* the code above is auto generated do not remove the tag below */
     ###END_AUTOCODE
+       
+       static function getStream($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:' . common_keyize($tag),
+                                                                $offset, $limit);
+       }
+       
+       function blowCache() {
+               $cache = common_memcache();
+               if ($cache) {
+                       $cache->delete(common_cache_key('notice_tag:notice_stream:' . $this->tag));
+               }
+       }
 }