function EditPost($params)
    {
        global $USER, $DB;
        $postId = IntVal(CBlogMetaWeblog::DecodeParams($params[0]["#"]["value"][0]["#"]));
        $user = CBlogMetaWeblog::DecodeParams($params[1]["#"]["value"][0]["#"]);
        $password = CBlogMetaWeblog::DecodeParams($params[2]["#"]["value"][0]["#"]);
        $arPostInfo = $params[3]["#"]["value"][0]["#"]["struct"][0]["#"]["member"];
        $publish = $params[4]["#"]["value"][0]["#"]["boolean"][0]["#"];
        foreach ($arPostInfo as $val) {
            ${$val["#"]["name"][0]["#"]} = CBlogMetaWeblog::DecodeParams($val["#"]["value"][0]["#"]);
        }
        $arCategory = array();
        if (is_array($categories["data"][0]["#"]["value"])) {
            foreach ($categories["data"][0]["#"]["value"] as $val) {
                $catTmp = CBlogMetaWeblog::DecodeParams($val["#"]);
                if (strlen($catTmp) > 0) {
                    $arCategory[] = $catTmp;
                }
            }
        }
        if (CBlogMetaWeblog::Authorize($user, $password)) {
            $result = '';
            $userId = $USER->GetID();
            if (IntVal($postId) > 0) {
                $arSelectedFields = array("ID", "BLOG_ID", "TITLE", "DATE_PUBLISH", "AUTHOR_ID", "DETAIL_TEXT", "DETAIL_TEXT_TYPE");
                $dbPost = CBlogPost::GetList(array(), array("AUTHOR_ID" => $userId, "ID" => $postId), false, array("nTopCount" => 1), $arSelectedFields);
                if ($arPost = $dbPost->Fetch()) {
                    $arBlog = CBlog::GetByID($arPost["BLOG_ID"]);
                    if (intval($arBlog["SOCNET_GROUP_ID"]) > 0 && CModule::IncludeModule("socialnetwork") && method_exists("CSocNetGroup", "GetSite")) {
                        $arSites = array();
                        $rsGroupSite = CSocNetGroup::GetSite($arBlog["SOCNET_GROUP_ID"]);
                        while ($arGroupSite = $rsGroupSite->Fetch()) {
                            $arSites[] = $arGroupSite["LID"];
                        }
                    } else {
                        $arSites = array(SITE_ID);
                    }
                    $CATEGORYtmp = array();
                    $dbCategory = CBlogCategory::GetList(array(), array("BLOG_ID" => $arPost["BLOG_ID"]));
                    while ($arCat = $dbCategory->Fetch()) {
                        $arCatBlog[ToLower($arCat["NAME"])] = $arCat["ID"];
                    }
                    foreach ($arCategory as $tg) {
                        $tg = trim($tg);
                        if (!in_array($arCatBlog[ToLower($tg)], $CATEGORYtmp)) {
                            if (IntVal($arCatBlog[ToLower($tg)]) > 0) {
                                $CATEGORYtmp[] = $arCatBlog[ToLower($tg)];
                            } else {
                                $CATEGORYtmp[] = CBlogCategory::Add(array("BLOG_ID" => $arPost["BLOG_ID"], "NAME" => $tg));
                                foreach ($arSites as $site_id_tmp) {
                                    BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/category/");
                                }
                            }
                        }
                    }
                    $dbSite = CSite::GetByID(SITE_ID);
                    $arSite = $dbSite->Fetch();
                    $serverName = htmlspecialcharsEx($arSite["SERVER_NAME"]);
                    if (strlen($serverName) <= 0) {
                        if (defined("SITE_SERVER_NAME") && strlen(SITE_SERVER_NAME) > 0) {
                            $serverName = SITE_SERVER_NAME;
                        } else {
                            $serverName = COption::GetOptionString("main", "server_name", "www.bitrixsoft.com");
                        }
                    }
                    $dbImage = CBlogImage::GetList(array(), array("POST_ID" => false, "BLOG_ID" => $arBlog["ID"], "IS_COMMENT" => "N"));
                    while ($arImage = $dbImage->Fetch()) {
                        $path = "";
                        $path = CFile::GetPath($arImage["FILE_ID"]);
                        $path = "http://" . $serverName . $path;
                        if (strpos($description, $path) !== false) {
                            $description = str_replace('<img src="' . $path . '" alt=""/>', "[IMG ID=" . $arImage["ID"] . "]", $description);
                            CBlogImage::Update($arImage["ID"], array("POST_ID" => $arPost["ID"]));
                        }
                    }
                    $arFields = array("TITLE" => $title, "DETAIL_TEXT" => $description, "DETAIL_TEXT_TYPE" => "html", "PUBLISH_STATUS" => $publish == 1 ? "P" : "D", "CATEGORY_ID" => implode(",", $CATEGORYtmp));
                    $postId = CBlogPost::Update($arPost["ID"], $arFields);
                    CBlogPostCategory::DeleteByPostID($arPost["ID"]);
                    foreach ($CATEGORYtmp as $v) {
                        CBlogPostCategory::Add(array("BLOG_ID" => $arPost["BLOG_ID"], "POST_ID" => $arPost["ID"], "CATEGORY_ID" => $v));
                    }
                    if (IntVal($postId) > 0) {
                        foreach ($arSites as $site_id_tmp) {
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/first_page/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/calendar/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/last_messages/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/commented_posts/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/popular_posts/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/last_comments/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/groups/" . $arBlog["GROUP_ID"] . "/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/trackback/" . $arPost["ID"] . "/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/comment/" . $arPost["ID"] . "/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/rss_out/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/rss_all/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/rss_sonet/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/rss_all/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/favorite/");
                            BXClearCache(True, "/" . $site_id_tmp . "/blog/" . $arBlog["URL"] . "/post/" . $arPost["ID"] . "/");
                        }
                        return '<params>
									<param>
										<value>
											<i4>' . $postId . '</i4>
										</value>
									</param>
								</params>';
                    } else {
                        return '<fault>
							<value>
								<struct>
									<member>
										<name>faultCode</name>
										<value><int>3</int></value>
										</member>
									<member>
										<name>faultString</name>
										<value><string>Error on saving post</string></value>
										</member>
									</struct>
								</value>
							</fault>';
                    }
                }
            }
        } else {
            return '<fault>
				<value>
					<struct>
						<member>
							<name>faultCode</name>
							<value><int>3</int></value>
							</member>
						<member>
							<name>faultString</name>
							<value><string>' . $arAuthResult["MESSAGE"] . '</string></value>
							</member>
						</struct>
					</value>
				</fault>';
        }
    }
Beispiel #2
0
             } 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");
                 }
             }
         } else {
             $arResult["ERROR_MESSAGE"] = GetMessage("BLOG_ERR_NO_RIGHTS");
         }
     } else {
         $arFields["BLOG_ID"] = $arBlog["ID"];
         $res = CBlogCategory::GetList(array("NAME" => "ASC"), array("BLOG_ID" => $arFields["BLOG_ID"], "NAME" => $arFields["NAME"]));
         if (!$res->Fetch()) {
             $newID = CBlogCategory::Add($arFields);
         } else {
             $arResult["ERROR_MESSAGE"] = GetMessage("BLOG_CATEGORY_EXIST_1") . " \"" . htmlspecialcharsEx($arFields["NAME"]) . "\" " . GetMessage("BLOG_CATEGORY_EXIST_2");
         }
     }
     if (strlen($arResult["ERROR_MESSAGE"]) <= 0) {
         LocalRedirect($_POST["BACK_URL"]);
     }
 }
 if (strlen($_POST["BACK_URL"]) > 0) {
     $arResult["BACK_URL"] = $_POST["BACK_URL"];
 } else {
     $arResult["BACK_URL"] = htmlspecialcharsbx($APPLICATION->GetCurPageParam());
 }
 $res = CBlogCategory::GetList(array("NAME" => "ASC"), array("BLOG_ID" => $arBlog["ID"]));
 while ($arCategory = $res->GetNext()) {
Beispiel #3
0
 }
 if ($iCommentID > 0) {
     $arPost = CBlogPost::GetByID($iCommentID);
     if (!$arPost) {
         $iCommentID = 0;
     } elseif (intVal($arPost["NUM_COMMENTS"]) > 0 && $arPost["NUM_COMMENTS"] != $arResult["ELEMENT"]["PROPERTIES"]["BLOG_COMMENTS_CNT"]["VALUE"]) {
         CIBlockElement::SetPropertyValues($arParams["ELEMENT_ID"], $arParams["IBLOCK_ID"], intVal($arPost["NUM_COMMENTS"]), "BLOG_COMMENTS_CNT");
     }
 }
 if (!$iCommentID && isset($_REQUEST["parentId"])) {
     $arCategory = array();
     $arBlog = CBlog::GetByUrl($arParams["BLOG_URL"]);
     if (!empty($arResult["ELEMENT"]["TAGS"])) {
         $arCategoryVal = explode(",", $arResult["ELEMENT"]["TAGS"]);
         foreach ($arCategoryVal as $k => $v) {
             if ($id = CBlogCategory::Add(array("BLOG_ID" => $arBlog["ID"], "NAME" => $v))) {
                 $arCategory[] = $id;
             }
         }
     }
     $arResult["ELEMENT"]["DETAIL_PICTURE"] = CFile::GetFileArray($arResult["ELEMENT"]["DETAIL_PICTURE"]);
     $arResult["ELEMENT"]["REAL_PICTURE"] = CFile::GetFileArray($arResult["ELEMENT"]["PROPERTIES"]["REAL_PICTURE"]["VALUE"]);
     $arFields = array("TITLE" => $arResult["ELEMENT"]["NAME"], "DETAIL_TEXT" => "[IMG]http://" . $_SERVER['HTTP_HOST'] . $arResult["ELEMENT"]["DETAIL_PICTURE"]["SRC"] . "[/IMG]\n" . "[URL=http://" . $_SERVER['HTTP_HOST'] . $arResult["ELEMENT"]["~DETAIL_PAGE_URL"] . "]" . $arResult["ELEMENT"]["NAME"] . "[/URL]\n" . (!empty($arResult["ELEMENT"]["TAGS"]) ? $arResult["ELEMENT"]["TAGS"] . "\n" : "") . $arResult["ELEMENT"]["~DETAIL_TEXT"] . "\n" . "[URL=http://" . $_SERVER['HTTP_HOST'] . $arResult["ELEMENT"]["REAL_PICTURE"]["SRC"] . "]" . GetMessage("P_ORIGINAL") . "[/URL]", "CATEGORY_ID" => implode(",", $arCategory), "PUBLISH_STATUS" => "P", "PERMS_POST" => array(), "PERMS_COMMENT" => array(), "=DATE_CREATE" => $DB->GetNowFunction(), "=DATE_PUBLISH" => $DB->GetNowFunction(), "AUTHOR_ID" => !empty($arResult["ELEMENT"]["CREATED_BY"]) ? $arResult["ELEMENT"]["CREATED_BY"] : 1, "BLOG_ID" => $arBlog["ID"], "ENABLE_TRACKBACK" => "N");
     $newID = CBlogPost::Add($arFields);
     if ($newID > 0) {
         foreach ($arCategory as $key) {
             CBlogPostCategory::Add(array("BLOG_ID" => $arBlog["ID"], "POST_ID" => $newID, "CATEGORY_ID" => $key));
         }
         BXClearCache(True, "/" . SITE_ID . "/blog/" . $arBlog["URL"]);
         BXClearCache(True, "/" . SITE_ID . "/blog/last_messages/");
         BXClearCache(True, "/" . SITE_ID . "/blog/groups/" . $arBlog["GROUP_ID"] . "/");
Beispiel #4
0
if (!$SocNetGroupID) {
    $SocNetGroupID = CBlogGroup::Add(array("SITE_ID" => WIZARD_SITE_ID, "NAME" => $IdeaBlogGroupName));
}
//Blog
$blogID = CBlog::Add(array("NAME" => GetMessage("IDEA_DEMO_BLOG_NAME"), "DESCRIPTION" => "", "GROUP_ID" => $SocNetGroupID, "ENABLE_IMG_VERIF" => 'Y', "EMAIL_NOTIFY" => 'Y', "ENABLE_RSS" => "Y", "ALLOW_HTML" => "Y", "URL" => $IdeaBlogUrl, "ACTIVE" => "Y", "=DATE_CREATE" => $DB->GetNowFunction(), "=DATE_UPDATE" => $DB->GetNowFunction(), "SOCNET_GROUP_ID" => 1, "PERMS_POST" => array("1" => BLOG_PERMS_READ, "2" => BLOG_PERMS_WRITE), "PERMS_COMMENT" => array("1" => BLOG_PERMS_WRITE, "2" => BLOG_PERMS_WRITE), "PATH" => '/services/idea/'));
//UF
$arUFIdByName = array();
$arStatusList = CIdeaManagment::getInstance()->GetStatusList();
foreach ($arStatusList as $UF) {
    $arUFIdByName[$UF["XML_ID"]] = $UF["ID"];
}
//Categories
$categoryID = array();
$categoryID[0][] = CBlogCategory::Add(array("BLOG_ID" => $blogID, "NAME" => GetMessage("IDEA_BLOG_DEMO_CATEGORY_1")));
$categoryID[0][] = CBlogCategory::Add(array("BLOG_ID" => $blogID, "NAME" => GetMessage("IDEA_BLOG_DEMO_CATEGORY_2")));
$categoryID[1][] = CBlogCategory::Add(array("BLOG_ID" => $blogID, "NAME" => GetMessage("IDEA_BLOG_DEMO_CATEGORY_3")));
//Post messages
$arBlogPostFields = array();
$arBlogPostFields[] = array("TITLE" => GetMessage("IDEA_BLOG_DEMO_MESSAGE_TITLE_1"), "DETAIL_TEXT" => GetMessage("IDEA_BLOG_DEMO_MESSAGE_BODY_1"), "DETAIL_TEXT_TYPE" => "text", "BLOG_ID" => $blogID, "AUTHOR_ID" => 1, "=DATE_CREATE" => $DB->GetNowFunction(), "=DATE_PUBLISH" => $DB->GetNowFunction(), "PUBLISH_STATUS" => BLOG_PUBLISH_STATUS_PUBLISH, "ENABLE_TRACKBACK" => 'N', "ENABLE_COMMENTS" => 'Y', "CATEGORY_ID" => implode(",", $categoryID[0]), "UF_CATEGORY_CODE" => ToUpper(GetMessage("IDEA_UF_CATEGORY_CODE_1")), "UF_STATUS" => $arUFIdByName["COMPLETED"], "PERMS_POST" => array(1 => BLOG_PERMS_READ, 2 => BLOG_PERMS_READ), "PERMS_COMMENT" => array(1 => BLOG_PERMS_WRITE, 2 => BLOG_PERMS_WRITE), "PATH" => '/services/idea/#post_id#/', "CODE" => "company_new_year_2012");
$arBlogPostFields[] = array("TITLE" => GetMessage("IDEA_BLOG_DEMO_MESSAGE_TITLE_2"), "DETAIL_TEXT" => GetMessage("IDEA_BLOG_DEMO_MESSAGE_BODY_2"), "DETAIL_TEXT_TYPE" => "text", "BLOG_ID" => $blogID, "AUTHOR_ID" => 1, "=DATE_CREATE" => $DB->GetNowFunction(), "=DATE_PUBLISH" => $DB->GetNowFunction(), "PUBLISH_STATUS" => BLOG_PUBLISH_STATUS_PUBLISH, "ENABLE_TRACKBACK" => 'N', "ENABLE_COMMENTS" => 'Y', "CATEGORY_ID" => implode(",", $categoryID[1]), "UF_CATEGORY_CODE" => ToUpper(GetMessage("IDEA_UF_CATEGORY_CODE_2")), "UF_STATUS" => $arUFIdByName["NEW"], "PERMS_POST" => array(1 => BLOG_PERMS_READ, 2 => BLOG_PERMS_READ), "PERMS_COMMENT" => array(1 => BLOG_PERMS_WRITE, 2 => BLOG_PERMS_WRITE), "PATH" => '/services/idea/#post_id#/', "CODE" => "new_workers");
$arBlogPostId = array();
foreach ($arBlogPostFields as $BlogPostFields) {
    $arBlogPostId[] = CBlogPost::Add($BlogPostFields);
}
foreach ($arBlogPostId as $key => $BlogPostId) {
    if (!is_array($categoryID[$key])) {
        continue;
    }
    foreach ($categoryID[$key] as $v) {
        CBlogPostCategory::Add(array("BLOG_ID" => $blogID, "POST_ID" => $BlogPostId, "CATEGORY_ID" => $v));
    }
Beispiel #5
0
         } else {
             if ($ex = $APPLICATION->GetException()) {
                 $strError = $ex->GetString() . "<br>";
             }
             echo ShowError($strError);
         }
     }
     print $image_form;
     die;
 }
 //////////////////////////////// дальше пойдёт работа с постом
 if (($_POST['apply'] || $_POST['save']) && check_bitrix_sessid()) {
     $TRACKBACK = trim($_POST['TRACKBACK']);
     InitBVar($_POST['ENABLE_TRACKBACK']);
     if ($_POST['CATEGORY_ID'] == 'ADD') {
         $CATEGORY_ID = CBlogCategory::Add(array("BLOG_ID" => $BLOG_ID, "NAME" => $_POST['NEW_CATEGORY']));
         BXClearCache(True, "/" . SITE_ID . "/blog/" . $arBlog['URL'] . "/category/");
     } else {
         $CATEGORY_ID = intval($_POST['CATEGORY_ID']);
     }
     if (strlen($_POST['DATE_PUBLISH']) == 0) {
         $DATE_PUBLISH = ConvertTimeStamp(time(), "FULL");
     } else {
         $DATE_PUBLISH = $_POST['DATE_PUBLISH'];
     }
     $arFields = array('TITLE' => $_POST['POST_TITLE'], 'DETAIL_TEXT' => $_POST['POST_MESSAGE'], 'DATE_PUBLISH' => $DATE_PUBLISH, 'PUBLISH_STATUS' => $_POST['PUBLISH_STATUS'], 'ENABLE_TRACKBACK' => $_POST['ENABLE_TRACKBACK'], 'CATEGORY_ID' => $CATEGORY_ID);
     if ($_POST['blog_perms'] == 1) {
         if ($_POST['perms_p'][1] > BLOG_PERMS_READ) {
             $_POST['perms_p'][1] = BLOG_PERMS_READ;
         }
         if ($_POST['perms_c'][1] > BLOG_PERMS_READ) {
Beispiel #6
0
 private function InstallBlogPost()
 {
     global $DB, $USER;
     $arBlogMessages = $this->arResult["INSTALLATION"]["BLOG_POST_ID"] = array();
     //1
     $CATEGORY_ID = array();
     $CATEGORY_ID[] = CBlogCategory::Add(array("BLOG_ID" => $this->arResult["INSTALLATION"]["BLOG_ID"], "NAME" => GetMessage("IDEA_BLOG_TAG_TITLE_1")));
     $CATEGORY_ID[] = CBlogCategory::Add(array("BLOG_ID" => $this->arResult["INSTALLATION"]["BLOG_ID"], "NAME" => GetMessage("IDEA_BLOG_TAG_TITLE_2")));
     $arBlogMessages["NY"] = array("TITLE" => GetMessage("IDEA_BLOG_MESSAGE_TITLE_1"), "DETAIL_TEXT" => GetMessage("IDEA_BLOG_MESSAGE_DESCRIPTION_1"), "DETAIL_TEXT_TYPE" => "text", "=DATE_CREATE" => $DB->GetNowFunction(), "DATE_PUBLISH" => ConvertTimeStamp(false, "FULL"), "PUBLISH_STATUS" => "P", "ENABLE_TRACKBACK" => "N", "ENABLE_COMMENTS" => "Y", "CATEGORY_ID" => join(',', $CATEGORY_ID), "CODE" => "company_new_year_2012", "UF_CATEGORY_CODE" => "OUR_EVENTS", "UF_STATUS" => $this->arResult["SETTINGS"]["STATUS_ID"]["COMPLETED"], "AUTHOR_ID" => $USER->GetID(), "BLOG_ID" => $this->arResult["INSTALLATION"]["BLOG_ID"], "PREVIEW_TEXT_TYPE" => "text", "PATH" => $this->PublicDir . '#post_id#/', "PERMS_POST" => array("1" => BLOG_PERMS_READ, "2" => BLOG_PERMS_WRITE), "PERMS_COMMENT" => array("1" => BLOG_PERMS_WRITE, "2" => BLOG_PERMS_WRITE));
     //2
     $CATEGORY_ID = array();
     $CATEGORY_ID[] = CBlogCategory::Add(array("BLOG_ID" => $this->arResult["INSTALLATION"]["BLOG_ID"], "NAME" => GetMessage("IDEA_BLOG_TAG_TITLE_3")));
     $arBlogMessages["WORKERS"] = array("TITLE" => GetMessage("IDEA_BLOG_MESSAGE_TITLE_2"), "DETAIL_TEXT" => GetMessage("IDEA_BLOG_MESSAGE_DESCRIPTION_2"), "DETAIL_TEXT_TYPE" => "text", "=DATE_CREATE" => $DB->GetNowFunction(), "DATE_PUBLISH" => ConvertTimeStamp(false, "FULL"), "PUBLISH_STATUS" => "P", "ENABLE_TRACKBACK" => "N", "ENABLE_COMMENTS" => "Y", "CATEGORY_ID" => join(',', $CATEGORY_ID), "CODE" => "new_workers", "UF_CATEGORY_CODE" => "OUTSIDE", "UF_STATUS" => $this->arResult["SETTINGS"]["STATUS_ID"]["NEW"], "AUTHOR_ID" => $USER->GetID(), "BLOG_ID" => $this->arResult["INSTALLATION"]["BLOG_ID"], "PREVIEW_TEXT_TYPE" => "text", "PATH" => $this->PublicDir . '#post_id#/', "PERMS_POST" => array("1" => BLOG_PERMS_READ, "2" => BLOG_PERMS_WRITE), "PERMS_COMMENT" => array("1" => BLOG_PERMS_WRITE, "2" => BLOG_PERMS_WRITE));
     foreach ($arBlogMessages as $key => $BlogMessage) {
         if ($this->arResult["INSTALLATION"]["BLOG_POST_ID"][$key] = CBlogPost::Add($BlogMessage)) {
             $arPostCategory = explode(',', $BlogMessage["CATEGORY_ID"]);
             foreach ($arPostCategory as $CatId) {
                 CBlogPostCategory::Add(array("POST_ID" => $this->arResult["INSTALLATION"]["BLOG_POST_ID"][$key], "BLOG_ID" => $this->arResult["INSTALLATION"]["BLOG_ID"], "CATEGORY_ID" => $CatId));
             }
         }
     }
 }
     }
     $tags = explode(",", $_POST["TAGS"]);
     foreach ($tags as $tg) {
         $tg = trim($tg);
         if (!in_array($arCatBlog[ToLower($tg)], $CATEGORYtmp) && strlen($tg) > 0) {
             if (IntVal($arCatBlog[ToLower($tg)]) > 0) {
                 $CATEGORYtmp[] = $arCatBlog[ToLower($tg)];
             } else {
                 $CATEGORYtmp[] = CBlogCategory::Add(array("BLOG_ID" => $arBlog["ID"], "NAME" => $tg));
             }
         }
     }
 } elseif (!empty($_POST["CATEGORY_ID"])) {
     foreach ($_POST["CATEGORY_ID"] as $v) {
         if (substr($v, 0, 4) == "new_") {
             $CATEGORYtmp[] = CBlogCategory::Add(array("BLOG_ID" => $arBlog["ID"], "NAME" => substr($v, 4)));
             if ($arResult["bGroupMode"] && $arGroupSites) {
                 $arSites = $arGroupSites;
             } else {
                 $arSites = array(SITE_ID);
             }
         } else {
             $CATEGORYtmp[] = $v;
         }
     }
 } else {
     $CATEGORY_ID = "";
 }
 $CATEGORY_ID = implode(",", $CATEGORYtmp);
 $DATE_PUBLISH = "";
 if (strlen($_POST["DATE_PUBLISH_DEF"]) > 0) {
Beispiel #8
0
 function AddComment_Review_CreateRoot_Blog($arElement, $blogID)
 {
     if (!CModule::IncludeModule("blog")) {
         return false;
     }
     $arBlog = CBlog::GetByID($blogID);
     $arElement["DETAIL_PICTURE"] = CFile::GetFileArray($arElement["DETAIL_PICTURE"]);
     $arElement["REAL_PICTURE"] = CFile::GetFileArray($arElement["PROPERTY_REAL_PICTURE_VALUE"]);
     if (!empty($arElement["TAGS"])) {
         $arCategoryVal = explode(",", $arElement["TAGS"]);
         foreach ($arCategoryVal as $k => $v) {
             if ($id = CBlogCategory::Add(array("BLOG_ID" => $arBlog["ID"], "NAME" => $v))) {
                 $arCategory[] = $id;
             }
         }
     }
     $arFields = array("TITLE" => $arElement["NAME"], "DETAIL_TEXT" => "[IMG]http://" . $_SERVER['HTTP_HOST'] . $arElement["DETAIL_PICTURE"]["SRC"] . "[/IMG]\n" . "[URL=http://" . $_SERVER['HTTP_HOST'] . $arElement["~DETAIL_PAGE_URL"] . "]" . $arElement["NAME"] . "[/URL]\n" . (!empty($arElement["TAGS"]) ? $arElement["TAGS"] . "\n" : "") . $arElement["~DETAIL_TEXT"] . "\n" . "[URL=http://" . $_SERVER['HTTP_HOST'] . $arElement["REAL_PICTURE"]["SRC"] . "]" . GetMessage("P_ORIGINAL") . "[/URL]", "CATEGORY_ID" => implode(",", $arCategory), "PUBLISH_STATUS" => "P", "PERMS_POST" => array(), "PERMS_COMMENT" => array(), "=DATE_CREATE" => $GLOBALS["DB"]->GetNowFunction(), "=DATE_PUBLISH" => $GLOBALS["DB"]->GetNowFunction(), "AUTHOR_ID" => !empty($arElement["CREATED_BY"]) ? $arElement["CREATED_BY"] : 1, "BLOG_ID" => $arBlog["ID"], "ENABLE_TRACKBACK" => "N");
     $POST_ID = CBlogPost::Add($arFields);
     return $POST_ID;
 }
Beispiel #9
0
         $arRep[] = "[IMG ID=" . $imgID . "]";
     }
 }
 if (!empty($arRep)) {
     $arCopyPostUpdate["DETAIL_TEXT"] = str_replace($arPat, $arRep, $arCopyPost["DETAIL_TEXT"]);
 }
 //tags
 $arCopyCat = array();
 $dbCategory = CBlogCategory::GetList(array(), array("BLOG_ID" => $arCopyBlog["ID"]));
 while ($arCategory = $dbCategory->Fetch()) {
     $arCatBlogCopy[ToLower($arCategory["NAME"])] = $arCategory["ID"];
 }
 $dbCat = CBlogPostCategory::GetList(array("NAME" => "ASC"), array("BLOG_ID" => $arBlog["ID"], "POST_ID" => $arParams["ID"]));
 while ($arCat = $dbCat->Fetch()) {
     if (empty($arCatBlogCopy[ToLower($arCat["NAME"])])) {
         $v = CBlogCategory::Add(array("BLOG_ID" => $arCopyBlog["ID"], "NAME" => $arCat["NAME"]));
     } else {
         $v = $arCatBlogCopy[ToLower($arCat["NAME"])];
     }
     CBlogPostCategory::Add(array("BLOG_ID" => $arCopyBlog["ID"], "POST_ID" => $copyID, "CATEGORY_ID" => $v));
     $arCopyCat[] = $v;
 }
 if (!empty($arCopyCat)) {
     $arCopyPostUpdate["CATEGORY_ID"] = implode(",", $arCopyCat);
 }
 if ($_POST["move2blogcopy"] == "Y") {
     $arCopyPostUpdate["NUM_COMMENTS"] = 0;
 }
 if (!empty($arCopyPostUpdate)) {
     $copyID = CBlogPost::Update($copyID, $arCopyPostUpdate);
     $arCopyPost = CBlogPost::GetByID($copyID);
Beispiel #10
0
 if ($blogID <= 0 || !empty($res)) {
     continue;
 }
 CBlog::AddSocnetRead($blogID);
 $arUsers[$key]["BLOG_ID"] = $blogID;
 $categoryID = array();
 foreach ($arUser["POSTS"] as $k => $arPost) {
     $arComments = $arPost["COMMENTS"];
     unset($arPost["COMMENTS"]);
     // CATEGORY
     $category = explode(", ", $arPost["CATEGORY_ID"]);
     $category = array_unique($category);
     $iCategory = array();
     foreach ($category as $sCategoryValue) {
         if (empty($categoryID[$sCategoryValue])) {
             $categoryID[$sCategoryValue] = CBlogCategory::Add(array("BLOG_ID" => $blogID, "NAME" => $sCategoryValue));
         }
         $iCategory[] = $categoryID[$sCategoryValue];
     }
     // IMAGES
     $arImagesToUpdate = array();
     if (preg_match_all("/\\[IMG\\sID\\=\\#([a-z0-9\\_\\.]+)\\#\\]/is", $arPost["DETAIL_TEXT"], $arMatches)) {
         $image_replacement = array();
         foreach ($arMatches[1] as $key_match => $file) {
             if (empty($arImages[$file])) {
                 continue;
             }
             $arImageFields = array("BLOG_ID" => $blogID, "POST_ID" => 0, "USER_ID" => $arUser["ID"], "=TIMESTAMP_X" => $DB->GetNowFunction(), "TITLE" => $file, "IMAGE_SIZE" => $arImages[$file]["size"], "FILE_ID" => $arImages[$file] + array("MODULE_ID" => "blog", "del" => "Y"));
             $image_replacement[$key_match] = "";
             if ($imgID = CBlogImage::Add($arImageFields)) {
                 $image_replacement[$key_match] = "[IMG ID=" . $imgID . "]";