예제 #1
0
                 $arResult["ERROR_MESSAGE"] .= GetMessage("BLOG_BLOG_BLOG_MES_DEL_ERROR") . '<br />';
             }
         }
         $arResult["ERROR_MESSAGE"] .= GetMessage("BLOG_BLOG_BLOG_MES_DEL_NO_RIGHTS") . '<br />';
     } else {
         $arResult["ERROR_MESSAGE"] .= GetMessage("BLOG_BLOG_SESSID_WRONG") . '<br />';
     }
 }
 if ($_GET["hide"] == "Y" && !$arResult["bFromList"]) {
     if (check_bitrix_sessid()) {
         if ($arResult["PostPerm"] >= BLOG_PERMS_MODERATE) {
             if (CBlogPost::Update($arParams["ID"], array("PUBLISH_STATUS" => BLOG_PUBLISH_STATUS_READY))) {
                 BXClearCache(True, "/" . SITE_ID . "/blog/popular_posts/");
                 BXClearCache(true, "/blog/socnet_post/" . intval($arParams["ID"] / 100) . "/" . $arParams["ID"] . "/");
                 BXClearCache(true, "/blog/socnet_post/gen/" . intval($arParams["ID"] / 100) . "/" . $arParams["ID"] . "/");
                 CBlogPost::DeleteLog($arParams["ID"]);
                 $url = CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_BLOG"], array("user_id" => $arBlog["OWNER_ID"]));
                 if (strpos($url, "?") === false) {
                     $url .= "?";
                 } else {
                     $url .= "&";
                 }
                 $url .= "hide_id=" . $arParams["ID"] . "&success=Y";
                 LocalRedirect($url);
             } else {
                 $arResult["ERROR_MESSAGE"] .= GetMessage("BLOG_BLOG_BLOG_MES_HIDE_ERROR") . '<br />';
             }
         } else {
             $arResult["ERROR_MESSAGE"] .= GetMessage("BLOG_BLOG_BLOG_MES_HIDE_NO_RIGHTS") . '<br />';
         }
     } else {
예제 #2
0
 if ($arParams["ID"] > 0) {
     if (array_key_exists("GRAT", $_POST) && is_array($_POST["GRAT"]) && array_key_exists("U", $_POST["GRAT"]) && is_array($_POST["GRAT"]["U"]) && array_key_exists("GRAT_TYPE", $_POST)) {
         if (is_array($arResult["PostToShow"]["GRAT_CURRENT"]) && count(array_diff($arResult["PostToShow"]["GRAT_CURRENT"]["USERS"], $_POST["GRAT"]["U"])) == 0 && count(array_diff($_POST["GRAT"]["U"], $arResult["PostToShow"]["GRAT_CURRENT"]["USERS"])) == 0 && ToLower($arResult["PostToShow"]["GRAT_CURRENT"]["TYPE"]) == ToLower($_POST["GRAT_TYPE"])) {
             $bNeedAddGrat = false;
         } elseif (is_array($arResult["PostToShow"]["GRAT_CURRENT"]) && intval($arResult["PostToShow"]["GRAT_CURRENT"]["ID"]) > 0 && CModule::IncludeModule("iblock")) {
             CIBlockElement::Delete($arResult["PostToShow"]["GRAT_CURRENT"]["ID"]);
         }
     }
     $arOldPost = CBlogPost::GetByID($arParams["ID"]);
     preg_match_all("/\\[user\\s*=\\s*([^\\]]*)\\](.+?)\\[\\/user\\]/ies" . BX_UTF_PCRE_MODIFIER, $arOldPost["DETAIL_TEXT"], $arMentionOld);
     $socnetRightsOld = CBlogPost::GetSocnetPerms($arParams["ID"]);
     if ($newID = CBlogPost::Update($arParams["ID"], $arFields)) {
         BXClearCache(true, "/blog/socnet_post/" . $arParams["ID"] . "/");
         $arFields["AUTHOR_ID"] = $arOldPost["AUTHOR_ID"];
         if ($arFields["PUBLISH_STATUS"] == BLOG_PUBLISH_STATUS_DRAFT && $arOldPost["PUBLISH_STATUS"] == BLOG_PUBLISH_STATUS_PUBLISH) {
             CBlogPost::DeleteLog($newID);
         } elseif ($arFields["PUBLISH_STATUS"] == BLOG_PUBLISH_STATUS_PUBLISH && $arOldPost["PUBLISH_STATUS"] == BLOG_PUBLISH_STATUS_PUBLISH) {
             $arParamsUpdateLog = array("allowVideo" => $arResult["allowVideo"], "PATH_TO_SMILE" => $arParams["PATH_TO_SMILE"]);
             CBlogPost::UpdateLog($newID, $arFields, $arBlog, $arParamsUpdateLog);
         }
     }
 } else {
     $arFields["=DATE_CREATE"] = $DB->GetNowFunction();
     $arFields["AUTHOR_ID"] = $arResult["UserID"];
     $arFields["BLOG_ID"] = $arBlog["ID"];
     $newID = CBlogPost::Add($arFields);
     $socnetRightsOld = array("U" => array());
     $bAdd = true;
     $bNeedMail = false;
 }
 if (IntVal($newID) > 0) {
예제 #3
0
}
$user_id = IntVal($USER->GetID());
if ($user_id > 0 && $user_id == IntVal($arParams["USER_ID"])) {
    if (CSocNetFeatures::IsActiveFeature(SONET_ENTITY_USER, $arParams["USER_ID"], "blog")) {
        $arResult["ERROR_MESSAGE"] = array();
        $arResult["OK_MESSAGE"] = array();
        //Message delete
        if (IntVal($_GET["del_id"]) > 0) {
            if ($_GET["success"] == "Y") {
                $arResult["OK_MESSAGE"][] = GetMessage("BLOG_BLOG_BLOG_MES_DELED");
            } else {
                if (check_bitrix_sessid()) {
                    $del_id = IntVal($_GET["del_id"]);
                    if ($arPost = CBlogPost::GetByID($del_id)) {
                        if ($arPost["AUTHOR_ID"] == $user_id) {
                            CBlogPost::DeleteLog($del_id);
                            if (CBlogPost::Delete($del_id)) {
                                LocalRedirect($APPLICATION->GetCurPageParam("del_id=" . $del_id . "&success=Y", array("del_id", "pub_id", "sessid", "success")));
                            } else {
                                $arResult["ERROR_MESSAGE"][] = GetMessage("BLOG_BLOG_BLOG_MES_DEL_ERROR");
                            }
                        } else {
                            $arResult["ERROR_MESSAGE"][] = GetMessage("BLOG_BLOG_BLOG_MES_DEL_NO_RIGHTS");
                        }
                    } else {
                        $arResult["ERROR_MESSAGE"][] = GetMessage("BLOG_BLOG_BLOG_MES_DEL_NO_RIGHTS");
                    }
                } else {
                    $arResult["ERROR_MESSAGE"][] = GetMessage("BLOG_BLOG_SESSID_WRONG");
                }
            }
예제 #4
0
            if (CBlogPost::Delete($del_id)) {
                if ($bGroupMode) {
                    CSocNetGroup::SetLastActivity($arParams["SOCNET_GROUP_ID"]);
                }
                LocalRedirect($APPLICATION->GetCurPageParam("del_id=" . $del_id . "&success=Y", array("del_id", "hide_id", "sessid", "success")));
            } else {
                $arResult["ERROR_MESSAGE"][] = array("id" => "DELETE", "text" => GetMessage("BLOG_BLOG_BLOG_MES_DEL_ERROR"));
            }
        }
    } else {
        $bCanHide = $arResult["perms"] >= BLOG_PERMS_MODERATE ? true : !$bGroupMode && CBlogPost::GetSocNetPostPerms($hide_id, true) >= BLOG_PERMS_MODERATE;
        if (!$bCanHide) {
            $arResult["ERROR_MESSAGE"][] = array("id" => "ACCESS_DENIED", "text" => GetMessage("BLOG_BLOG_BLOG_MES_HIDE_NO_RIGHTS"));
        } elseif (CBlogPost::GetByID($hide_id)) {
            if (CBlogPost::Update($hide_id, array("PUBLISH_STATUS" => BLOG_PUBLISH_STATUS_READY))) {
                CBlogPost::DeleteLog($hide_id);
                LocalRedirect($APPLICATION->GetCurPageParam("hide_id=" . $hide_id . "&success=Y", array("del_id", "hide_id", "sessid", "success")));
            } else {
                $arResult["ERROR_MESSAGE"][] = array("id" => "HIDE", "text" => GetMessage("BLOG_BLOG_BLOG_MES_HIDE_ERROR"));
            }
        }
    }
}
/********************************************************************
				/Actions
********************************************************************/
/********************************************************************
				Data
********************************************************************/
$arResult["urlToPosts"] = CComponentEngine::MakePathFromTemplate($arParams["~PATH_TO_BLOG_POSTS"], array("user_id" => $arParams["USER_ID"]));
CpageOption::SetOptionString("main", "nav_page_in_session", "N");
예제 #5
0
     if (CBlogPost::CanUserDeletePost($arParams["ID"], $user_id)) {
         $dbC = CBlogComment::GetList(array("ID" => "ASC"), array("BLOG_ID" => $arBlog["ID"], "POST_ID" => $arParams["ID"]), false, false, array("PATH", "PUBLISH_STATUS", "POST_TEXT", "TITLE", "DATE_CREATE", "AUTHOR_IP1", "AUTHOR_IP", "AUTHOR_EMAIL", "AUTHOR_NAME", "AUTHOR_ID", "PARENT_ID", "POST_ID", "BLOG_ID", "ID"));
         while ($arC = $dbC->Fetch()) {
             $arCTmp = array("BLOG_ID" => $arCopyBlog["ID"], "POST_ID" => $copyID);
             CBlogComment::Update($arC["ID"], $arCTmp);
         }
         $arFilter = array("POST_ID" => $arParams["ID"], "BLOG_ID" => $arBlog["ID"], "IS_COMMENT" => "Y");
         $res = CBlogImage::GetList(array("ID" => "ASC"), $arFilter);
         while ($arImg = $res->GetNext()) {
             $arNewImg = array("BLOG_ID" => $arCopyBlog["ID"], "POST_ID" => $copyID);
             CBlogImage::Update($arImg["ID"], $arNewImg);
         }
         if (!CBlogPost::Delete($arParams["ID"])) {
             $arResult["ERROR_MESSAGE"] = GetMessage("BPE_COPY_DELETE_ERROR");
         } else {
             CBlogPost::DeleteLog($arParams["ID"], $arParams["MICROBLOG"]);
         }
     }
 }
 BXClearCache(True, "/" . SITE_ID . "/blog/" . $arCopyBlog["URL"] . "/first_page/");
 BXClearCache(True, "/" . SITE_ID . "/blog/" . $arCopyBlog["URL"] . "/calendar/");
 BXClearCache(True, "/" . SITE_ID . "/blog/last_messages/");
 BXClearCache(True, "/" . SITE_ID . "/blog/commented_posts/");
 BXClearCache(True, "/" . SITE_ID . "/blog/popular_posts/");
 BXClearCache(True, "/" . SITE_ID . "/blog/last_comments/");
 BXClearCache(True, "/" . SITE_ID . "/blog/groups/" . $arCopyBlog["GROUP_ID"] . "/");
 BXClearCache(True, "/" . SITE_ID . "/blog/" . $arCopyBlog["URL"] . "/rss_out/");
 BXClearCache(True, "/" . SITE_ID . "/blog/" . $arCopyBlog["URL"] . "/rss_all/");
 BXClearCache(True, "/" . SITE_ID . "/blog/rss_sonet/");
 BXClearCache(True, "/" . SITE_ID . "/blog/rss_all/");
 BXClearCache(True, "/" . SITE_ID . "/blog/" . $arCopyBlog["URL"] . "/favorite/");
예제 #6
0
} elseif (!CModule::IncludeModule("blog")) {
    $strError = GetMessage("BLOG_MOBILE_AJAX_BLOG_MODULE_ERROR");
} elseif (!CModule::IncludeModule("socialnetwork")) {
    $strError = GetMessage("BLOG_MOBILE_AJAX_SONET_MODULE_ERROR");
} elseif (!($arBlogPost = CBlogPost::GetByID($post_id))) {
    $strError = GetMessage("BLOG_MOBILE_BLOG_POST_ERROR");
} elseif (!($arBlog = CBlog::GetByID($arBlogPost["BLOG_ID"]))) {
    $strError = GetMessage("BLOG_MOBILE_BLOG_ERROR");
}
if (!$strError) {
    if ($action == "delete_post") {
        $PostPerm = CBlogPost::GetSocNetPostPerms($post_id, true, $GLOBALS["USER"]->GetID(), $arBlogPost["AUTHOR_ID"]);
        if ($PostPerm < BLOG_PERMS_FULL) {
            $strError = GetMessage("BLOG_MOBILE_DELETE_PERMISSION_ERROR");
        } else {
            CBlogPost::DeleteLog($post_id);
            if (CBlogPost::Delete($post_id)) {
                BXClearCache(True, "/" . SITE_ID . "/blog/popular_posts/");
                BXClearCache(true, "/blog/socnet_post/" . $post_id . "/");
                BXClearCache(true, "/blog/socnet_post/gen/" . $post_id . "/");
            } else {
                $strError = GetMessage("BLOG_MOBILE_DELETE_ERROR");
            }
        }
    } elseif ($action == "get_blog_post_data") {
        $rsLog = CSocNetLog::GetList(array(), array("EVENT_ID" => array("blog_post", "blog_post_important"), "SOURCE_ID" => $post_id), false, false, array("ID"));
        if ($arLog = $rsLog->Fetch()) {
            $arResult["log_id"] = $arLog["ID"];
            $arResult["post_user_id"] = $arBlogPost["AUTHOR_ID"];
            $arResult["PostPerm"] = CBlogPost::GetSocNetPostPerms($post_id, true, $GLOBALS["USER"]->GetID(), $arBlogPost["AUTHOR_ID"]);
            if ($arResult["PostPerm"] >= BLOG_PERMS_FULL) {