Сообщения

jQuery UI: Сборка из исходников

Изображение
ВведениеНедавно понадобилось поставить только виджет datepicker из набора jQuery UI. Ранее для этого требовалось зайти на официальный сайт, выбрать галочками нужное и скачать итоговый пакет. Сейчас же сайт отдаёт ошибку 502: Я даже подумал, что проект забросили и больше не поддерживают библиотеку. Но выход нашёлся. Если внимательно посмотреть сайт, то можно найти ссылку на репозиторий github. Там есть недавние коммиты - значит проект жив.Сборка из исходников
Клонируем себе проект:git clone https://github.com/jquery/jquery-ui.gitДалее перерыл сайт для разработчиков, искал в интернете, на их же github - как можно собрать из исходников именно то, что нужно (как это делается на сайте в Download Builder), а не весь гигантский набор виджетов и эффектов jQuery UI. Нигде ничего не нашёл, кроме указания верного пути в Stack Owerflow.Переходим в каталог исходников и устанавливаем зависимости для сборки:cd jquery-ui/ npm install sudo apt install node-grunt-cliМеняем файл сборки Gruntfile.js, что…

Битрикс: своя геолокация

Не так давно (с 17 версии) в битриксе появилась штатная возможность управления геолокацией. Это когда нужно определить географическое положение клиента (по его IP адресу). Например, чтобы переключить интерфейс сайта на нужный язык или показать цены товаров для нужного региона. Так вот битрикс дал не только возможность пользоваться тем что есть, но и возможность прикрутить к этому функционалу собственные обработчики. Кому и зачем могут понадобиться собственные обработчики геолокации? Да всё просто - всем, кому вообще нужна геолокация. Дело в том, что провайдеры геоданных, как показывает практика, долго не живут. Одни закрываются, другие появляются. И так постоянно. Конечно, битрикс не сможет оперативно предлагать новые и новые сервисы в своей поставке. Хотя сейчас из коробки доступны самые популярные сервисы геоданных на данный момент. Есть даже заметка в официальной документации на эту тему. Но, конечно, гораздо подробнее тема раскрывается в неофициальных источниках.
Принцип работы Теку…

Битрикс: два способа отправить файл

Изображение
В битриксе с некоторых пор есть встроенный функционал для работы HTTP запросами. Т.е. не обязательно напрямую дёргать curl или привлекать какой-нибудь Guzzle. Плюс это или минус - оставлю решать каждому самостоятельно. Тут покажу два варианта, как можно отправить файл встроенным битриксовым методом. Это нужно, например, при интеграции с каким-то API. Примеров не нашлось ни в официальной документации, ни в полезном разжёвывании.
Вариант в теле запроса через send() Тут надо обратить внимание на заголовок: тип "multipart/form-data"; наличие вложения в виде файла "Content-Disposition". Сам файл отправляем в теле запроса через вызов содержимого файла $file->getContents().
$result = []; // Проверяем существование файла на сервере $file = new \Bitrix\Main\IO\File(     \Bitrix\Main\Application::getDocumentRoot() . '/upload/file.zip' ); if ($file->isExists()) {     $httpClient = new HttpClient(         [             'redirect'               => true…