- Модуль: form
- Путь к файлу: ~/bitrix/modules/form/classes/general/form_callformfield.php
- Класс: CAllFormField
- Вызов: CAllFormField::Delete
static function Delete($ID, $CHECK_RIGHTS="Y")
{
global $DB, $strError;
$err_mess = (CAllFormField::err_mess())."
Function: Delete
Line: ";
$ID = intval($ID);
$rsField = CFormField::GetByID($ID);
if ($arField = $rsField->Fetch())
{
$WEB_FORM_ID = intval($arField["FORM_ID"]);
$F_RIGHT = ($CHECK_RIGHTS!="Y") ? 30 : CForm::GetPermission($WEB_FORM_ID);
if ($F_RIGHT>=30)
{
CFormField::Reset($ID, $CHECK_RIGHTS);
// clear field validators
CFormValidator::Clear($ID);
$strSql = "SELECT IMAGE_ID FROM b_form_field WHERE ID='$ID' and IMAGE_ID>0";
$z = $DB->Query($strSql, false, $err_mess.__LINE__);
while ($zr = $z->Fetch())
CFile::Delete($zr["IMAGE_ID"]);
$DB->Query("DELETE FROM b_form_answer WHERE FIELD_ID='$ID'", false, $err_mess.__LINE__);
$DB->Query("DELETE FROM b_form_field_filter WHERE FIELD_ID='$ID'", false, $err_mess.__LINE__);
$DB->Query("DELETE FROM b_form_field WHERE ID='$ID'", false, $err_mess.__LINE__);
return true;
}
else $strError .= GetMessage("FORM_ERROR_ACCESS_DENIED")."
";
}
else $strError .= GetMessage("FORM_ERROR_FIELD_NOT_FOUND")."
";
return false;
}