public static function AddComment_Photo_Blog($arFields, $BLOG_ID, $arLog) { if (!CModule::IncludeModule("blog")) { return false; } if (!CModule::IncludeModule("iblock")) { return false; } $arElement = false; $arFilter = array("ID" => $arLog["SOURCE_ID"]); $arSelectedFields = array("IBLOCK_ID", "ID", "NAME", "TAGS", "CODE", "IBLOCK_SECTION_ID", "DETAIL_PAGE_URL", "CREATED_BY", "PREVIEW_PICTURE", "PREVIEW_TEXT", "PROPERTY_BLOG_POST_ID", "PROPERTY_BLOG_COMMENT_CNT", "PROPERTY_REAL_PICTURE"); $db_res = CIBlockElement::GetList(array(), $arFilter, false, false, $arSelectedFields); if ($db_res && ($res = $db_res->GetNext())) { $arElement = $res; } if ($arElement) { // check iblock properties $ELEMENT_BLOG_POST_ID = CSocNetLogTools::AddComment_Review_CheckIBlock_Blog($arElement); if ($ELEMENT_BLOG_POST_ID <= 0) { // Add Post $POST_ID = CSocNetLogTools::AddComment_Review_CreateRoot_Blog($arElement, $BLOG_ID); $bNewPost = true; } else { $POST_ID = $ELEMENT_BLOG_POST_ID; } if (intval($POST_ID) > 0) { // Add comment $commentID = false; $UserIP = CBlogUser::GetUserIP(); $arFieldsComment = array("POST_ID" => $POST_ID, "BLOG_ID" => $BLOG_ID, "POST_TEXT" => trim($arFields["TEXT_MESSAGE"]), "DATE_CREATE" => ConvertTimeStamp(time() + CTimeZone::GetOffset(), "FULL"), "AUTHOR_IP" => $UserIP[0], "AUTHOR_IP1" => $UserIP[1], "PARENT_ID" => false); if ($GLOBALS["USER"]->IsAuthorized()) { $arFieldsComment["AUTHOR_ID"] = $GLOBALS["USER"]->GetID(); } $commentID = CBlogComment::Add($arFieldsComment); if (!$commentID) { $strError = GetMessage("SONET_ADD_COMMENT_SOURCE_ERROR"); } else { CSocNetLogTools::AddComment_Review_UpdateElement_Blog($arElement, $POST_ID, $BLOG_ID, $bNewPost); } } else { $strError = GetMessage("SONET_ADD_COMMENT_SOURCE_ERROR"); } } else { $strError = GetMessage("SONET_ADD_COMMENT_SOURCE_ERROR"); } return array("SOURCE_ID" => $commentID, "RATING_TYPE_ID" => "BLOG_COMMENT", "RATING_ENTITY_ID" => $commentID, "ERROR" => $strError, "NOTES" => "", "IM_MESSAGE" => $arFieldsComment ? $arFieldsComment["POST_TEXT"] : false); }