- Модуль: vote
- Путь к файлу: ~/bitrix/modules/vote/classes/general/question.php
- Класс: CAllVoteQuestion
- Вызов: CAllVoteQuestion::Reset
static function Reset($ID, $VOTE_ID = false)
{
global $DB;
$err_mess = (CVoteQuestion::err_mess())."
Function: Reset
Line: ";
$ID = (intval($ID) > 0 ? intval($ID) : false);
$VOTE_ID = (intval($VOTE_ID) > 0 ? intval($VOTE_ID) : false);
if ($ID > 0):
$strSqlID = "".$ID."";
elseif ($VOTE_ID > 0):
$strSqlID = "SELECT Q.ID FROM b_vote_question Q WHERE Q.VOTE_ID=".$VOTE_ID;
else:
return false;
endif;
// drop answer events
$DB->Query("DELETE FROM b_vote_event_answer WHERE EVENT_QUESTION_ID IN (
SELECT ID FROM b_vote_event_question WHERE QUESTION_ID IN (".$strSqlID."))", false, $err_mess.__LINE__);
// drop question events
$DB->Query("DELETE FROM b_vote_event_question WHERE QUESTION_ID IN (".$strSqlID.")", false, $err_mess.__LINE__);
// zeroize answers counter
$arFields = array("COUNTER"=>"0");
$DB->Update("b_vote_answer", $arFields, "WHERE QUESTION_ID IN (".$strSqlID.")", $err_mess.__LINE__);
// zeroize questions counter
$arFields = array("COUNTER" => "0");
$DB->Update("b_vote_question", $arFields, "WHERE ".(
$ID > 0 ? "ID = ".$ID."" : "VOTE_ID = ".$VOTE_ID.""), $err_mess.__LINE__);
/***************** Cleaning cache **********************************/
if ($ID === false)
unset($GLOBALS["VOTE_CACHE"]["QUESTION"]);
else
unset($GLOBALS["VOTE_CACHE"]["QUESTION"][$ID]);
/***************** Cleaning cache/**********************************/
return true;
}