- Модуль: socialnetwork
- Путь к файлу: ~/bitrix/modules/socialnetwork/classes/general/log_tools_photo.php
- Класс: CSocNetPhotoCommentEvent
- Вызов: CSocNetPhotoCommentEvent::AddComment_Photo_Blog
static function AddComment_Photo_Blog($arFields, $BLOG_ID, $arLog)
{
global $USER;
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($USER->IsAuthorized())
$arFieldsComment["AUTHOR_ID"] = $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)
);
}