Павел Гвоздь
С нами с 31 мая 2015; Место в рейтинге пользователей: #2Новогодние скидки на пакеты Гвоздя -30% до 10 января!
Всем привет!
У меня распродажа моих компонентов в честь Нового Года – скидки -30%. После этой распродажи цены на компоненты вероятно поднимутся на ~20-30%. Налетайте, пока есть возможность купить компоненты по старым ценам, да ещё со скидкой -30%!
Список компонентов, на которые действует акция, вы можете найти на моей странице в Modstore.
Скидки действуют до 10 января 2025 года!
[msMarketingStatuses] 1.0.0 Автоматическое управление статусами заказов
Компонент позволяет настроить автоматическое управление статусами заказов, что сильно упрощает работу для менеджера, маркетолога или владельца магазина.
Теперь вам будет легко:
– Напомнить клиенту об оплате через 5 минут после оформления заказа,
– Попросить оставить отзыв спустя 1 неделю после отправки заказа,
– Выслать промокод на следующий заказ через 2 недели после отправки заказа клиенту.
Всё это теперь будет происходить автоматически, без вашего участия.
[msBonus2] 1.2.2 Cron-скрипт рутинных действий
В новой версии исправлены некоторые ошибки связанные со списанием устаревших бонусов: у пользователя списывали устаревшие бонусы, даже если он их использовал после начисления. С версии 1.2.2 это было пофиксено.
Важно! После обновления компонента рекомендую выполнить настройку, описанную в документации в разделе Рутинные действия через cron-скрипт, указав при этом системную настройку msb2_routine_running_method = cron.
И на всякий случай лучше предварительно сделать бекап сайта перед обновлением, проверив работоспособность бонусной системы и убедившись, что всё работает корректно!
[videoGallery] 1.4.0 Поддержка VK Video и ещё пара фишек
В комментах к прошлому апдейту компонента подкинули идею добавить поддержку VK Video. Мне стало интересно, а возможно ли с этого сервиса получать такие же данные, как например с Youtube или Rutube. Оказалось, что это сложнее, чем может показаться. Ни гуглинг, ни тесты через их странное API не дали никаких результатов. Да и к тому же, ради парсинга самых простых данных видеоролика (заголовок, превью, embed url), заставлять людей создавать приложение в инструментах разработчика VK и указывать app_id/secret – не комильфо!
Поэтому я решил пойти другим путём и парсить эти данные прямо с веб версии… не знаю, как долго проживёт данный способ, но пока он работает отлично! Кстати, помимо заголовка, превью и embed url, через морду удаётся парсить описание и длительность ролика. Так что пользуйтесь, пока работает! =)
[videoGallery] 1.3.0 Поддержка MIGX
Давно хотел внедрить поддержку MIGX, тем более, что уже очень давно пользователь Гитхаб под ником
SintezCode отправил PR для этого. Единственное, у меня было несколько правок по его коду, поэтому никак не доходили руки, чтобы этим заняться.
[CurrencyCalc] 1.1.4 Новый источник Free Currency Rates API
В Гитхаб есть отличный бесплатный источник курсов валют – Free Currency Rates API. Там парень по имени Fawaz Ahmed на добровольной основе создал это бесплатное API, за что ему большое спасибо!
Прелесть данного источника в том, что в нём есть курс BTC, ETH и некоторых других криптовалют (например, хлам типа DOGE или XRP). Полный список всех валют данного источника смотреть так.
Я решил, что данное API стоит добавить в мой компонент CurrencyCalc. Также из компонента был удалён бесполезный рудимент – сто лет как устаревший YahooApis. На этом пока всё. =)
P.S. Давно я ничего не писал сюда… возвращаться оказалось сложнее, чем я думал. К слову, компонент не обновлялся аж с 2016 года – пусть это будет символом моего возвращения!
[AjaxForm] 1.2.0 Поддержка отключённых сессий у анонимов
Наконец-то дошли руки допилить AjaxForm. Была проблема при отключённых сессиях для анонимов (настройка anonymous_sessions, указывается только для контекстов!) – сессии отключены, а значит пробросить параметры сниппета, которые необходимы при ajax действиях, невозможно.
Теперь, в новой версии, если сессии включены или вы авторизованы на сайте в админке (что соответственно создаёт сессию), работа происходит как и раньше через сессии. А если сессия отключена, то параметры сниппета пробрасываются через кеш сайта – в кеше создаётся файл с параметрами сниппета.
Также, влил некоторые PR, которые давно висели:
– Украинский язык,
– Параметр сниппета clearFieldsOnSuccess, который говорит, надо ли очищать форму при успешной её отправке,
– В отправляемые данные добавлена передача value кнопки, которую юзер нажал (удобно, если на форме несколько кнопок),
– В default.js заменён document.write на document.body.appendChild,
– Вырезан type="text/javascript" из тега <script> при инициализации на фронте.
Теперь, в новой версии, если сессии включены или вы авторизованы на сайте в админке (что соответственно создаёт сессию), работа происходит как и раньше через сессии. А если сессия отключена, то параметры сниппета пробрасываются через кеш сайта – в кеше создаётся файл с параметрами сниппета.
Также, влил некоторые PR, которые давно висели:
– Украинский язык,
– Параметр сниппета clearFieldsOnSuccess, который говорит, надо ли очищать форму при успешной её отправке,
– В отправляемые данные добавлена передача value кнопки, которую юзер нажал (удобно, если на форме несколько кнопок),
– В default.js заменён document.write на document.body.appendChild,
– Вырезан type="text/javascript" из тега <script> при инициализации на фронте.
[xLike] 1.1.2 Работа с отключенными сессиями для анонимов и поддержка IPv6
Если вам, как и мне, нужно ограничивать анонимов в сессиях, чтобы таблица с сессиями не заполнялась на несколько тысяч записей за 10 минут, то вместе с этим вам придётся столкнуться с некоторыми трудностями. Например, когда в сессию пишутся параметры сниппета для проброса их в какой-нибудь action.php, чтобы не делать этого прямиком через фронтенд.
Отключив сессии для анонимов на сайте, xLike перестал корректно работать, выдавая ошибку при попытке проголосовать. Происходит это, потому что session_id в нём играл основную роль для идентификации юзера, даже при включённой проверке по IP. А проблема заключалась как раз в том, что сниппет xLike пишет в сессию свои параметры, которые необходимы в момент установки голоса пользователем.
Отключив сессии для анонимов на сайте, xLike перестал корректно работать, выдавая ошибку при попытке проголосовать. Происходит это, потому что session_id в нём играл основную роль для идентификации юзера, даже при включённой проверке по IP. А проблема заключалась как раз в том, что сниппет xLike пишет в сессию свои параметры, которые необходимы в момент установки голоса пользователем.
[Расширяем miniShop2] Быстрая смена статуса заказа через контекстное меню
Заказчика запарило для смены статуса лазать в полное редактирование заказа, попросил сделать что-то быстрое и простое. На скриншоте выше конечный результат. Чтобы получить такой же, файлы из этого репозитория закиньте себе в папку /assets/ и создайте плагин, который описан в конце статьи. Однако, я настоятельно рекомендую почитать статью, чтобы понимать принцип расширения всего этого дела.