• Модуль: vote
  • Путь к файлу: ~/bitrix/modules/vote/classes/mysql/vote.php
  • Класс: CVote
  • Вызов: CVote::CheckVotingIP
static function CheckVotingIP($VOTE_ID, $REMOTE_ADDR, $KEEP_IP_SEC, $params = array())
{
	global $DB;
	$err_mess = (CVote::err_mess())."
Function: CheckVotingIP
Line: "; $VOTE_ID = intval($VOTE_ID); $KEEP_IP_SEC = intval($KEEP_IP_SEC); $params = (is_array($params) ? $params : array($params)); $params["RETURN_SEARCH_STRING"] = ($params["RETURN_SEARCH_STRING"] == "Y" ? "Y" : "N"); $arSqlSelect = array("VE.VOTE_ID", "VE.IP", "TIMESTAMPDIFF(SECOND, VE.DATE_VOTE, NOW()) AS KEEP_IP_SEC"); $arSqlSearch = array( "VE.VOTE_ID='".$VOTE_ID."'", "VE.IP='".$DB->ForSql($REMOTE_ADDR, 15)."'"); if ($KEEP_IP_SEC > 0): $arSqlSearch[] = "(FROM_UNIXTIME(UNIX_TIMESTAMP(CURRENT_TIMESTAMP) - ".$KEEP_IP_SEC.") <= VE.DATE_VOTE)"; endif; if ($params["RETURN_SEARCH_STRING"] == "Y"): return implode(" AND ", $arSqlSearch); elseif ($params["RETURN_SEARCH_ARRAY"] == "Y"): return array("search" => implode(" AND ", $arSqlSearch), "select" => implode(",", $arSqlSelect)); endif; $strSql = "SELECT VE.ID FROM b_vote_event VE WHERE ".implode(" AND ", $arSqlSearch); $db_res = $DB->Query($strSql, false, $err_mess.__LINE__); if ($db_res && $res = $db_res->Fetch()): return false; endif; return true; }