Your IP : 3.137.174.186


Current Path : /home/bitrix/ext_www/ballu.in.ua/bitrix/components/bitrix/blog.user.settings.edit/
Upload File :
Current File : /home/bitrix/ext_www/ballu.in.ua/bitrix/components/bitrix/blog.user.settings.edit/component.php

<?
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();

if (!CModule::IncludeModule("blog"))
{
	ShowError(GetMessage("BLOG_MODULE_NOT_INSTALL"));
	return;
}

$arParams["BLOG_URL"] = preg_replace("/[^a-zA-Z0-9_-]/is", "", $arParams["BLOG_URL"]);
if(!is_array($arParams["GROUP_ID"]))
	$arParams["GROUP_ID"] = array($arParams["GROUP_ID"]);
foreach($arParams["GROUP_ID"] as $k=>$v)
	if(IntVal($v) <= 0)
		unset($arParams["GROUP_ID"][$k]);
		
if(strLen($arParams["BLOG_VAR"])<=0)
	$arParams["BLOG_VAR"] = "blog";
if(strLen($arParams["USER_VAR"])<=0)
	$arParams["USER_VAR"] = "id";
if(strLen($arParams["PAGE_VAR"])<=0)
	$arParams["PAGE_VAR"] = "page";

$arParams["PATH_TO_USER_SETTINGS"] = trim($arParams["PATH_TO_USER_SETTINGS"]);
if(strlen($arParams["PATH_TO_USER_SETTINGS"])<=0)
	$arParams["PATH_TO_USER_SETTINGS"] = htmlspecialcharsbx($APPLICATION->GetCurPage()."?".$arParams["PAGE_VAR"]."=user_settings&".$arParams["BLOG_VAR"]."=#blog#");
	
$arParams["PATH_TO_USER"] = trim($arParams["PATH_TO_USER"]);
if(strlen($arParams["PATH_TO_USER"])<=0)
	$arParams["PATH_TO_USER"] = htmlspecialcharsbx($APPLICATION->GetCurPage()."?".$arParams["PAGE_VAR"]."=user&".$arParams["USER_VAR"]."=#user_id#");
$arParams["ID"] = IntVal($arParams["ID"]);

if (StrLen($arParams["BLOG_URL"]) > 0)
{
	if(IntVal($arParams["ID"]) > 0)
	{
		if($arParams["SET_TITLE"]=="Y")
			$APPLICATION->SetTitle(GetMessage("B_B_USE_TITLE"));

		$dbUser = CUser::GetByID($arParams["ID"]);
		if ($arUser = $dbUser->GetNext())
		{
			$arResult["User"] = $arUser;
			if ($arBlog = CBlog::GetByUrl($arParams["BLOG_URL"], $arParams["GROUP_ID"]))
			{
				if($arBlog["ACTIVE"] == "Y")
				{
					$arGroup = CBlogGroup::GetByID($arBlog["GROUP_ID"]);
					if($arGroup["SITE_ID"] == SITE_ID)
					{
						$arResult["Blog"] = $arBlog;

						if (CBlog::CanUserManageBlog($arBlog["ID"], IntVal($USER->GetID())))
						{
							if($arParams["SET_TITLE"]=="Y")
								$APPLICATION->SetTitle(str_replace("#NAME#", $arBlog["NAME"], GetMessage("B_B_USE_TITLE_BLOG")));
							$errorMessage = "";
							$okMessage = "";
							$arBlogUser = CBlogUser::GetByID($arUser["ID"], BLOG_BY_USER_ID);
							$arBlogUser = CBlogTools::htmlspecialcharsExArray($arBlogUser);
							$arResult["BlogUser"] = $arBlogUser;
							
							if ($GLOBALS["user_action"] == "Y" && check_bitrix_sessid())
							{
								if(strlen($GLOBALS["cancel"])>0)
									LocalRedirect(CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_USER_SETTINGS"], array("blog" => $arBlog["URL"])));
								if (empty($arBlogUser))
								{
									CBlogUser::Add(
										array(
											"USER_ID" => $arUser["ID"],
											"=LAST_VISIT" => $DB->GetNowFunction(),
											"=DATE_REG" => $DB->GetNowFunction(),
											"ALLOW_POST" => "Y"
										)
									);
								}

								CBlogUser::AddToUserGroup($arUser["ID"], $arBlog["ID"], $GLOBALS["add2groups"], "", BLOG_BY_USER_ID, BLOG_CHANGE);

								$dbCandidate = CBlogCandidate::GetList(
									array(),
									array("BLOG_ID" => $arBlog["ID"], "USER_ID" => $arUser["ID"])
								);
								if ($arCandidate = $dbCandidate->Fetch())
									CBlogCandidate::Delete($arCandidate["ID"]);
								
								LocalRedirect(CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_USER_SETTINGS"], array("blog" => $arBlog["URL"])));
							}

							$arResult["ERROR_MESSAGE"] = $errorMessage;
							$arResult["OK_MESSAGE"] = $okMessage;
							$arResult["userName"] = CBlogUser::GetUserName($arBlogUser["ALIAS"], $arUser["NAME"], $arUser["LAST_NAME"], $arUser["LOGIN"]);
							$arResult["urlToUser"] = CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_USER"], array("user_id" => $arUser["ID"]));
							$arResult["arUserGroups"] = CBlogUser::GetUserGroups($arUser["ID"], $arBlog["ID"], "Y", BLOG_BY_USER_ID);
							$dbBlogGroups = CBlogUserGroup::GetList(
								array("NAME" => "ASC"),
								array("BLOG_ID" => $arBlog["ID"]),
								false,
								false,
								array("ID", "NAME")
							);
							while ($arBlogGroups = $dbBlogGroups->GetNext())
								$arResult["Groups"][] = $arBlogGroups;
						}
						else
							$arResult["FATAL_ERROR"] = GetMessage("B_B_US_NO_RIGHT");
					}
					else
						$arResult["FATAL_ERROR"] = GetMessage("B_B_US_NO_BLOG");
				}
				else
					$arResult["FATAL_ERROR"] = GetMessage("B_B_US_NO_BLOG");
			}
			else
			{
				$arResult["FATAL_ERROR"] = GetMessage("B_B_US_NO_BLOG");
			}
		}
		else
		{
			$arResult["FATAL_ERROR"] = GetMessage("B_B_US_NO_USER");
		}
	}
	else
		$arResult["FATAL_ERROR"] = GetMessage("B_B_US_NO_USER");
}
else
{
	$arResult["FATAL_ERROR"] = GetMessage("B_B_US_NO_BLOG");
}
	
$this->IncludeComponentTemplate();
?>