]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - classes/Profile_tag.php
Added the new pinghandler to the stopdaemons script and improved the behaviour and...
[quix0rs-gnu-social.git] / classes / Profile_tag.php
index dde19aea250a5e1dc724202cd50cefc802d15ce1..0a1ad9cd6b7cb822678fd24629a248355d88eab1 100644 (file)
@@ -4,7 +4,7 @@
  */
 require_once INSTALLDIR.'/classes/Memcached_DataObject.php';
 
-class Profile_tag extends Memcached_DataObject 
+class Profile_tag extends Memcached_DataObject
 {
     ###START_AUTOCODE
     /* the code below is auto generated do not remove the above tag */
@@ -16,86 +16,88 @@ class Profile_tag extends Memcached_DataObject
     public $modified;                        // timestamp()   not_null default_CURRENT_TIMESTAMP
 
     /* Static get */
-    function staticGet($k,$v=NULL) { return Memcached_DataObject::staticGet('Profile_tag',$k,$v); }
+    function staticGet($k,$v=null)
+    { return Memcached_DataObject::staticGet('Profile_tag',$k,$v); }
 
     /* the code above is auto generated do not remove the tag below */
     ###END_AUTOCODE
 
-       static function getTags($tagger, $tagged) {
-               
-               $tags = array();
-
-               # XXX: store this in memcached
-               
-               $profile_tag = new Profile_tag();
-               $profile_tag->tagger = $tagger;
-               $profile_tag->tagged = $tagged;
-               
-               $profile_tag->find();
-               
-               while ($profile_tag->fetch()) {
-                       $tags[] = $profile_tag->tag;
-               }
-               
-               $profile_tag->free();
-               
-               return $tags;
-       }
-       
-       static function setTags($tagger, $tagged, $newtags) {
-               
-               $oldtags = Profile_tag::getTags($tagger, $tagged);
-               
-               # Delete stuff that's old that not in new
-               
-               $to_delete = array_diff($oldtags, $newtags);
-               
-               # Insert stuff that's in new and not in old
-               
-               $to_insert = array_diff($newtags, $oldtags);
-               
-               $profile_tag = new Profile_tag();
-               
-               $profile_tag->tagger = $tagger;
-               $profile_tag->tagged = $tagged;
-               
-               $profile_tag->query('BEGIN');
-               
-               foreach ($to_delete as $deltag) {
-                       $profile_tag->tag = $deltag;
-                       $result = $profile_tag->delete();
-                       if (!$result) {
-                               common_log_db_error($profile_tag, 'DELETE', __FILE__);
-                               return false;
-                       }
-               }
-               
-               foreach ($to_insert as $instag) {
-                       $profile_tag->tag = $instag;
-                       $result = $profile_tag->insert();
-                       if (!$result) {
-                               common_log_db_error($profile_tag, 'INSERT', __FILE__);
-                               return false;
-                       }
-               }
-               
-               $profile_tag->query('COMMIT');
-               
-               return true;
-       }
-       
-       # Return profiles with a given tag
-       static function getTagged($tagger, $tag) {
-               $profile = new Profile();
-               $profile->query('SELECT profile.* ' .
-                                               'FROM profile JOIN profile_tag ' .
-                                               'ON profile.id = profile_tag.tagged ' .
-                                               'WHERE profile_tag.tagger = ' . $tagger . ' ' .
-                                               'AND profile_tag.tag = "' . $tag . '" ');
-               $tagged = array();
-               while ($profile->fetch()) {
-                       $tagged[] = clone($profile);
-               }
-               return $tagged;
-       }
+    static function getTags($tagger, $tagged) {
+
+        $tags = array();
+
+        # XXX: store this in memcached
+
+        $profile_tag = new Profile_tag();
+        $profile_tag->tagger = $tagger;
+        $profile_tag->tagged = $tagged;
+
+        $profile_tag->find();
+
+        while ($profile_tag->fetch()) {
+            $tags[] = $profile_tag->tag;
+        }
+
+        $profile_tag->free();
+
+        return $tags;
+    }
+
+    static function setTags($tagger, $tagged, $newtags) {
+
+        $newtags = array_unique($newtags);
+        $oldtags = Profile_tag::getTags($tagger, $tagged);
+
+        # Delete stuff that's old that not in new
+
+        $to_delete = array_diff($oldtags, $newtags);
+
+        # Insert stuff that's in new and not in old
+
+        $to_insert = array_diff($newtags, $oldtags);
+
+        $profile_tag = new Profile_tag();
+
+        $profile_tag->tagger = $tagger;
+        $profile_tag->tagged = $tagged;
+
+        $profile_tag->query('BEGIN');
+
+        foreach ($to_delete as $deltag) {
+            $profile_tag->tag = $deltag;
+            $result = $profile_tag->delete();
+            if (!$result) {
+                common_log_db_error($profile_tag, 'DELETE', __FILE__);
+                return false;
+            }
+        }
+
+        foreach ($to_insert as $instag) {
+            $profile_tag->tag = $instag;
+            $result = $profile_tag->insert();
+            if (!$result) {
+                common_log_db_error($profile_tag, 'INSERT', __FILE__);
+                return false;
+            }
+        }
+
+        $profile_tag->query('COMMIT');
+
+        return true;
+    }
+
+    # Return profiles with a given tag
+    static function getTagged($tagger, $tag) {
+        $profile = new Profile();
+        $profile->query('SELECT profile.* ' .
+                        'FROM profile JOIN profile_tag ' .
+                        'ON profile.id = profile_tag.tagged ' .
+                        'WHERE profile_tag.tagger = ' . $tagger . ' ' .
+                        'AND profile_tag.tag = "' . $tag . '" ');
+        $tagged = array();
+        while ($profile->fetch()) {
+            $tagged[] = clone($profile);
+        }
+        return $tagged;
+    }
 }