Fetch()) { if ($arUGroups["ANONYMOUS"] == "Y") $arUGroupsEx[$arUGroups["ID"]] = "R"; } if ($_REQUEST["iblock"] == "Y" && $GLOBALS["APPLICATION"]->GetGroupRight("iblock") >= "W") { if ($_REQUEST["create_iblock_type"] == "Y") { $arIBTLang = array(); $arLang = array(); $l = CLanguage::GetList(); while($ar = $l->ExtractFields("l_")) $arIBTLang[]=$ar; for($i=0; $i $_REQUEST["iblock_type_name"]); $arFields = array( "ID" => $_REQUEST["iblock_type_name"], "LANG" => $arLang, "SECTIONS" => "Y"); $GLOBALS["DB"]->StartTransaction(); $obBlocktype = new CIBlockType; $IBLOCK_TYPE_ID = $obBlocktype->Add($arFields); if ($IBLOCK_TYPE_ID == '') { $strWarning .= $obBlocktype->LAST_ERROR; $GLOBALS["DB"]->Rollback(); $bVarsFromForm = true; } else { $GLOBALS["DB"]->Commit(); $_REQUEST["iblock_type_id"] = $IBLOCK_TYPE_ID; } } else $IBLOCK_TYPE_ID = $_REQUEST["iblock_type_id"]; if ($IBLOCK_TYPE_ID) { $DB->StartTransaction(); $arFields = Array( "ACTIVE"=>"Y", "NAME"=>$_REQUEST["iblock_name"], "IBLOCK_TYPE_ID"=>$IBLOCK_TYPE_ID, "LID"=>array(), "DETAIL_PAGE_URL" => "#SITE_DIR#/$IBLOCK_TYPE_ID/#EXTERNAL_ID#/", "SECTION_PAGE_URL" => "#SITE_DIR#/$IBLOCK_TYPE_ID/category:#EXTERNAL_ID#/", "LIST_PAGE_URL" => "#SITE_DIR#/$IBLOCK_TYPE_ID/", "GROUP_ID" => Array("1" => "X", "2" => "R", "3" => "W") ); if (IsModuleInstalled("bizproc")) { $arFields['WORKFLOW'] = 'N'; $arFields['BIZPROC'] = 'Y'; } $ib = new CIBlock; $db_sites = CSite::GetList(); while ($ar_sites = $db_sites->Fetch()) { if ($ar_sites["ACTIVE"] == "Y") $arFields["LID"][] = $ar_sites["LID"]; $arSites[] = $ar_sites; } if (empty($arFields["LID"])) $arFields["LID"][] = $ar_sites[0]["LID"]; if (!empty($arUGroupsEx)) $arFields["GROUP_ID"] = $arUGroupsEx; $ID = $ib->Add($arFields); if($ID <= 0) { $strWarning .= $ib->LAST_ERROR."
"; $bVarsFromForm = true; $DB->Rollback(); } else { $DB->Commit(); $_REQUEST["new_iblock_name"] = ""; $_REQUEST["new_iblock"] = "created"; } } } if (!$bVarsFromForm && $_REQUEST["forum"] == "Y" && IsModuleInstalled("forum") && $GLOBALS["APPLICATION"]->GetGroupRight("forum") >= "W") { CModule::IncludeModule("forum"); $arFields = Array( "ACTIVE" => "Y", "NAME" => $_REQUEST["forum_name"], "GROUP_ID" => array(1 => "Y", 2 => 'E', 3 => 'M'), "SITES" => array() ); $db_res = CSite::GetList(); while ($res = $db_res->Fetch()): if (IsModuleInstalled("intranet")) $arFields["SITES"][$res["LID"]] = "/community/forum/forum#FORUM_ID#/topic#TOPIC_ID#/"; else $arFields["SITES"][$res["LID"]] = "/communication/forum/forum#FORUM_ID#/topic#TOPIC_ID#/"; endwhile; $FORUM_ID = CForumNew::Add($arFields); } if (!$bVarsFromForm && IsModuleInstalled("socialnetwork")) { CModule::IncludeModule("socialnetwork"); require_once($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/wiki/include.php'); if ($_REQUEST["socnet_iblock"] == "Y" && $GLOBALS["APPLICATION"]->GetGroupRight("iblock") >= "W") { if ($_REQUEST["create_socnet_iblock_type"] == "Y") { if ($_REQUEST["create_iblock_type"] == "N" || ($_REQUEST["create_iblock_type"] == "Y" && $_REQUEST["socnet_iblock_type_name"] != $_REQUEST["iblock_type_name"])) { $arIBTLang = array(); $arLang = array(); $l = CLanguage::GetList(); while($ar = $l->ExtractFields("l_")) $arIBTLang[]=$ar; for($i=0; $i $_REQUEST["socnet_iblock_type_name"]); $arFields = array( "ID" => $_REQUEST["socnet_iblock_type_name"], "LANG" => $arLang, "SECTIONS" => "Y"); $GLOBALS["DB"]->StartTransaction(); $obBlocktype = new CIBlockType; $IBLOCK_TYPE_ID = $obBlocktype->Add($arFields); if ($IBLOCK_TYPE_ID == '') { $strWarning .= $obBlocktype->LAST_ERROR; $GLOBALS["DB"]->Rollback(); $bVarsFromForm = true; } else { $GLOBALS["DB"]->Commit(); $_REQUEST["create_socnet_iblock_type"] = "N"; $_REQUEST["socnet_iblock_type_name"] = ""; $_REQUEST["socnet_iblock_type_id"] = $IBLOCK_TYPE_ID; } } } else $IBLOCK_TYPE_ID = $_REQUEST["socnet_iblock_type_id"]; if ($IBLOCK_TYPE_ID) { $DB->StartTransaction(); $arFields = Array( "ACTIVE"=>"Y", "NAME"=>$_REQUEST["socnet_iblock_name"], "IBLOCK_TYPE_ID"=>$IBLOCK_TYPE_ID, "LID"=>array(), "DETAIL_PAGE_URL" => "", "SECTION_PAGE_URL" => "", "LIST_PAGE_URL" => "", "INDEX_ELEMENT" => "N", "INDEX_SECTION" => "N", "GROUP_ID" => Array('1' => 'X', "2" => "R", "3" => "W") ); if (IsModuleInstalled('bizproc')) { $arFields['WORKFLOW'] = 'N'; $arFields['BIZPROC'] = 'Y'; } $ib = new CIBlock; $db_sites = CSite::GetList(); while ($ar_sites = $db_sites->Fetch()) { if ($ar_sites["ACTIVE"] == "Y") $arFields["LID"][] = $ar_sites["LID"]; $arSites[] = $ar_sites; } if (empty($arFields["LID"])) $arFields["LID"][] = $ar_sites[0]["LID"]; if (!empty($arUGroupsEx)) $arFields["GROUP_ID"] = $arUGroupsEx; $SOCNET_ID = $ib->Add($arFields); if($SOCNET_ID <= 0) { $strWarning .= $ib->LAST_ERROR."
"; $bVarsFromForm = true; $DB->Rollback(); } else { $DB->Commit(); $_REQUEST["new_socnet_iblock_name"] = ""; $_REQUEST["new_socnet_iblock"] = "created"; COption::SetOptionString("wiki", "socnet_iblock_type_id", $IBLOCK_TYPE_ID); COption::SetOptionString("wiki", "socnet_iblock_id", $SOCNET_ID); COption::SetOptionString("wiki", "socnet_enable", "Y"); CWikiSocnet::EnableSocnet(true); } } } if (!$bVarsFromForm && $_REQUEST["socnet_forum"] == "Y" && IsModuleInstalled("forum") && $GLOBALS["APPLICATION"]->GetGroupRight("forum") >= "W") { CModule::IncludeModule("forum"); $arFields = Array( "ACTIVE" => "Y", "NAME" => $_REQUEST["socnet_forum_name"], "GROUP_ID" => array(1 => "Y", 2 => "E", 3 => "M"), "SITES" => array() ); $db_res = CSite::GetList(); while ($res = $db_res->Fetch()): if (IsModuleInstalled("intranet")) $arFields["SITES"][$res["LID"]] = "/community/forum/forum#FORUM_ID#/topic#TOPIC_ID#/"; else $arFields["SITES"][$res["LID"]] = "/communication/forum/forum#FORUM_ID#/topic#TOPIC_ID#/"; endwhile; $SOCNET_FORUM_ID = CForumNew::Add($arFields); COption::SetOptionString("wiki", "socnet_forum_id", $SOCNET_FORUM_ID); COption::SetOptionString("wiki", "socnet_use_review", "Y"); } } if ($bVarsFromForm) { ShowError($strWarning); include("step.php"); } else { ?>