Поддержка серверов

CIMMessageParamAttach::AddGrid: метод Битрикс

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

<?php 
//    /bitrix/modules/im/classes/general/im_message_param.phpCIMMessageParamAttach::AddGrid()
//    935:

    
public function AddGrid($params)
    {
        
$add = Array();

        foreach (
$params as $grid)
        {
            
$result = Array();

            if (
$grid['DISPLAY'] != 'LINE')
            {
                if (
                    !isset(
$grid['NAME']) && !isset($grid['VALUE'])
                    || 
strlen(trim($grid['NAME'])) <= && strlen(trim($grid['VALUE'])) <= 0
                
)
                {
                    continue;
                }
            }

            if (isset(
$grid['DISPLAY']) && in_array($grid['DISPLAY'], Array('BLOCK''LINE''CARD''ROW''COLUMN''TABLE')))
            {
                if (
$grid['DISPLAY'] == 'COLUMN')
                {
                    
$grid['DISPLAY'] = 'ROW';
                }
                if (
$grid['DISPLAY'] == 'CARD')
                {
                    
$grid['DISPLAY'] = 'LINE';
                }
                
$result['DISPLAY'] = $grid['DISPLAY'];
            }
            else
            {
                
$result['DISPLAY'] = 'BLOCK';
            }

            
$result['NAME'] = htmlspecialcharsbx(trim($grid['NAME']));

            
$result['VALUE'] = htmlspecialcharsbx(str_replace(Array('<br>''<br/>''<br />'), '#BR#'trim($grid['VALUE'])));

            if (
preg_match('/^#([a-fA-F0-9]){3}(([a-fA-F0-9]){3})?\b$/D'$grid['COLOR']))
            {
                
$result['COLOR'] = $grid['COLOR'];
            }
            if (isset(
$grid['WIDTH']) && intval($grid['WIDTH']) > 0)
            {
                
$result['WIDTH'] = intval($grid['WIDTH']);
            }
            if (isset(
$grid['HEIGHT']) && intval($grid['HEIGHT']) > 0)
            {
                
$result['HEIGHT'] = intval($grid['HEIGHT']);
            }
            if (isset(
$grid['USER_ID']) && intval($grid['USER_ID']) > 0)
            {
                
$result['USER_ID'] = intval($grid['USER_ID']);
            }
            if (isset(
$grid['CHAT_ID']) && intval($grid['CHAT_ID']) > 0)
            {
                
$result['CHAT_ID'] = intval($grid['CHAT_ID']);
            }
            if (isset(
$grid['LINK']) && preg_match('#^(?:/|https?://)#'$grid['LINK']))
            {
                
$result['LINK'] = htmlspecialcharsbx($grid['LINK']);
            }

            
$add[] = $result;
        }
        if (empty(
$add))
            return 
false;

        
$this->result['BLOCKS'][]['GRID'] = $add;

        return 
true;
    }

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

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

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

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

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

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

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

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