Example #1
0
 public static function removePoints($userid, $points)
 {
     if (false === ($row = GDO::table(__CLASS__)->getRow($userid))) {
         $row = new self(array('slapu_uid' => $userid, 'slapu_malus' => $points, 'slapu_malus_c' => 1));
         return $row->insert();
     }
     if (false === $row->increase('slapu_malus', $points)) {
         return false;
     }
     if (false === $row->increase('slapu_malus_c', 1)) {
         return false;
     }
     return true;
 }
Example #2
0
 /**
  * Increase or decrease a counter.
  * @param string $key
  * @param int $by
  * @return boolean
  */
 public static function increaseCount($key, $by = 1)
 {
     if (false === ($row = self::table(__CLASS__)->getRow($key))) {
         $row = new self(array('count_key' => $key, 'count_value' => $by));
         return $row->insert();
     } else {
         return $row->increase('count_value', $by);
     }
 }
Example #3
0
 public static function onViewed(GWF_User $user)
 {
     $userid = $user->getID();
     $av = $user->getVar('user_avatar_v');
     if (false === ($row = self::getByID($userid))) {
         $row = new self(array('ag_uid' => $userid, 'ag_hits' => 1, 'ag_version' => $av));
         if (false === $row->insert()) {
             return false;
         }
         $row->setVar('ag_uid', $user);
         return true;
     }
     if ($row->getVar('ag_version') !== $av) {
         return $row->saveVars(array('ag_hits' => 1, 'ag_version' => $av));
     }
     return $row->increase('ag_hits', 1);
 }
Example #4
0
 public static function addTag(GWF_Links $link, $tagname)
 {
     if (false === ($tag = self::getByName($tagname))) {
         $tag = new self(array('lt_name' => $tagname, 'lt_count' => 1));
         return $tag->insert();
     }
     return $tag->increase('lt_count', 1);
 }