$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]);
Beispiel #2
0
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) {