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; }
/** * 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); } }
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); }
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); }