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

CSecurityRedirect::ReplaceHREF: метод Битрикс

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

//    CSecurityRedirect::ReplaceHREF()
//    /bitrix/modules/security/classes/general/redirect.php:250

    protected static function ReplaceHREF($matches)
    {
        static $arUrls = false;
        static $sid = false;
        static $strDomains = false;

        if(!$arUrls)
        {
            $arUrls = self::GetUrls();
            $sid = COption::GetOptionString("security", "redirect_sid").$_SERVER["REMOTE_ADDR"];
            $arDomains = self::GetDomains();
            foreach($arDomains as $i => $domain)
                $arDomains[$i] = preg_quote($domain, "/");
            $strDomains = "/.*(".implode("|", $arDomains).")$/";
        }

        foreach($arUrls as $arUrl)
        {
            if(preg_match("/^(http(?:s){0,1}\\:\\/\\/(?:[a-zA-Z0-9\\.-])+){0,1}".preg_quote($arUrl["URL"], "/")."?.*?".preg_quote($arUrl["PARAMETER_NAME"], "/")."=(http|https|ftp)(:|%3A|%3A)(\\/\\/|%2F%2F|%2F%2F)([^&]+)/im", $matches[3], $match))
            {
                if(strlen($match[1]) <= 0 || preg_match($strDomains, $match[1]))
                {
                    $goto = $match[2].$match[3].$match[4].$match[5];
                    $goto = str_replace(
                        array("&#37;", "%3A", "%2F"),
                        array("%", ":", "/"),
                    $goto);

                    return $matches[1].$matches[2].$matches[3]."&amp;af=".urlencode(md5($sid.":".urldecode($goto))).$matches[4];
                }
            }
        }
        return $matches[0];
    }
';

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

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

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

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

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

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

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

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