$arResult["urlToModeration"] = CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_MODERATION"], array("blog" => $arBlog["URL"])); $dbPost = CBlogPost::GetList(array(), array("BLOG_ID" => $arBlog["ID"], "PUBLISH_STATUS" => BLOG_PUBLISH_STATUS_READY), array("COUNT" => "ID"), false, array("ID", "BLOG_ID")); if ($arPost = $dbPost->Fetch()) { $arResult["CntToModerate"] = $arPost["ID"]; } } $dbPost = CBlogPost::GetList(array(), array("BLOG_ID" => $arBlog["ID"], "PUBLISH_STATUS" => BLOG_PUBLISH_STATUS_DRAFT, "AUTHOR_ID" => $user_id), array("COUNT" => "ID"), false, array("ID", "BLOG_ID")); if ($arPost = $dbPost->Fetch()) { $arResult["CntToDraft"] = $arPost["ID"]; } $arResult["SecondLine"] = "Y"; } elseif ($perm >= BLOG_PERMS_PREMODERATE) { $arResult["urlToNewPost"] = CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_POST_EDIT"], array("blog" => $arBlog["URL"], "post_id" => "new")); $arResult["SecondLine"] = "Y"; } if (CBlog::CanUserManageBlog($arBlog["ID"], $user_id)) { $arResult["urlToUserSettings"] = CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_USER_SETTINGS"], array("blog" => $arBlog["URL"])); $arResult["urlToGroupEdit"] = CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_GROUP_EDIT"], array("blog" => $arBlog["URL"])); $arResult["urlToCategoryEdit"] = CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_CATEGORY_EDIT"], array("blog" => $arBlog["URL"])); $arResult["urlToBlogEdit"] = CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_BLOG_EDIT"], array("blog" => $arBlog["URL"])); $arResult["ThirdLine"] = "Y"; } } if (empty($arOwnBlog) || $arOwnBlog["URL"] != $arBlog["URL"]) { if (IntVal($user_id) > 0) { if (!CBlog::IsFriend($arBlog["ID"], $user_id)) { $arResult["urlToBecomeFriend"] = $arResult["urlToCurrentBlog"] . (strpos($arResult["urlToCurrentBlog"], "?") === false ? "?" : "&") . "become_friend=Y&" . bitrix_sessid_get(); $arResult["SecondLine"] = "Y"; } if (!empty($arOwnBlog)) { if (!CBlog::IsFriend($arOwnBlog["ID"], $arBlog["OWNER_ID"])) {
} $arParams["BLOG_URL"] = preg_replace("/[^a-zA-Z0-9_-]/is", "", Trim($arParams["BLOG_URL"])); if ($arParams["SET_TITLE"] == "Y") { $APPLICATION->SetTitle(GetMessage("BLOG_CATEGORY_TITLE")); } $USER_ID = intval($USER->GetID()); $arResult["CATEGORY"] = array(); if ($arBlog = CBlog::GetByUrl($arParams["BLOG_URL"])) { if ($arBlog["ACTIVE"] == "Y") { $arGroup = CBlogGroup::GetByID($arBlog["GROUP_ID"]); if ($arGroup["SITE_ID"] == SITE_ID) { $arResult["BLOG"] = $arBlog; if ($arParams["SET_TITLE"] == "Y") { $APPLICATION->SetTitle(GetMessage("BLOG_CATEGORY_TITLE") . "\"" . $arBlog["NAME"] . "\""); } if (CBlog::CanUserManageBlog($arBlog["ID"], $USER_ID)) { if ($_POST["save"] && check_bitrix_sessid()) { $arFields = array('NAME' => $_POST["NAME"]); if (IntVal($_POST['ID']) > 0) { $res = CBlogCategory::GetList(array("NAME" => "ASC"), array("BLOG_ID" => $arBlog["ID"], "ID" => IntVal($_POST["ID"]))); if ($res->Fetch()) { if ($_POST["category_del"] == "Y") { CBlogCategory::Delete(IntVal($_POST['ID'])); } else { $res = CBlogCategory::GetList(array("NAME" => "ASC"), array("BLOG_ID" => $arBlog["ID"], "NAME" => $arFields["NAME"])); if (!$res->Fetch()) { $newID = CBlogCategory::Update(IntVal($_POST["ID"]), $arFields); } else { $arResult["ERROR_MESSAGE"] = GetMessage("BLOG_CATEGORY_EXIST_1") . " \"" . htmlspecialcharsEx($arFields["NAME"]) . "\" " . GetMessage("BLOG_CATEGORY_EXIST_2"); } }
$arParams["PATH_TO_USER_SETTINGS_EDIT"] = htmlspecialchars($APPLICATION->GetCurPage() . "?" . $arParams["PAGE_VAR"] . "=user_settings_edit&" . $arParams["BLOG_VAR"] . "=#blog#&" . $arParams["USER_VAR"] . "=#user_id#"); } $arParams["PATH_TO_USER"] = trim($arParams["PATH_TO_USER"]); if (strlen($arParams["PATH_TO_USER"]) <= 0) { $arParams["PATH_TO_USER"] = htmlspecialchars($APPLICATION->GetCurPage() . "?" . $arParams["PAGE_VAR"] . "=user&" . $arParams["USER_VAR"] . "=#user_id#"); } if (StrLen($arParams["BLOG_URL"]) > 0) { if ($arParams["SET_TITLE"] == "Y") { $APPLICATION->SetTitle(GetMessage("B_B_US_TITLE")); } 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_US_TITLE_BLOG"))); } $errorMessage = ""; $okMessage = ""; if (IntVal($GLOBALS["del_id"]) > 0) { if (check_bitrix_sessid()) { CBlogUser::AddToUserGroup($GLOBALS["del_id"], $arBlog["ID"], array(), "", BLOG_BY_USER_ID, BLOG_CHANGE); $dbCandidate = CBlogCandidate::GetList(array(), array("BLOG_ID" => $arBlog["ID"], "USER_ID" => IntVal($GLOBALS["del_id"]))); if ($arCandidate = $dbCandidate->Fetch()) { CBlogCandidate::Delete($arCandidate["ID"]); $okMessage = GetMessage("B_B_US_DELETE_OK") . ".<br />"; } } else { $errorMessage .= GetMessage("BLOG_BLOG_SESSID_WRONG") . "<br />";
$arBlog = $res->Fetch(); $BLOG_ID = intval($arBlog['ID']); } else { $arBlog = CBlog::GetByOwnerID($USER_ID); } if (!$OWNER && $arBlog && !$BLOG_ID) { if ($is404) { $page = CBlog::PreparePath($arBlog['URL']) . "blog_edit.php"; } else { $arSitePath = CBlogSitePath::GetBySiteID(SITE_ID); $page = $arSitePath["PATH"] . "/blog_edit.php?blog=" . htmlspecialchars($arBlog['URL']); } LocalRedirect($page); die; } elseif (!$OWNER || $arBlog) { if ($BLOG_ID == 0 || CBlog::CanUserManageBlog($BLOG_ID, $GLOBALS["USER"]->IsAuthorized() ? $GLOBALS["USER"]->GetID() : 0)) { $bBlockURL = COption::GetOptionString("blog", "block_url_change", "N") == 'Y' ? true : false; $arSitePath = CBlogSitePath::GetBySiteID(SITE_ID); if ($_POST['reset']) { LocalRedirect(CBlog::PreparePath($arBlog['URL'], false, $is404)); } elseif ($_SERVER["REQUEST_METHOD"] == "POST" && $_POST['do_blog'] == "Y") { if ($_POST['perms_p'][1] > BLOG_PERMS_READ) { $_POST['perms_p'][1] = BLOG_PERMS_READ; } if ($_POST['perms_c'][1] > BLOG_PERMS_WRITE) { $_POST['perms_c'][1] = BLOG_PERMS_WRITE; } $arFields = array("NAME" => $_POST['NAME'], "DESCRIPTION" => $_POST['DESCRIPTION'], "=DATE_UPDATE" => $DB->CurrentTimeFunction(), "GROUP_ID" => $_POST['GROUP_ID'], "ENABLE_IMG_VERIF" => $_POST['ENABLE_IMG_VERIF'] == "Y" ? "Y" : "N", "EMAIL_NOTIFY" => $_POST['EMAIL_NOTIFY'] == "Y" ? "Y" : "N", "ENABLE_RSS" => "Y", "PERMS_POST" => $_POST['perms_p'], "PERMS_COMMENT" => $_POST['perms_c']); if (!$bBlockURL || $USER->IsAdmin() || $BLOG_ID == 0) { $arFields["URL"] = $_POST['URL']; }
$arBlog = CBlog::GetByOwnerID($USER_ID, $arParams["GROUP_ID"]); if ($arBlog["ACTIVE"] == "Y") { $arGroup = CBlogGroup::GetByID($arBlog["GROUP_ID"]); if (intval($arBlog["SOCNET_GROUP_ID"]) <= 0 && $arGroup["SITE_ID"] != SITE_ID) { unset($arBlog); } } else { unset($arBlog); } } if (!empty($arBlog)) { $arBlog = CBlogTools::htmlspecialcharsExArray($arBlog); $arResult["urlToBlog"] = CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_BLOG"], array("blog" => $arBlog["URL"])); $arResult["BLOG"] = $arBlog; } if (CBlog::CanUserManageBlog($arBlog["ID"], IntVal($USER->GetID())) || CBlog::CanUserCreateBlog($USER->GetID()) && IntVal($arBlog["ID"]) <= 0) { $bBlockURL = COption::GetOptionString("blog", "block_url_change", "N") == 'Y' ? true : false; if ($bBlockURL && !$USER->IsAdmin() && !empty($arBlog)) { $arResult["BlockURL"] = "Y"; } if ($_POST['reset']) { LocalRedirect($arResult["urlToBlog"]); } elseif ($_SERVER["REQUEST_METHOD"] == "POST" && $_POST['do_blog'] == "Y" && check_bitrix_sessid()) { if ($_POST['perms_p'][1] > BLOG_PERMS_READ) { $_POST['perms_p'][1] = BLOG_PERMS_READ; } if ($_POST['perms_c'][1] > BLOG_PERMS_WRITE) { $_POST['perms_c'][1] = BLOG_PERMS_WRITE; } $arFields = array("NAME" => $_POST['NAME'], "DESCRIPTION" => $_POST['DESCRIPTION'], "=DATE_UPDATE" => $DB->CurrentTimeFunction(), "ENABLE_IMG_VERIF" => $_POST['ENABLE_IMG_VERIF'] == "Y" ? "Y" : "N", "EMAIL_NOTIFY" => $_POST['EMAIL_NOTIFY'] == "Y" ? "Y" : "N", "ENABLE_RSS" => "Y"); if (IntVal($_POST['GROUP_ID']) > 0) {
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) { die; } IncludeTemplateLangFile(__FILE__); if (CModule::IncludeModule("blog")) { //******************************************************* $GLOBALS["APPLICATION"]->SetTemplateCSS("blog/blog.css"); $BLOG_URL = Trim($BLOG_URL); $BLOG_URL = preg_replace("/[^a-zA-Z0-9_-]/is", "", $BLOG_URL); $is404 = $is404 == 'N' ? false : true; if (StrLen($BLOG_URL) > 0) { $dbBlog = CBlog::GetList(array(), array("URL" => $BLOG_URL), false, false, array("ID", "NAME")); if ($arBlog = $dbBlog->Fetch()) { $arPath = CBlogSitePath::GetBySiteID(SITE_ID); $strPath = $arPath["PATH"]; if (CBlog::CanUserManageBlog($arBlog["ID"], $GLOBALS["USER"]->IsAuthorized() ? $GLOBALS["USER"]->GetID() : 0)) { $errorMessage = ""; $okMessage = ""; if (isset($ADD_FRIEND) && is_array($ADD_FRIEND)) { foreach ($ADD_FRIEND as $key => $friend) { $friend = preg_replace("/[^a-zA-Z0-9_-]/is", "", $friend); if (StrLen($friend) > 0) { $arUserID = array(); $dbSearchUser = CBlog::GetList(array(), array("URL" => $friend), false, false, array("ID", "OWNER_ID")); if ($arSearchUser = $dbSearchUser->Fetch()) { $arUserID[] = $arSearchUser["OWNER_ID"]; } if (count($arUserID) <= 0) { $dbSearchUser = CBlog::GetList(array(), array("NAME" => $friend), false, false, array("ID", "OWNER_ID")); if ($arSearchUser = $dbSearchUser->Fetch()) { $arUserID[] = $arSearchUser["OWNER_ID"];