Ejemplo n.º 1
0
             $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) {
     if ($bNeedAddGrat && CModule::IncludeModule("iblock")) {
         $arGratFromPOST = false;
         $arUsersFromPOST = false;
Ejemplo n.º 2
0
             $arResult["ERROR_MESSAGE"][] = GetMessage("BLOG_BLOG_SESSID_WRONG");
         }
     }
 } elseif (IntVal($_GET["pub_id"]) > 0) {
     if ($_GET["success"] == "Y") {
         $arResult["OK_MESSAGE"][] = GetMessage("BLOG_BLOG_BLOG_MES_PUB");
     } else {
         if (check_bitrix_sessid()) {
             $pub_id = IntVal($_GET["pub_id"]);
             $arPost = CBlogPost::GetByID($pub_id);
             if (!empty($arPost) && ($arPost["AUTHOR_ID"] == $arParams["USER_ID"] || $bGroupMode) && $arPost["PUBLISH_STATUS"] != BLOG_PUBLISH_STATUS_PUBLISH) {
                 if (CBlogPost::Update($pub_id, array("PUBLISH_STATUS" => BLOG_PUBLISH_STATUS_PUBLISH, "=DATE_PUBLISH" => $DB->GetNowFunction()))) {
                     $arParamsNotify = array("bSoNet" => true, "allowVideo" => $arResult["allowVideo"], "PATH_TO_SMILE" => $arParams["PATH_TO_SMILE"], "PATH_TO_POST" => $arParams["PATH_TO_POST"], "SOCNET_GROUP_ID" => $arParams["SOCNET_GROUP_ID"], "user_id" => $arPost["AUTHOR_ID"], "NAME_TEMPLATE" => $arParams["NAME_TEMPLATE"], "SHOW_LOGIN" => $arParams["SHOW_LOGIN"]);
                     $dbRes = CSocNetLog::GetList(array("ID" => "DESC"), array("EVENT_ID" => array("blog_post", "blog_post_important"), "SOURCE_ID" => $pub_id), false, false, array("ID", "ENTITY_TYPE", "ENTITY_ID"));
                     if ($arRes = $dbRes->Fetch()) {
                         CBlogPost::UpdateLog($pub_id, $arPost, false, $arParamsNotify);
                     } else {
                         CBlogPost::Notify($arPost, false, $arParamsNotify);
                         $socnetRights = CBlogPost::GetSocNetPermsCode($arPost["ID"]);
                         $arFieldsIM = array("TYPE" => "POST", "TITLE" => $arPost["TITLE"], "URL" => CComponentEngine::MakePathFromTemplate(htmlspecialcharsBack($arParams["PATH_TO_POST"]), array("post_id" => $arPost["ID"], "user_id" => $arPost["AUTHOR_ID"])), "ID" => $arPost["ID"], "FROM_USER_ID" => $arPost["AUTHOR_ID"], "TO_USER_ID" => array(), "TO_SOCNET_RIGHTS" => $socnetRights, "TO_SOCNET_RIGHTS_OLD" => array("U" => array(), "SG" => array()));
                         CBlogPost::NotifyIm($arFieldsIM);
                     }
                     LocalRedirect($APPLICATION->GetCurPageParam("pub_id=" . $pub_id . "&success=Y", array("del_id", "pub_id", "sessid", "success")));
                 } else {
                     $arResult["ERROR_MESSAGE"][] = GetMessage("BLOG_BLOG_BLOG_MES_PUB_ERROR");
                 }
             } else {
                 $arResult["ERROR_MESSAGE"][] = GetMessage("BLOG_BLOG_BLOG_MES_PUB_NO_RIGHTS");
             }
         } else {
             $arResult["ERROR_MESSAGE"][] = GetMessage("BLOG_BLOG_SESSID_WRONG");