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

CCrmCallToUrl::PrepareLinkAttributes: метод Битрикс

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

//    CCrmCallToUrl::PrepareLinkAttributes()
//    /bitrix/modules/crm/classes/general/crm_url_util.php:238

    public static function PrepareLinkAttributes($value, $params = array())
    {
        $value = self::NormalizeNumberIfRequired($value);
        $format = self::GetFormat(self::Bitrix);

        if($format === self::Bitrix)
        {
            $paramsString = '';
            if (is_array($params) && count($params) > 0)
            {
                $paramsString = ', '.\Bitrix\Main\Web\Json::encode($params);
            }
            return array(
                'HREF' => "callto://{$value}",
                'ONCLICK' => "if(typeof(top.BXIM) !== 'undefined') { top.BXIM.phoneTo('{$value}'".$paramsString."); return BX.PreventDefault(event); }"
            );
        }

        if($format !== self::Custom )
        {
            return array(
                'HREF' => $format === self::Slashless ? "callto:{$value}" : "callto://{$value}",
                'ONCLICK' => ''
            );
        }

        if(!self::$URL_TEMPLATE || !self::$CLICK_HANDLER)
        {
            $settings = self::GetCustomSettings();

            self::$URL_TEMPLATE = new CCrmUrlTemplate();
            self::$URL_TEMPLATE->SetTemplate(isset($settings['URL_TEMPLATE']) ? $settings['URL_TEMPLATE'] : 'callto:[phone]');

            self::$CLICK_HANDLER = new CCrmUrlTemplate();
            self::$CLICK_HANDLER->SetTemplate(isset($settings['CLICK_HANDLER']) ? $settings['CLICK_HANDLER'] : '');
        }

        $templateParams = array('PHONE' => $value);
        return array(
            'HREF' => self::$URL_TEMPLATE->Build($templateParams),
            'ONCLICK' => self::$CLICK_HANDLER->Build($templateParams)
        );
    }

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

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

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

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

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

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

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

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