/** @global CMain $APPLICATION */ /** @global CUser $USER */ /** @global CDatabase $DB */ /** @global string $mid */ $module_id = "form"; use Bitrix\Main\Loader; Loader::includeModule('form'); IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/".$module_id."/options.php"); $old_module_version = CForm::IsOldVersion(); $FORM_RIGHT = $APPLICATION->GetGroupRight($module_id); if ($FORM_RIGHT>="R") : if ($_SERVER['REQUEST_METHOD'] == "GET" && CForm::IsAdmin() && $RestoreDefaults <> '' && check_bitrix_sessid()) { COption::RemoveOption("form"); $z = CGroup::GetList('', '', array("ACTIVE" => "Y", "ADMIN" => "N")); while($zr = $z->Fetch()) { $APPLICATION->DelGroupRight($module_id, array($zr["ID"])); } } $arAllOptions = array( array("USE_HTML_EDIT", GetMessage("FORM_USE_HTML_EDIT"), array("checkbox", "Y")), array("SIMPLE", GetMessage("SIMPLE_MODE"), array("checkbox", "Y")), array("SHOW_TEMPLATE_PATH", GetMessage("FORM_SHOW_TEMPLATE_PATH"), array("text", 45)), array("SHOW_RESULT_TEMPLATE_PATH", GetMessage("FORM_SHOW_RESULT_TEMPLATE_PATH"), array("text", 45)), array("PRINT_RESULT_TEMPLATE_PATH", GetMessage("FORM_PRINT_RESULT_TEMPLATE_PATH"), array("text", 45)), array("EDIT_RESULT_TEMPLATE_PATH", GetMessage("FORM_EDIT_RESULT_TEMPLATE_PATH"), array("text", 45)), Array("RECORDS_LIMIT", GetMessage("FORM_RECORDS_LIMIT"), Array("text", 5)), Array("RESULTS_PAGEN", GetMessage("FORM_RESULTS_PAGEN"), Array("text", 5)) ); if ($old_module_version!="Y") { unset($arAllOptions[2]); unset($arAllOptions[3]); unset($arAllOptions[4]); unset($arAllOptions[5]); } if($_SERVER['REQUEST_METHOD'] == "POST" && $Update <> '' && CForm::IsAdmin() && check_bitrix_sessid()) { foreach($arAllOptions as $ar) { $name = $ar[0]; $val = ${$name}; if($ar[2][0] == "checkbox" && $val != "Y") { $val = "N"; } COption::SetOptionString($module_id, $name, $val); } COption::SetOptionString("form", "FORM_DEFAULT_PERMISSION", $_POST['FORM_DEFAULT_PERMISSION']); } if ($_SERVER['REQUEST_METHOD'] == 'POST' && $_REQUEST['saveCrm'] && CForm::IsAdmin() && check_bitrix_sessid()) { if ($_REQUEST['ajax']) CUtil::JSPostUnEscape(); $arAdditionalAuthData = array(); $lastUpdated = ''; if (is_array($_REQUEST['CRM'])) { foreach ($_REQUEST['CRM'] as $ID => $arCrm) { if (is_array($arCrm)) { $arCrm['ID'] = intval($ID); if ($arCrm['DELETED'] && $arCrm['ID'] > 0) { CFormCrm::Delete($arCrm['ID']); } else { $arCrmFields = array( 'NAME' => trim($arCrm['NAME']), 'ACTIVE' => 'Y', //$arCrm['ACTIVE'] == 'Y' ? 'Y' : 'N', 'URL' => trim($arCrm['URL']), ); if ($arCrm['ID'] <= 0) { $arCrm['ID'] = CFormCrm::Add($arCrmFields); } else { CFormCrm::Update($arCrm['ID'], $arCrmFields); } $lastUpdated = $arCrm['ID']; if ($arCrm['LOGIN'] <> '' && $arCrm['PASSWORD'] <> '') { $arAdditionalAuthData[$arCrm['ID']] = array( 'LOGIN' => $arCrm['LOGIN'], 'PASSWORD' => $arCrm['PASSWORD'], ); } } } } } if ($_REQUEST['ajax']) { $arCRMServers = array(); $dbRes = CFormCrm::GetList(array('NAME' => 'ASC', 'ID' => 'ASC'), array()); while ($arServer = $dbRes->Fetch()) { if (isset($arAdditionalAuthData[$arServer['ID']])) $arServer = array_merge($arServer, $arAdditionalAuthData[$arServer['ID']]); if ($lastUpdated == $arServer['ID']) $arServer['NEW'] = 'Y'; $arCRMServers[] = $arServer; } $APPLICATION->RestartBuffer(); echo CUtil::PhpToJSObject($arCRMServers); require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_admin_after.php"); exit(); } } $aTabs = array( array("DIV" => "edit1", "TAB" => GetMessage("MAIN_TAB_SET"), "ICON" => "form_settings", "TITLE" => GetMessage("MAIN_TAB_TITLE_SET")), array("DIV" => "edit_crm", "TAB" => GetMessage("FORM_TAB_CRM"), "ICON" => "form_settings", "TITLE" => GetMessage("FORM_TAB_CRM_TITLE")), array("DIV" => "edit2", "TAB" => GetMessage("MAIN_TAB_RIGHTS"), "ICON" => "form_settings", "TITLE" => GetMessage("MAIN_TAB_TITLE_RIGHTS")), ); $tabControl = new CAdminTabControl("tabControl", $aTabs); ?> $tabControl->Begin(); ?>