Добрый день.
Есть задача - при вводе нового документа связать 2 параметра TV (т.е. выбрали значение первого TV, во втором должны обновится возможные значения).
Реальная ситуация: есть каталог автомобилей. У каждого авто есть параметр "марка" и "модель". Эти два параметра связанны и пользователю не надо предлагать модель "ВАЗ 2105" после выбора марки "Opel".
Повторюсь, задача сделать данные связанные списки именно в админке, а не на сайте.
Не подскажите решение?
Два select-а + Ajax и всё будет
Как пример реализации -
http://javascript.ru/ui/ajax (клиентскую часть можно на том же auto.ru подсмотреть)
Серверная - простой PHP-скрипт с запросом к базе, или где там модели хранятся.. (можно и без привязки к MODx)
А как привязать в админке - смотреть, как привязывается TinyMCE, Тэги.. Должно хватить пару-тройку строк Javascript-а с JQuery и будет работать. Как их вставить?
ps. Возможно, найдется более MODx-ориентированное решение..
Как реализовать связанность при выводе в шаблонах я понимаю. Задача решалась уже много раз.
Я не понимаю как в админке это сделать. Вчера покопался в исходниках MODx - есть мысль добавить свой тип данных....
1) При выводе формы создания TV подключается файл actions\mutate_tmplvars.dynamic.php.
В нём есть select с вариантами типов данных.
2) Также есть функция renderFormElement. Она живёт в includes\tmplvars.inc.php. В ней определяется как отображать тот или иной тип данных при создании/редактировании документа.
Вчера попробовал добавить option в mutate_tmplvars.dynamic.php, определил в renderFormElement отображение (пока в качестве теста как input type="Text"). В итоге добавляется, редактируется. Однако меня не покидает мысль что это как то не правильно... Неужели данную задачу никто никогда не решал?
P.S. версия MODx 0.9.6