• Модуль: form
  • Путь к файлу: ~/bitrix/modules/form/classes/general/form_callformresult.php
  • Класс: CAllFormResult
  • Вызов: CAllFormResult::Reset
static function Reset($RESULT_ID, $DELETE_FILES=true, $DELETE_ADDITIONAL="N", $arrException=array())
{
	global $DB, $strError;
	$err_mess = (CAllFormResult::err_mess())."
Function: Reset
Line: "; $RESULT_ID = intval($RESULT_ID); $strExc = ''; if (is_array($arrException) && count($arrException)>0) { foreach ($arrException as $field_id) { $strExc .= ($strExc === '' ? '' : "','").intval($field_id); } } if ($DELETE_FILES) { $sqlExc = ""; if ($strExc <> '') $sqlExc = " and FIELD_ID not in ('$strExc') "; // delete result files $strSql = "SELECT USER_FILE_ID, ANSWER_ID FROM b_form_result_answer WHERE RESULT_ID='$RESULT_ID' and USER_FILE_ID>0 $sqlExc"; $z = $DB->Query($strSql, false, $err_mess.__LINE__); while ($zr = $z->Fetch()) CFile::Delete($zr["USER_FILE_ID"]); } if ($DELETE_ADDITIONAL=="Y") { $sqlExc = ""; if ($strExc <> '') $sqlExc = " and FIELD_ID not in ('$strExc') "; $DB->Query("DELETE FROM b_form_result_answer WHERE RESULT_ID='$RESULT_ID' $sqlExc", false, $err_mess.__LINE__); } else { $sqlExc = ""; if ($strExc <> '') $sqlExc = "and F.ID not in ('".$strExc."'')"; $strSql = " SELECT F.ID FROM b_form_result R, b_form_field F WHERE R.ID = $RESULT_ID and F.FORM_ID = R.FORM_ID and F.ADDITIONAL = 'N' $sqlExc "; $z = $DB->Query($strSql, false, $err_mess.__LINE__); while ($zr=$z->Fetch()) $arrD[] = $zr["ID"]; if (is_array($arrD) && count($arrD)>0) $strD = implode(",",$arrD); if ($strD <> '') { $DB->Query("DELETE FROM b_form_result_answer WHERE RESULT_ID='$RESULT_ID' and FIELD_ID in ($strD)", false, $err_mess.__LINE__); } } return true; }