4.15.1

Новая функциональность и улучшения

[+] Дизайн: Добавлена возможность загрузки svg изображений для логотипов.

[+] Модули: Вариации товаров: Добавлена настройка, позволяющая считать все вариации в группе как один товар, для расчета скидки за количество.

[+] Модули: Добавлен модуль “Цена за единицу”, который позволяет задавать для товара цену за миллилитр, грамм и т.п., как требуют стандарты Евросоюза.

[+] Модули: Добавлена интеграция с сервисом Zapier.

[+] Модули: Импорт из Shopify: Добавлен новый модуль, который позволяет импортировать товары из Shopify.

[+] Модули: Отзывы о товарах: Добавлена возможность импортировать и экспортировать отзывы о товарах в панели администратора.

[+] Модули: Расширенный импорт товаров: Добавлена возможность использования архивов с изображениями.

[+] Модули: Расширенный импорт товаров: Добавлена возможность скачать пример пресета импорта.

[+] Модули: Соответствие GDPR (Общему регламенту по защите данных в ЕС): Добавлен запрос и фиксация согласия на установку отдельных файлов cookie.

[+] Привилегии: Добавлены две привилегии для управления группами пользователей с типом “Администратор” и для использования расширенного HTML в контенте.

[+] API: Добавлена возможность создавать товары без передачи категории.

[+] API: Добавлена возможность возвращать описание в списке товаров.

[+] Multi-Vendor: Модули: Робокасса: Добавлен модуль способов оплаты “Робокасса” с поддержкой разделения платежей.

[+] Multi-Vendor: Привилегии: Добавлена привилегия для объединения продавцов.

[+] Multi-Vendor: Модули: Премодерация данных продавцов: Товары: Добавлено отображение измененных полей товара.

[+] Multi-Vendor Plus: Модули: Общие товары для продавцов: На страницу товара добавлена информация о доставке от каждого продавца.

[+] Multi-Vendor Plus: Модули: Привилегии продавцов: Привилегии: Добавлена привилегия для управления группами пользователей с типом “Продавец”.

[+] Multi-Vendor Ultimate: Добавлена возможность назначать витрину, доступную для администратора.

[+] Multi-Vendor Ultimate: Модули: Склады: При возврате товар отправляется на тот склад, откуда был взят.

Изменения в существующей функциональности

[*] Витрины: Валюты: Добавлена возможность изменять валюту витрины по-умолчанию.

[*] Маска телефона: Добавлена новая маска телефона для Индонезии и обновлён список масок телефонов.

[*] Модули: Комплекты товаров: Оптимизирована верстка под SEO требования.

[*] Модули: Ограничение доступа: Добавлена поддержка IPv6.

[*] Модули: Поставщики: Модуль помечен как устаревший.

[*] Модули: Робокасса: Способ оплаты “Робокасса” вынесен в отдельный модуль.

[*] Модули: Тинькофф: Кредитование покупателей (КупиВкредит): Обновлен адрес платежного шлюза.

[*] Панель администратора: Способы оплаты: Порядок полей был изменен.

[*] Поля профиля: Телефон: Для браузера Safari отключено автозаполнение телефона, т.к. оно работало некорректно.

[*] Товары: Характеристики: Опции: Появилась кнопка для более удобного добавления варианта при редактировании характеристики или опции.

[*] Ядро: Библиотека Smarty обновлена до 4.1.0.

[*] Ядро: Минимальная требуемая версия PHP поднята с 5.6.0 до 7.1.0, добавлена поддержка PHP 8.0.

Исправления ошибок

[!] Группы пользователей: Фильтры: Администраторам с правами “Только просмотр” для фильтров была доступна кнопка удаления категорий в фильтрах. Исправлено.

[!] Дизайн: RTL: Некоторые иконки могли отображаться некорректно. Исправлено.

[!] Дизайн: Макеты: Если оболочка имела форму, то формы блока не работали. Исправлено.

[!] Дизайн: Макеты: Некоторые блоки в секциях макетов могли иметь неправильную ширину. Исправлено.

[!] Дизайн: Мобильный режим: Галерея товаров в шаблоне “Большая картинка” и иконка загрузки были расположены не по центру экрана. Исправлено.

[!] Дизайн: Фильтры товаров: Ползунок фильтра цены товара отображался некорректно в RTL языках. Исправлено.

[!] Дизайн: Языки: Иконки языка без выпадающего списка не отображались. Исправлено.

[!] Заказы: Статусы заказов: Номера счет-фактуры и кредитного извещения не отображались на странице списка заказов. Исправлено.

[!] Контекстное меню: В контекстном меню расчет цены процентами был неправильный. Исправлено.

[!] Мобильное приложение: Главная страница оставалась пустой после запуска приложения. Исправлено.

[!] Мобильное приложение: Поиск работал в ограниченном режиме. Исправлено.

[!] Мобильное приложение: Модули: Отзывы о товарах: На странице товара не отображались комментарии администратора. Исправлено.

[!] Мобильное приложения: Языковая переменная не обновлялась после апгрейда. Исправлено.

[!] Модули: Вариации товаров: Вариации, которых нет в наличии, могли быть скрыты на витрине даже при включенной настройке “Показать все возможные варианты характеристик”. Исправлено.

[!] Модули: Вариации товаров: При большом количестве характеристик список вариаций обрезался. Исправлено.

[!] Модули: Вариации товаров: Промо-акции: Вариация товара не могла быть выбрана как товар со скидкой для бонуса в промо-акции. Исправлено.

[!] Модули: Вариации товаров: Характеристики: Вариации товаров могли создаваться по характеристике, недоступной для категории товара. Исправлено.

[!] Модули: Водяные знаки: Водяной знак мог применится к логотипу, если у изображения товара и логотипа были одинаковые названия. Исправлено.

[!] Модули: Возврат товаров: Неавторизованный покупатель не мог видеть созданные им запросы на возврат. Исправлено.

[!] Модули: Карты и геолокация: Невозможно было оценить стоимость доставки товара с обязательными опциями типа “Файл”. Исправлено.

[!] Модули: Комплекты товаров: Комплект мог быть скрыт из-за недостатка товара из комплекта, даже если количество данного товара не отслеживалось. Исправлено.

[!] Модули: Комплекты товаров: Описание комплекта не изменялось, если при сохранении значение поля было пустым. Исправлено.

[!] Модули: Комплекты товаров: Комплекты товаров отображались на витрине после истечения периода доступности. Исправлено.

[!] Модули: Комплекты товаров: Скидка могла не примениться, если товар имел нулевую цену и платные обязательные опции. Исправлено.

[!] Модули: Лендинги из Тильды: Содержимое страницы из Tilda могло не отображаться на витрине. Исправлено.

[!] Модули: Магазины и пункты самовывоза: PHP ошибка возникала при выключенной тарифной зоне для всех стран. Исправлено.

[!] Модули: Обратный звонок: После нажатия на кнопку “Купить в один клик” заказ не создавался. Исправлено.

[!] Модули: Обработчики хуков в модулях, использующих 4-ю версию схемы, могли вызываться неправильно. Исправлено.

[!] Модули: Ограничение доступа: IP адрес не блокировался при авторизации через всплывающее окно. Исправлено.

[!] Модули: Ограничение по возрасту: Запрашивалось подтверждение возраста, даже когда в профиле был указан возраст. Исправлено.

[!] Модули: Отложенные товары: Список отложенных товаров не обновлялся на других устройствах при удалении товаров. Исправлено.

[!] Модули: Поиск от Searchanise: Возникала ошибка Identifier “view” is not defined при оформлении заказа. Исправлено.

[!] Модули: Поиск от Searchanise: На странице результатов не применялась сортировка по релевантности, когда в Instant Search Widget был введён пустой запрос. Исправлено.

[!] Модули: Расширенный импорт товаров: Значение поля Images delimiter при импорте XML файлов не изменялось. Исправлено.

[!] Модули: Расширенный импорт товаров: Некоторые файлы не могли быть загружены для импорта по ссылке. Исправлено.

[!] Модули: Расширенный импорт товаров: При наличии в одном XML-узле нескольких тегов CDATA, учитывался только последний тег. Исправлено.

[!] Модули: Служба доставки — СДЭК: При создании отгрузки появлялась ошибка. Статус доставки не определялся. Исправлено.

[!] Модули: Социальные кнопки: На мобильных социальные кнопки иногда не отображались. Исправлено.

[!] Модули: Центр сообщений: Ссылки в первом сообщении диалога отображались как текст. Исправлено.

[!] Модули: CommerceML: Если система учета данных не предоставляла информацию о типе синхронизируемой характеристики и эта характеристика имела тип “Поиск товаров через фильтры”, то не создавался вариант этой характеристики. Исправлено.

[!] Модули: CommerceML: Не изменялись характеристики вариаций товаров при повторном импорте. Исправлено.

[!] Модули: CommerceML: При разбитии файла import.xml на части неправильно импортировались категории и характеристики товара. Исправлено.

[!] Модули: CommerceML: Товар не отображался в панели администратора и витрине, если не была указана базовая цена. Исправлено.

[!] Модули: RetailCRM: Поставщики: При синхронизации заказов с товарами поставщиков способы доставки дублировались. Исправлено.

[!] Модули: SEO: Витрины: Если для URL витрины указан порт, SEO ссылки не работали. Исправлено.

[!] Модули: SEO: Не обновлялся заголовок на странице категории при переходе на новую страницу. Исправлено.

[!] Налоги: Включенные в цену налоги не вычитались для покупателей, освобожденных от налогов. Исправлено.

[!] Налоги: При расчете налогов за единицу товара сумма налога включалась в стоимость товара и доставки. Исправлено.

[!] Оформление заказа: Можно было оформить заказ, не оплачивая доставку. Исправлено.

[!] Панель администратора: Если администратор авторизовался через витрину, то при переходе в панель администрирования через нижнюю панель ему приходилось повторно вводить логин и пароль. Исправлено.

[!] Панель администратора: Меню администратора: Происходило неправильное перенаправление на витрину со страниц списка товаров и редактирования категории. Исправлено.

[!] Панель администратора: Покупатели: Поиск: Возникала ошибка при вводе текстовых данных без цифр при поиске по номеру телефона. Исправлено.

[!] Пользователи: Модули: Администратор витрины мог изменять статус модуля, удалять и устанавливать модуль. Исправлено.

[!] Пользователи: Профили: Отсутствовала возможность при оформлении заказа и при регистрации сделать заполнение поля “Область/район” обязательным. Исправлено.

[!] Поля профиля: При загрузке файлов в профиль возникала ошибка. Исправлено.

[!] Промо-акции: При создании промо-акции с условием по товару с выбранными опциями возникала PHP ошибка. Исправлено.

[!] Профиль: Выбор года рождения работал некорректно на странице редактирования профиля на витрине. Исправлено.

[!] Редактор документов: Не отображался перевод названия сниппета в документах. Исправлено.

[!] Редактор файлов: В CS-Cart, в редакторе файлов, по умолчанию было не доступно большинство файлов и папок. Исправлено

[!] Способы оплаты: Был неправильно сделан запрос к базе данных. Исправлено.

[!] Тарифные зоны: Отключенные регионы оставались доступными для настройки тарифных зон. Исправлено.

[!] Товары: Действие при отсутствии товара в наличии: При смене опции out of stock количество товара обнулялось. Исправлено.

[!] Товары: Опции: Уведомление о несохраненных данных при добавлении опций не отображалось. Исправлено.

[!] Товары: Предупреждение о несохраненных изменениях при перезагрузке страницы после создания характеристики на странице редактирования товара не отображалось. Исправлено.

[!] Товары: Фильтры: Некоторые фильтры, созданные через контекстное меню в списке характеристик, не отображались на витрине. Исправлено.

[!] Товары: Характеристики: После сохранения характеристики с вариантами происходило перенаправление на страницу текущей характеристики. Исправлено.

[!] Уведомления: Emails: Логотип не был кликабельным. Исправлено.

[!] Хуки: Хук orders:list_extra_links дублировался на странице списка витрин. Исправлено.

[!] Экспорт/Импорт: Не работала опция “Уменьшить количество товаров до нуля”. Исправлено.

[!] Экспорт/Импорт: В некоторых случаях, импорт характеристик в поле Features мог создавать дубликаты вариантов этой характеристики. Исправлено.

[!] Языки: Характеристики: Информация о категориях отображалась на языке, выбранном для панели администратора. Исправлено.

[!] Товары: Характеристики: Товару добавлялся вариант другой характеристики. Исправлено.

[!] Управление блоками: Из-за неверного redirect_url в блоках, которые были встроены в контент страницы, не обновлялись остальные блоки. Исправлено.

[!] API: Заказы: При создании заказа с товаром с выключенными опциями значения опций попадали в заказ. Исправлено.

[!] Multi-Vendor: Дизайн: Продавцы: Ширина первой колонки была некорректной на странице списка продавцов. Исправлено.

[!] Multi-Vendor: Модули: Конфигуратор панели продавцов: Пункты меню с выбором языка и валюты не работали на мобильных устройствах в панели продавца. Исправлено.

[!] Multi-Vendor: Модули: Оплата от продавцов администратору: Язык при котором создавался авто-комментарий брался из языка по-умолчанию вместо языка из настройки компании. Исправлено.

[!] Multi-Vendor: Модули: Платежи через Stripe Connect: Иногда при оплате картой с включенным 3-D Secure деньги списывались, а заказ не создавался. Исправлено.

[!] Multi-Vendor: Модули: Платежи через Stripe Connect: При вводе некорректного номера карты страница оформления заказа могла зависнуть. Исправлено.

[!] Multi-Vendor: Модули: Платежи через Stripe Connect: При включенном 3-D Secure комиссия маркетплейса рассчитывалась неправильно. Исправлено.

[!] Multi-Vendor: Модули: Поиск от Searchanise: Очередь запросов на синхронизацию не сбрасывалась после нажатия на кнопку Force re-indexation. Исправлено.

[!] Multi-Vendor: Модули: Премодерация данных продавцов: Карты и геолокация: При предпросмотре товара на модерации, возникали уведомления о PHP ошибках. Исправлено.

[!] Multi-Vendor: Модули: Премодерация данных продавцов: Товар после первого отклонения нельзя было отправить на модерацию повторно, если проверка изменённых товаров была отключена. Исправлено.

[!] Multi-Vendor: Модули: Расширенный импорт товаров: Премодерация данных продавцов: Существующие товары могли попадать на модерацию как новые после импорта. Исправлено.

[!] Multi-Vendor: Модули: Тарифные планы для продавцов: В некоторых случаях текст для тарифных планов для продавцов не умещался. Исправлено.

[!] Multi-Vendor: Модули: Тарифные планы для продавцов: Продавец мог выбрать недоступный ему план. Исправлено.

[!] Multi-Vendor: Модули: Тарифные планы для продавцов: Созданный в панели администратора продавец не привязывался к витрине. Исправлено.

[!] Multi-Vendor: Модули: CommerceML: Журнал обмена данными от разных продавцов записывался в один общий файл. Исправлено.

[!] Multi-Vendor: Панель продавца: Если продавец авторизовался через витрину, то при переходе в панель продавца через кнопку “Панель управления” во всплывающем окне учетной записи ему приходилось повторно вводить логин и пароль. Исправлено.

[!] Multi-Vendor: Продавцы: Категории: Могла возникнуть ошибка при вводе в адресной строке не существующего в магазине идентификатора категории. Исправлено.

[!] Multi-Vendor: Промо-акции: Промо-акция с условием “Товар в списке” могла перестать применяться к корзине после обновления. Исправлено.

[!] Multi-Vendor: Характеристики: Для продавцов отображалась кнопка удаления категорий общих характеристик. Исправлено.

[!] Multi-Vendor: Характеристики: Для продавцов отображалась кнопка сохранения при просмотре общих характеристик. Исправлено.

[!] Multi-Vendor Plus: Модули: Общие товары для продавцов: На витрине могли возникнуть ошибки с выключенными предложениями продавцов. Исправлено.

[!] Multi-Vendor Plus: Модули: Общие товары для продавцов: Товарные предложения общих товаров были доступны для выбора в продуктовом блоке с ручным наполнением, хотя предложения не отображались в этом блоке на витрине. Исправлено.

[!] Multi-Vendor Plus: Модули: Общие товары для продавцов: У лучшего предложения иногда могла не работать кнопка “Добавить в корзину”. Исправлено.

[!] Multi-Vendor Plus: Модули: Общие товары для продавцов: Хиты продаж и товары со скидкой: Товары не отображались в блоке “Хиты продаж” и на странице с хитами продаж. Исправлено.

[!] Multi-Vendor Plus: Модули: Общие товары для продавцов: В HTML коде ссылки “И другие предложения” атрибут не заменялся значением и оставался в коде детальной страницы товара. Исправлено.

[!] Multi-Vendor Plus: Модули: Общие товары для продавцов: В панели продавца не отображались значения характеристик у общего товара и предложений продавцов. Исправлено.

[!] Multi-Vendor Plus: Модули: Общие товары для продавцов: В список отложенных товаров добавлялись все вариации товара вместо отдельной вариации. Исправлено.

[!] Multi-Vendor Plus: Модули: Общие товары для продавцов: Товар некорректно добавлялся в корзину с выключенной настройкой “Отслеживать количество” и включенной “Быстрая покупка одного из предложений”. Исправлено.

[!] Multi-Vendor Plus: Модули: Общие товары для продавцов: Фильтры: Общие товары не отображались в результатах фильтра по продавцу. Исправлено.

[!] Multi-Vendor Plus: Модули: Оплата напрямую продавцам: Промо-акция для каталога одного продавца могла применяться к товарам другого продавца. Исправлено.

[!] Multi-Vendor Ultimate: Модули: Фулфилмент от маркетплейса: Магазины и пункты самовывоза: Магазины и пункты самовывоза могли не отображаться на витрине. Исправлено.

[!] RTL: Валюты: Отображение суммы после валюты не работало. Исправлено.

[!] RTL: Уведомления: E-mail: Номер телефона отображался некорректно. Исправлено.

[!] Ultimate: Витрины: В некоторых случаях выбор витрины отображался неправильно. Исправлено.

[!] Ultimate: Витрины: Валюты: Языки: Витрина могла создаться без активных валют и языков. Исправлено.

[!] Ultimate: Витрины: При расширенном поиске витрин появлялась ненужная паджинация. Исправлено.

[!] Ultimate: Модули: Склады: Вариации товаров: Количество товаров-вараций сохранялось некорректно. Исправлено.

[!] Ultimate: Модули: Склады: Магазин и склад не могли иметь больше 88 тарифных зон для обслуживания. Исправлено.

Сервис-паки

4.15.1.SP1

[!] Модули: Платежи через PayPal: Налоги: Если в панели администратора расчёт налога был настроен по цене за единицу, и цена не включала налог, то при оплате через PayPal налог не был включён в сумму заказа. Исправлено.

[!] Модули: Цена за единицу: Невозможно было экспортироваать/импортировать поле “Название единицы”. Исправлено.

[!] Редактирование заказа: Скидка на товары применялась при каждом изменении заказа. Исправлено.

[!] Товары: Характеристики: Администратор не мог добавить варианты к существующей характеристике во всплывающем окне. Исправлено.

[!] Multi-Vendor: Модули: PayPal Commerce Platform: Платежи через Stripe Connect: На детальной странице заказа возникала PHP ошибка. Исправлено.

4.15.1.SP2

[!] Экспорт/Импорт: Импорт товаров мог вызвать ошибку базы данных. Исправлено.

4.15.1.SP3

[!] Безопасность: Уязвимость позволяла получить несанкционированный доступ к серверу любому, у кого был доступ к панели администратора или к панели продавца и привилегия редактирования блоков. Исправлено.

Примечание

Благодарим нашего партнера ASAP Lab за то, что обнаружили эту проблему. Компания специализируются на поддержке серверов, вопросах производительности и безопасности. Они не только регулярно проверяют код CS-Cart на наличие уязвимостей, но и могут проверить весь ваш проект, включая конфигурацию сервера, сторонние модули и пр.

4.15.1.SP4

[!] Исправление безопасности SP3 было несовместимо со сторонними модулями и темами. Исправлено.