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

Action::executeAction: метод Битрикс

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

//    Bitrix\Mobile\Action::executeAction()
//    /bitrix/modules/mobile/lib/action.php:28

    public function executeAction($name, $params = [])
    {

        global $USER;

        $actionDesc = $this->getAction($name);

        if ($actionDesc)
        {

            $isSessidValid = true;
            if ($actionDesc["needBitrixSessid"] == true || (array_key_exists("sessid", $_REQUEST) && strlen($_REQUEST["sessid"]) > 0))
            {
                $isSessidValid = check_bitrix_sessid();
            }

            if (!isset($actionDesc["fireInitMobileEvent"]) || $actionDesc["fireInitMobileEvent"] != true)
            {
                if (!defined("MOBILE_INIT_EVENT_SKIP"))
                {
                    define("MOBILE_INIT_EVENT_SKIP", true);
                }
            }

            if ($actionDesc["no_check_auth"] !== true && (!$USER->IsAuthorized() || !$isSessidValid))
            {
                Auth::setNotAuthorizedHeaders();
                echo json_encode(Auth::getNotAuthorizedResponse());
            }
            elseif ($actionDesc["file"])
            {
                header("BX-Mobile-Action: " . $name);
                if ($actionDesc["json"] === true)
                {
                    header("Content-Type: application/x-javascript");
                    $data = include($actionDesc["file"]);
                    if ($data)
                    {
                        if ($actionDesc["removeNulls"])
                        {
                            echo json_encode(self::removeNulls($data));
                        }
                        else
                        {
                            echo json_encode($data);
                        }
                    }

                }
                else
                {
                    include($actionDesc["file"]);
                }
            }
        }
        else
        {
            if (!defined("MOBILE_INIT_EVENT_SKIP"))
            {
                define("MOBILE_INIT_EVENT_SKIP", true);
            }

            header("Content-Type: application/x-javascript");
            echo json_encode(["error" => "unknown action for data request"]);
        }
    }

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

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

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

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

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

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

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

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