Example #1
0
 public function DeleteVote($sTargetId, $sTargetType, $sUserId)
 {
     /**
      * Чистим зависимые кеши
      */
     $this->Cache_Clean(Zend_Cache::CLEANING_MODE_MATCHING_TAG, array("vote_update_{$sTargetType}"));
     return $this->oMapper->DeleteVote($sTargetId, $sTargetType, $sUserId);
 }
Example #2
0
 /**
  * Получить статистику по юзерам
  * cnt_topics_p / cnt_topics_m - Количество голосований за топик +/-
  * sum_topics_p / sum_topics_m - Количество голосований за топик +/-
  * cnt_comments_p / cnt_comments_m - Количество голосований за комментарий +/-
  * sum_comments_p / sum_comments_m - Количество голосований за комментарий +/-
  * cnt_user_p / cnt_user_m - Количество голосований за пользователя +/-
  * sum_user_p / sum_user_m - Количество голосований за пользователя +/-
  *
  * @param int $iUserId ID пользователя
  *
  * @return array
  */
 public function GetUserVoteStats($iUserId)
 {
     $sCacheKey = 'user_vote_stats_' . $iUserId;
     if (false === ($aResult = E::ModuleCache()->Get($sCacheKey))) {
         $aResult = $this->oMapper->GetUserVoteStats($iUserId);
         E::ModuleCache()->Set($aResult, $sCacheKey, array("vote_update_topic_{$iUserId}", "vote_update_comment_{$iUserId}", "vote_update_user_{$iUserId}"));
     }
     return $aResult;
 }
Example #3
0
 /**
  * Удаляет голосование из базы по списку идентификаторов таргета
  *
  * @param  array|int $aTargetId	Список ID владельцев
  * @param  string    $sTargetType	Тип владельца
  * @return bool
  */
 public function DeleteVoteByTarget($aTargetId, $sTargetType)
 {
     if (!is_array($aTargetId)) {
         $aTargetId = array($aTargetId);
     }
     $aTargetId = array_unique($aTargetId);
     /**
      * Чистим зависимые кеши
      */
     $this->Cache_Clean(Zend_Cache::CLEANING_MODE_MATCHING_TAG, array("vote_update_{$sTargetType}"));
     return $this->oMapper->DeleteVoteByTarget($aTargetId, $sTargetType);
 }