$module_id = "blog"; $BLOG_RIGHT = $APPLICATION->GetGroupRight($module_id); if ($BLOG_RIGHT>="R") : global $MESS; IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/blog/options.php"); CModule::IncludeModule('blog'); if ($REQUEST_METHOD=="GET" && $RestoreDefaults <> '' && $BLOG_RIGHT=="W" && check_bitrix_sessid()) { COption::RemoveOption("blog"); $z = CGroup::GetList("id", "asc", array("ACTIVE" => "Y", "ADMIN" => "N")); while($zr = $z->Fetch()) $APPLICATION->DelGroupRight($module_id, array($zr["ID"])); } $arAllOptions = array( array("avatar_max_size", GetMessage("BLO_AVATAR_MAX_SIZE"), "1000000", Array("text", 10)), //array("avatar_max_width", GetMessage("BLO_AVATAR_MAX_WIDTH"), "150", Array("text", 10)), //array("avatar_max_height", GetMessage("BLO_AVATAR_MAX_HEIGHT"), "150", Array("text", 10)), array("image_max_width", GetMessage("BLO_IMAGE_MAX_WIDTH"), "800", Array("text", 10)), array("image_max_height", GetMessage("BLO_IMAGE_MAX_HEIGHT"), "1000", Array("text", 10)), array("image_max_size", GetMessage("BLO_IMAGE_MAX_SIZE"), "5000000", Array("text", 10)), array("allow_alias", GetMessage("BLO_ALLOW_ALIAS"), "Y", Array("checkbox")), array("block_url_change", GetMessage("BLOG_URL_BLOCK"), "N", Array("checkbox")), array("show_ip", GetMessage("BLOG_SHOW_IP"), "Y", Array("checkbox")), array("enable_trackback", GetMessage("BLOG_ENABLE_TRACKBACK"), "Y", Array("checkbox")), array("allow_video", GetMessage("BLOG_ALLOW_VIDEO"), "Y", Array("checkbox")), array("parser_nofollow", GetMessage("BLOG_PARSER_NOFOLLOW"), "N", Array("checkbox")), array("use_autosave", GetMessage("BLOG_USE_AUTOSAVE"), "Y", Array("checkbox")), array("use_image_perm", GetMessage("BLOG_USE_IMAGE_PERM"), "N", Array("checkbox")), array("captcha_choice", GetMessage("BLOG_CAPTCHA_CHOICE"), "U", Array("selectbox"), Array("U" => GetMessage("BLOG_CAPTCHA_CHOICE_U"), "A" => GetMessage("BLOG_CAPTCHA_CHOICE_A"), "D" => GetMessage("BLOG_CAPTCHA_CHOICE_D"))), array("send_blog_ping", GetMessage("BLOG_SEND_BLOG_PING"), "N", Array("checkbox")), array("send_blog_ping_address", GetMessage("BLOG_SEND_BLOG_PING_ADDRESS"), "http://ping.blogs.yandex.ru/RPC2\r\nhttp://rpc.weblogs.com/RPC2", Array("textarea", 5, 40)), array("post_everyone_max_rights", GetMessage("BLOG_POST_EVERYONE_MAX_RIGHTS"), "I", Array("selectbox"), $GLOBALS["AR_BLOG_PERMS_EVERYONE"]), array("comment_everyone_max_rights", GetMessage("BLOG_COMMENT_EVERYONE_MAX_RIGHTS"), "P", Array("selectbox"), $GLOBALS["AR_BLOG_PERMS"]), array("post_auth_user_max_rights", GetMessage("BLOG_POST_AUTH_USER_MAX_RIGHTS"), "I", Array("selectbox"), $GLOBALS["AR_BLOG_PERMS"]), array("comment_auth_user_max_rights", GetMessage("BLOG_COMMENT_AUTH_USER_MAX_RIGHTS"), "P", Array("selectbox"), $GLOBALS["AR_BLOG_PERMS"]), array("post_group_user_max_rights", GetMessage("BLOG_POST_GROUP_USER_MAX_RIGHTS"), "W", Array("selectbox"), $GLOBALS["AR_BLOG_PERMS"]), array("comment_group_user_max_rights", GetMessage("BLOG_COMMENT_GROUP_USER_MAX_RIGHTS"), "W", Array("selectbox"), $GLOBALS["AR_BLOG_PERMS"]), array("smile_gallery_id", GetMessage("BLOG_OPTIONS_SMILE_GALLERY_ID"), 0, Array("selectbox"), CSmileGallery::getListForForm()), ); $strWarning = ""; if ($REQUEST_METHOD=="POST" && $Update <> '' && $BLOG_RIGHT=="W" && check_bitrix_sessid() && $use_sonnet_button == '') { foreach($arAllOptions as $option) { $name = $option[0]; $val = $$name; if ($option[3][0] == "checkbox" && $val != "Y") $val = "N"; COption::SetOptionString("blog", $name, $val, $option[1]); } $arPaths = array(); $arPathsNullType = array(); $dbPaths = CBlogSitePath::GetList(); while ($arPath = $dbPaths->Fetch()) { if($arPath["TYPE"] <> '') $arPaths[$arPath["SITE_ID"]][$arPath["TYPE"]] = $arPath["ID"]; else $arPathsNullType[$arPath["SITE_ID"]] = $arPath["ID"]; } $arType = array("B", "P", "U", "G", "H"); /* "B" - user blog, "P" - user post, "U" - just user, "G" - group blog, "H" - group post */ $dbSites = CSite::GetList('', '', array("ACTIVE" => "Y")); while ($arSite = $dbSites->Fetch()) { BXClearCache(True, "/".$arSite["LID"]."/blog/"); foreach($arType as $type) { if (intval($arPaths[$arSite["LID"]][$type])>0) { if (${"SITE_PATH_".$arSite["LID"]."_".$type} <> '') CBlogSitePath::Update($arPaths[$arSite["LID"]][$type], array("PATH" => ${"SITE_PATH_".$arSite["LID"]."_".$type}, "TYPE"=>$type)); else CBlogSitePath::Delete($arPaths[$arSite["LID"]][$type]); } else { CBlogSitePath::Add( array( "SITE_ID" => $arSite["LID"], "PATH" => ${"SITE_PATH_".$arSite["LID"]."_".$type}, "TYPE" => $type ) ); } } unset($arPaths[$arSite["LID"]]); if(${"SITE_PATH_".$arSite["LID"]} <> '') ${"SITE_PATH_".$arSite["LID"]} = "/".trim(str_replace("\\", "/", ${"SITE_PATH_".$arSite["LID"]}), "/"); if (array_key_exists($arSite["LID"], $arPathsNullType)) { if (${"SITE_PATH_".$arSite["LID"]} <> '') CBlogSitePath::Update($arPathsNullType[$arSite["LID"]], array("PATH" => ${"SITE_PATH_".$arSite["LID"]})); else CBlogSitePath::Delete($arPathsNullType[$arSite["LID"]]); } else { CBlogSitePath::Add( array( "SITE_ID" => $arSite["LID"], "PATH" => ${"SITE_PATH_".$arSite["LID"]} ) ); } unset($arPathsNullType[$arSite["LID"]]); } foreach ($arPaths as $key) foreach($key as $val) CBlogSitePath::Delete($val); } if ($strWarning <> '') CAdminMessage::ShowMessage($strWarning); $aTabs = array( array("DIV" => "edit1", "TAB" => GetMessage("BLO_TAB_SET"), "ICON" => "blog_settings", "TITLE" => GetMessage("BLO_TAB_SET_ALT")), array("DIV" => "edit3", "TAB" => GetMessage("BLO_SITE_PATH3"), "ICON" => "blog_path", "TITLE" => GetMessage("BLO_SITE_PATH3")), array("DIV" => "edit2", "TAB" => GetMessage("BLO_TAB_RIGHTS"), "ICON" => "blog_settings", "TITLE" => GetMessage("BLO_TAB_RIGHTS_ALT")), ); $tabControl = new CAdminTabControl("tabControl", $aTabs); ?> $tabControl->Begin(); ?>