ТЗ на разработку связанных ТВ параметров для сайта
Требуется реализовать связь ТВ параметров в панели управления MODX Revolution. При выборе одного параметра, в зависимости от выбранного значения должны отображаться те, или иные ТВ параметры.
Необходимые знания и навыки
- Уверенное знание и опыт работы CMF Уверенное знание библиотеки EXTJS и опыт работы с ней Уверенное знание политик доступа и разграничение прав доступа Практика реализации модулей и дополнений для CMF Все модификации на сайте должны производиться средствами MODX XPDO и MODX API Работа существующего функционала сайта не должна быть нарушена
Краткое описание существующего функционала
Существует ресурс, находящийся в процессе разработки. Данный ресурс предназначен для каталогизации отечественных производителей (В дальнейшем Производитель) и продуктов производимых ими.
В панели управления CMF создаются отдельные контексты для каждого производителя (В дальнейшем Мини-сайт), которые состоят из ряда ресурсов, таких как: Главная, О компании, Контактная информация, Каталог товаров.
Для представителя каждого мини-сайта реализован отдельный доступ, и ограничен только одним контекстом. Кроме того, реализована функция отдельной файловой системы для каждого мини-сайта.
Представитель каждой компании имеет возможность создавать разделы в каталоге товаров для мини-сайта и заполнять их товарами, производимыми компанией.
Как было выше сказано, каждый контекст, созданный для компании в панели управления существует как отдельный мини-сайт со своим каталогом товаров. Так же существует отдельный (главный) контекст WEB, который доступен только для администратора ресурса. Главный контекст имеет отдельный общий каталог товаров с обобщающими разделами и подразделами, но не содержит в себе товаров. На сайте, вывод товаров в главном каталоге осуществляется с помощью связи (ТВ параметром) главного раздела и товара, добавляемого представителем компании в какой-либо из контекстов. Кроме того, в панели управления созданы несколько ТВ параметров, которые объединены отдельной группой и являются характеристиками товаров, например: Материал, Цвет, Происхождение.
Например:
Характеристики товаров
- Материал
Металл
Резина
Пластмасса Цвет
Зеленый Происхождение
Естественное
Искусственное
Для каждой подкатегории в главном каталоге в контексте ВЕБ с помощью ТВ параметра типа checkbox, администратор ресурса может выбирать некоторые из характеристик товаров, доступных только в данной категории. Например, для пищевой промышленности выбираем характеристику «Происхождение». Для производства мебели – характеристики «Материал» и «Цвет».
Дополнительные функции, которые необходимо реализовать
Представитель компании выбирает подраздел глобального каталога (Данный ТВ параметр уже создан) и, в зависимости от выбранного подраздела, отображаются только те ТВ параметры, отвечающие за характеристики товара (Из категории PRODUCT_CHARS), которые были выбраны для данного подраздела глобального каталога в контексте ВЕБ.
Небольшой пример:
Представитель компании нажимает кнопку создать ресурс. Выбирает подраздел каталога мини-сайта, в котором будет находиться товар. Видит перед собой поле «Выберите подраздел глобального каталога» и не видит полей характеристик товара. Выбрав подраздел «Мебельное производство» глобального каталога, представитель видит поля характеристики товара, на данный момент это 2 селекта с заголовками «Цвет» и «Материал». В селектах представитель может выбрать один элемент.
Если представитель компании захочет изменить раздел глобального каталога на раздел «Пищевая промышленность», не сохраняя ресурс, то поля характеристик товара должны меняться в соответствии с выбранным разделом без обновления страницы. Он увидит перед собой селект с заголовком «Происхождение».
После сохранения ресурса все данные записываются в БД в привычном для CMF MODx Revolution виде.


