oDb->query($sql,$oVote->getTargetId(),$oVote->getTargetType(),$oVote->getVoterId(),$oVote->getDirection(),$oVote->getValue(),$oVote->getDate(),$oVote->getIp())===0) { return true; } return false; } /** * Получить список голосований по списку айдишников * * @param array $aArrayId Список ID владельцев * @param string $sTargetType Тип владельца * @param int $sUserId ID пользователя * @return array */ public function GetVoteByArray($aArrayId,$sTargetType,$sUserId) { if (!is_array($aArrayId) or count($aArrayId)==0) { return array(); } $sql = "SELECT * FROM ".Config::Get('db.table.vote')." WHERE target_id IN(?a) AND target_type = ? AND user_voter_id = ?d "; $aVotes=array(); if ($aRows=$this->oDb->select($sql,$aArrayId,$sTargetType,$sUserId)) { foreach ($aRows as $aRow) { $aVotes[]=Engine::GetEntity('Vote',$aRow); } } return $aVotes; } /** * Удаляет голосование из базы по списку идентификаторов таргета * * @param array|int $aTargetId Список ID владельцев * @param string $sTargetType Тип владельца * @return bool */ public function DeleteVoteByTarget($aTargetId,$sTargetType) { $sql = " DELETE FROM ".Config::Get('db.table.vote')." WHERE target_id IN(?a) AND target_type = ? "; $res=$this->oDb->query($sql,$aTargetId,$sTargetType); return $this->IsSuccessful($res); } }