if (!CModule::IncludeModule('support')) { return; } __IncludeLang(GetLangFileName(dirname(__FILE__) . "/lang/", "/" . basename(__FILE__))); $pathToService = str_replace("\\", "/", dirname(__FILE__)); //Left menu DemoSiteUtil::AddMenuItem("/communication/.left.menu.php", array(GetMessage("SUPP_DEMO_INSTALL_MENUITEM"), "/communication/support/?show_wizard=Y", array("/communication/support/"), array(), "")); $arCategories = array(GetMessage('SUPP_DEMO_INSTALL_COMMON_QUESTION') => array('NAME' => GetMessage('SUPP_DEMO_INSTALL_COMMON_QUESTION'), 'arrSITE' => array('s1'), 'C_TYPE' => 'C', 'C_SORT' => 100, 'EVENT1' => 'ticket'), GetMessage('SUPP_DEMO_INSTALL_ESTORE_QUESTION') => array('NAME' => GetMessage('SUPP_DEMO_INSTALL_ESTORE_QUESTION'), 'arrSITE' => array('s1'), 'C_TYPE' => 'C', 'C_SORT' => 100, 'EVENT1' => 'ticket')); $dbCategory = CTicketDictionary::GetList($by = "s_id", $order = "asc", array("TYPE" => "C", "TYPE_EXACT_MATCH" => "Y"), $is_filtered); while ($arCategory = $dbCategory->Fetch()) { if (array_key_exists($arCategory["NAME"], $arCategories)) { unset($arCategories[$arCategory["NAME"]]); } } foreach ($arCategories as $arCategory) { $categoryID = (int) CTicketDictionary::Add($arCategory); } COption::SetOptionString("support", "SUPPORT_MAX_FILESIZE", "10000"); $dbResult = CGroup::GetList($by, $order, array("STRING_ID" => "REGISTERED_USERS")); if ($arGroup = $dbResult->Fetch()) { $APPLICATION->SetGroupRight("support", $arGroup["ID"], "R"); } //Create support admins group if needed $rsGroup = CGroup::GetList($by = "c_sort", $order = "asc", array("STRING_ID_EXACT_MATCH" => "Y", "STRING_ID" => "SUPPORT_ADMINISTRATORS")); if ($arGroup = $rsGroup->Fetch()) { $group_id = $arGroup["ID"]; } else { $obGroup = new CGroup(); $group_id = $obGroup->Add(array("ACTIVE" => "Y", "C_SORT" => 500, "NAME" => GetMessage("SUPP_DEMO_INSTALL_GROUP_NAME"), "DESCRIPTION" => GetMessage("SUPP_DEMO_INSTALL_GROUP_DESCRIPTION"), "STRING_ID" => "SUPPORT_ADMINISTRATORS")); } if ($group_id) {
$e = CTicketDictionary::Add(array('NAME' => GetMessage('SUP_DEF_E_MAIL'), 'arrSITE' => array($arSite['ID']), 'C_TYPE' => 'SR', 'C_SORT' => 100, 'SID' => 'email')); if (!$e) { $DD_ERROR = true; return; } $e = CTicketDictionary::Add(array('NAME' => GetMessage('SUP_DEF_PHONE'), 'arrSITE' => array($arSite['ID']), 'C_TYPE' => 'SR', 'C_SORT' => 200)); if (!$e) { $DD_ERROR = true; return; } $e = CTicketDictionary::Add(array('NAME' => GetMessage('SUP_DEF_FORUM'), 'arrSITE' => array($arSite['ID']), 'C_TYPE' => 'SR', 'C_SORT' => 300)); if (!$e) { $DD_ERROR = true; return; } $e = CTicketDictionary::Add(array('NAME' => GetMessage('SUP_DEF_EASY'), 'arrSITE' => array($arSite['ID']), 'C_TYPE' => 'D', 'C_SORT' => 100)); if (!$e) { $DD_ERROR = true; return; } $e = CTicketDictionary::Add(array('NAME' => GetMessage('SUP_DEF_MEDIUM'), 'arrSITE' => array($arSite['ID']), 'C_TYPE' => 'D', 'C_SORT' => 200)); if (!$e) { $DD_ERROR = true; return; } $e = CTicketDictionary::Add(array('NAME' => GetMessage('SUP_DEF_HARD'), 'arrSITE' => array($arSite['ID']), 'C_TYPE' => 'D', 'C_SORT' => 300)); if (!$e) { $DD_ERROR = true; return; } }
$arFields = array('C_TYPE' => symbolsAndNumbers($_REQUEST['C_TYPE']), 'SID' => $_REQUEST['SID'], 'SET_AS_DEFAULT' => $SET_AS_DEFAULT, 'C_SORT' => $_REQUEST['C_SORT'], 'NAME' => $_REQUEST['NAME'], 'DESCR' => $_REQUEST['DESCR'], 'RESPONSIBLE_USER_ID' => $_REQUEST['RESPONSIBLE_USER_ID'], 'arrSITE' => $_REQUEST['arrSITE']); if (is_array($_REQUEST['arrSITE']) && count($_REQUEST['arrSITE']) > 0) { $arFields['FIRST_SITE_ID'] = reset($_REQUEST['arrSITE']); $_SESSION['SESS_TICKET_DIC_SITE'] = $_REQUEST['arrSITE']; } if (CModule::IncludeModule('statistic') && $_REQUEST['C_TYPE'] == 'C') { $arFields['EVENT1'] = $_REQUEST['EVENT1']; $arFields['EVENT2'] = $_REQUEST['EVENT2']; $arFields['EVENT3'] = $_REQUEST['EVENT3']; } $bOK = false; $new = false; if ($ID > 0) { $bOK = CTicketDictionary::Update($ID, $arFields); } else { if ($ID = CTicketDictionary::Add($arFields)) { $new = true; $bOK = true; } } if ($bOK) { if (strlen($save) > 0) { LocalRedirect("/bitrix/admin/ticket_dict_list.php?lang=" . LANGUAGE_ID . "&find_type=" . symbolsAndNumbers($_REQUEST['C_TYPE'])); } elseif ($new) { LocalRedirect("/bitrix/admin/ticket_dict_edit.php?ID=" . $ID . "&lang=" . LANGUAGE_ID . "&find_type=" . symbolsAndNumbers($_REQUEST['C_TYPE']) . "&tabControl_active_tab=" . urlencode($tabControl_active_tab)); } } else { if ($e = $APPLICATION->GetException()) { $message = new CAdminMessage(GetMessage("SUP_ERROR"), $e); } }