Требуется разработчик! Поддержка серверов

CIdeaManagmentSonetNotify::CallBack_AddComment: метод Битрикс

Постоянная ссылка: http://bxapi.ru/src/?id=165389

<?php 
//    CIdeaManagmentSonetNotify::CallBack_AddComment()
//    /bitrix/modules/idea/classes/general/idea_sonet_notify.php:53

    
public static function CallBack_AddComment($arFields)
    {
        if(!
CModule::IncludeModule('blog'))
            return 
false;

        
$arResult = array();

        
$arLog CSocNetLog::GetList(
                array(
"ID" => "DESC"),
                array(
"TMP_ID" => $arFields["LOG_ID"]),
                
false,
                
false,
                array(
"ID""SOURCE_ID""SITE_ID""RATING_ENTITY_ID")
        )->
Fetch();

        if(
$arLog)
        {
            
$arIdeaPost CBlogPost::GetById($arLog["SOURCE_ID"]);
            if(
$arIdeaPost)
            {
                
$UserIP CBlogUser::GetUserIP();
                
$arBlogCommentFields = array(
                    
"BLOG_ID" => $arIdeaPost["BLOG_ID"],
                    
"POST_ID" => $arIdeaPost["ID"],
                    
"AUTHOR_ID" => $arFields["USER_ID"],
                    
"POST_TEXT" => $arFields["TEXT_MESSAGE"],
                    
"DATE_CREATE" => ConvertTimeStamp(time()+CTimeZone::GetOffset(), "FULL"),
                    
"PARENT_ID" => false,
                    
"AUTHOR_IP" => $UserIP[0],
                    
"AUTHOR_IP1" => $UserIP[1],
                );

                if (
                    isset(
$arFields["UF_SONET_COM_DOC"])
                    && 
is_array($arFields["UF_SONET_COM_DOC"])
                )
                {
                    
$arBlogCommentFields["UF_BLOG_COMMENT_FILE"] = $arFields["UF_SONET_COM_DOC"];
                }

                
$IdeaCommentId CBlogComment::Add($arBlogCommentFields);

                
$arResult = array(
                    
"SOURCE_ID" => $IdeaCommentId,
                );
                if(
$arLog["RATING_ENTITY_ID"]>0)
                {
                    
$arResult["RATING_TYPE_ID"] = "BLOG_COMMENT";
                    
$arResult["RATING_ENTITY_ID"] = $IdeaCommentId;
                }

                if(
intval($IdeaCommentId)==0)
                {
                    global 
$APPLICATION;
                    if(
$ex $APPLICATION->GetException())
                        
$arResult["ERROR"] = $ex->GetString();
                }
                else
                {
                    
//clear cache on succcess
                    
BXClearCache(True"/".SITE_ID."/idea/".$arIdeaPost["BLOG_ID"]."/first_page/");
                    
BXClearCache(True"/".SITE_ID."/idea/".$arIdeaPost["BLOG_ID"]."/pages/");
                    
BXClearCache(True"/".SITE_ID."/idea/".$arIdeaPost["BLOG_ID"]."/comment/".$arIdeaPost["ID"]."/");
                    
BXClearCache(True"/".SITE_ID."/idea/".$arIdeaPost["BLOG_ID"]."/post/".$arIdeaPost["ID"]."/");
                }
            }
        }

        return 
$arResult;
    }

Блог разработчика

9 августа 2016 ResizeImageGet и простой водяной знак налету

Сегодня поговорим о том как проще всего воткнуть водяной знак на картинки в Битрикс. Например, на все изображения каталога.

21 июля 2016 Добавление вкладки в CRM коробки Битрикс24

В этом посте я покажу, как легко и просто добавить вкладку в сущность CRM. И не просто добавить, а вывести там свой контент.

21 июля 2016 Как просто обращаться из коробки Битрикс24 на сайт на базе Битрикс

К примеру вам хочется внутренним скриптом дернуть с сайта-магазина информацию, которая там, в свою очередь, закрыта некоторыми правами. Например, админскими. Можно конечно мутить свой REST, или иной формат общения, но проще всего воспользоваться штатным инструментом:

Текст сообщения*
Загрузить изображение