/var/log/life.log
Блог программиста из солнечной Бурятии

nginx+brotli

От чего-то в инструкциях по сборке модуля brotli для nginx не пишут, что нужно конфигурировать с теми же параметрами, что и собран nginx. Которые в nginx -V выводится. А то легко получить ошибку
nginx: [emerg] module “/usr/share/nginx/modules/ngx_http_brotli_filter_module.so” is not binary compatible

Передача произвольных данных в metadata модуля vampirus.yandexkassa

  1. переименовать папку bitrix/php_interface/include/sale_payment/yandexcheckoutvs например на yandexcheckoutex
  2. Изменить содержимое bitrix/php_interface/include/sale_payment/yandexcheckoutex/handler.php на
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?
    namespace Sale\Handlers\PaySystem;
    use Bitrix\Main\Request;
    use Bitrix\Sale\Payment;

    require($_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/vampirus.yandexkassa/payment/yandexcheckoutvs/handler.php");

    class YandexCheckoutExHandler extends YandexCheckoutVSHandler
    {
        protected function getMetadata(Payment $payment, Request $request, $query)
        {
            return ['key' =>'value'];
        }
    }

    Метод getMetadata должен вернуть массив, который будет добавлен в metadata и передан в яндекс

  3. Добавить платежную систему выбрав новый обработчик  Платежная система яндекс касса

Удаление image.php в opencart

Если на сайте присутствуют файлы image.php и admin/image.php, и они заново создаются при их удалении, то нужно проверить список модификаторов на предмет подозрительных, удалить если есть. А затем очистить кеш. После этого можно удалять эти файлы и менять пароли на сайте.

Поиск по файлам в windows

Когда заменил HDD на SSD это была сказка при поиске по файлам, результат практически моментальный. Но со временем заметил, что всё уже не так быстро, как раньше. Как оказалось – виноват “Защитник Windows”. Да и в остальных случаях тормозов виноват в основном тоже он. Достаточно было добавить расширения файлов в исключения и поиск стал опять быстрым.

Минусы модуль кассы

  • Виснет
  • Что-бы передавать чеки с разной СНО, нужно велосипед придумывать
  • Нельзя напечатать чек коррекции
  • Достучатся до технического специалиста, тот ещё квест
  • Не отдаётся информация по СНО в чеке

Опять ПДФ

У DPD есть накладная и там есть штрихкод с её номером, но использовать его не получится, т.к. он только там и больше нигде по API не отдаётся. Пришлось выдергивать номер накладной из самой пдф, чтобы связать с заказом.

1
pdftotext -x 400 -y 50 -W 50 -H 6 -l 1 -nopgbrk dpd.pdf out.txt &amp;&amp; cat out.txt

Загрузка модели каталога из админского контроллера в opencart

На самом деле такое сделать без грязных хаков нельзя. Но можно пойти другим путём. Эта необходимость возникает, если нет желания дублировать и поддерживать код, который должен и с админской стороны и с фронтэнда отрабатывать. В opencart же загрузка моделей зависит от контекста, в котором происходит исполнение и $this->load->model(‘checkout/order’); в одном случае загрузит модель, в другом выдаст ошибку. Чтобы не дублировать код его нужно вынести в библиотеку, которая при необходимости будет проксировать запросы к ядерным моделям, в зависимости от контекста.
Читать полностью »