$date = @filemtime($sTemplateDirFull . "styles/additional.css"); $GLOBALS['APPLICATION']->SetAdditionalCSS($sTemplateDir . 'styles/additional.css?' . $date); $GLOBALS['APPLICATION']->AddHeadScript("/bitrix/js/main/utils.js"); $GLOBALS['APPLICATION']->AddHeadScript("/bitrix/components/bitrix/forum.interface/templates/.default/script.js"); $file = trim(preg_replace("'[\\\\/]+'", "/", dirname(__FILE__) . "/lang/" . LANGUAGE_ID . "/result_modifier.php")); if (!file_exists($file)) { $file = trim(preg_replace("'[\\\\/]+'", "/", dirname(__FILE__) . "/lang/en/result_modifier.php")); } if (file_exists($file)) { global $MESS; include_once $file; } $arResult["GROUPS"] = array(); if ($arParams["SHOW_FORUMS"] == "Y" && in_array($this->__page, array("forums", "list", "read"))) { CModule::IncludeModule("forum"); $arResult["GROUPS"] = CForumGroup::GetByLang(LANGUAGE_ID); if (!function_exists("__array_merge")) { function __array_merge($arr1, $arr2, $deep = false) { $arResult = $arr1; static $ii = 0; $ii++; $deep = $deep == false ? 0 : $deep; foreach ($arr2 as $key2 => $val2) { if (!array_key_exists($key2, $arResult)) { $arResult[$key2] = $val2; continue; } elseif ($val2 == $arResult[$key2]) { continue; } elseif (!is_array($arResult[$key2])) { $arResult[$key2] = array($arResult[$key2]);
ClearVars(); IncludeModuleLangFile(__FILE__); require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/forum/prolog.php"; $ID = IntVal($ID); $langCount = 0; $arSysLangs = $arSysLangNames = array(); $db_lang = CLangAdmin::GetList($b = "sort", $o = "asc"); $arError = array(); $message = false; $bInitVars = false; while ($arLang = $db_lang->Fetch()) { $arSysLangs[$langCount] = $arLang["LID"]; $arSysLangNames[$langCount] = htmlspecialcharsbx($arLang["NAME"]); $langCount++; } $arGroups = CForumGroup::GetByLang(LANGUAGE_ID); array_unshift($arGroups, array("ID" => 0, "NAME" => "...")); if ((strlen($save) > 0 || strlen($apply) > 0) && $REQUEST_METHOD == "POST" && $forumPermissions == "W" && check_bitrix_sessid()) { $arFields = array("SORT" => intVal(intVal($SORT) <= 0 ? 150 : $SORT), "PARENT_ID" => $_REQUEST["FORUM_GROUP"]["PARENT_ID"]); for ($i = 0; $i < count($arSysLangs); $i++) { $arFields["LANG"][] = array("LID" => $arSysLangs[$i], "NAME" => $_REQUEST["FORUM_GROUP"]["LANG"][$arSysLangs[$i]]["NAME"], "DESCRIPTION" => $_REQUEST["FORUM_GROUP"]["LANG"][$arSysLangs[$i]]["DESCRIPTION"]); } if (!CForumGroup::CheckFields($ID > 0 ? "UPDATE" : "ADD", $arFields, $ID > 0 ? $ID : false)) { $arError[] = array("code" => "error_checkfields", "title" => GetMessage("ERROR_ADD_GROUP_BAD_FIELDS")); } else { if ($ID > 0) { if (!CForumGroup::CanUserUpdateGroup($ID, $USER->GetUserGroupArray())) { $arError[] = array("code" => "not_right_for_edit", "title" => GetMessage("ERROR_EDIT_GROUP_NOT_RIGHT")); } else { $ID1 = CForumGroup::Update($ID, $arFields); if (IntVal($ID1) <= 0) {