Freeocart

Проект свободной экосистемы Opencart

Релиз FOC:CSV v. 0.0.97

Краткий обзор нововведений в 96 и 97 версиях модуля.

В версии 96 была добавлена возможность фильтрации экспортируемых товаров по статусу, чтобы, например, иметь возможность выгружать только включенные или выключенные товары, поскольку ранее выгружались все.

Был исправлен компонент «Пропустить строку, если поле пустое» — ранее, по моему недогляду, он не считывал доступные для выбора поля импортируемого документа.

Кроме этого была внесена пачка небольших исправлений, например, теперь группа атрибутов по умолчанию не FOC, а «Характеристики», поскольку зачастую при импорте данных не обращаешь внимания на эту строку и получаешь после импорта товары с атрибутами, сгруппированными в FOC.

Был исправлен баг в парсере атрибутов «Сгруппированные атрибуты в формате Advantshop», который заваливал процедуру импорта, если в файле были пустые группы (всегда проверяйте массивы перед использованием оператора list).

Также, в версии 96 я сменил название модуля с «FO» на «FOC», чтобы он соответствовал всем остальным проектам от Freeocart.

Кстати забавно, в прошлый раз под это дело ушёл целый релиз v0.0.94 🙂

Решена проблема с некорректным чтением заголовков − поскольку ранее у меня за это отвечала простая функция для разбивки строки, могли случаться проблемы с заголовками содержащими символ разделителя в себе.

В итоге эту проблему я решил подключением замечательной библиотеки papaparse, в которой этот момент уже учтен разработчиками (за что им большое спасибо!).


В последней версии 0.0.97 был исправлен досадный недогляд, связанный со сбросом значения manufacturer у товара при импорте. А именно, в случае, если у вас нет колонки с производителями в CSV, то производитель всех импортируемых в режиме обновления товаров, ставился в значение 0. Для режима добавления — это нормальное поведение, но при обновлении существующих, производители сносились начисто.

По сообщению пользователя, была устранена несовместимость с Opencart 3, при которой было невозможно скачать экспортируемые файлы.

Связано это было с тем, что экспортируемые файлы сохраняются в папке system/storage, которая с версии 3.0 напрямую недоступна из веба. Поскольку я использовал в тестовых стендах упрощенные конфиги nginx, и тестировал в основном на второй ветке, этот баг ускользнул от моего внимания.