Andrey
через pdoPage в шаблоне каталога ms.Products.row
Алексей
includeTVs в вызове есть?
Andrey
Andrey
в шаблоне карточки товара такая конструкция работает
Алексей
чудесно. А где tpl ? (pdoPage)
Andrey
чудесно. А где tpl ? (pdoPage)
ну tpl выводится тот который по умолчанию
Алексей
приколько. при обновлении затрется все что там есть.
Andrey
приколько. при обновлении затрется все что там есть.
спасибо, учту это, но как быть с проблемой доп.полей?
Алексей
ну tpl выводится тот который по умолчанию
и что в этом шаблоне по умолчанию? вызов nal есть?
Алексей
проверьте просто вывод [[+tv.nal]] без сниппета IF
Andrey
проверял, не выводит
Алексей
теперь проверьте, если ли значение в самом товаре проверяемом. :)
Andrey
все есть, на карточке товара ms.Product.content всё работает, не работает именно в ms.Product.row
Andrey
но там доп поле выводится просто *nal, а тут видимо нет
Алексей
попробуйте еще: &processTVs=`nal` &prepareTVs=`nal` в сниппет добавить.
Алексей
=1 - помоему как-то не очень работает. если не ошибаюсь.
Andrey
Да, всё получилось, спасибо!
Артур
Господа, я тут собираюсь компонент писать с функционалом доски объявлений и возможностью как на Авито поднимать и выделять объявления за деньги. Вопрос такой, где лучше делать валидацию полей в объявлении на фронте или на сервере?
Артур
и там и там, не?
А зачем? В том смысле, если я на фронте проверю поле на пустоту, оно может по пути на сервер опустеть?
Артур
на js проверка ?
Если на фронте, то да.
Gaius Cassius
Если на фронте, то да.
required просто инпутам поставь тогда и js не нужен будет)
Артур
required просто инпутам поставь тогда и js не нужен будет)
Ну проверка на пустоту, это просто как пример)))
Артур
Допустим надо будет ограничить количество символов, где лучше проверять?
Евгений
и там и там
Евгений
на фронте чтобы юзеру было удобно сразу видеть что он не прав, на сервере - чтобы хитрожопые не обходиили
Артур
на фронте чтобы юзеру было удобно сразу видеть что он не прав, на сервере - чтобы хитрожопые не обходиили
Хорошо, тогда насколько кошерно будет подтянуть для валидации полей на сервере FormIt? Просто там уже есть готовые валидаторы, да и вообще отправку данных я бы сделал на AJaxForm+FormIt. Но я вроде как отдельный компонент делаю, а зависимостей получится много pdoTools, minishop2, AjaxForm, FormIt... Вот я и думаю стоит так делать?
Артур
я хз, это точно компонент?) а не просто доска объявлений
Это просто доска объявлений, но надо упаковать её в компонент, плюс возможность создания и оплаты тарифов должна быть. Упаковать в компонент надо, чтобы было максимально просто таскать с сайта на сайт.
Артур
Вариант готовой сборки тут не подходит, т.к. предполагается интеграция на уже рабочие сайты.
Алексей
оплату писать отдельно.
Артур
оплату писать отдельно.
Это как раз точно лишнее)))
Артур
Хм... а зачем писать опять тикетс, если он есть?
Tickets имеет избыточный функционал.
Алексей
да? ну ок. если просто публиковать обьявления, то достаточно formit + оплату писать.
Артур
Плюс загрузка фотографий там не очень, не возможности выбрать основное фото.
Артур
да? ну ок. если просто публиковать обьявления, то достаточно formit + оплату писать.
Оплату как раз писать не надо, надо писать работу с тарифами какие активны, до которого и .т.п.)))
Артур
это вся проблема?
Ну ещё там комментарии есть, которые не нужны)))
Алексей
Ну ещё там комментарии есть, которые не нужны)))
ну тогда formit для обьявлений + TV поле для пометки обьявления в каком тарифе находится обьявление. ну и функционал тарифов - писать как удобнее.
Алексей
уговорил )))
Алексей
небось еще модерация обьявлений будет происходить?
Алексей
Замена модификатора штатного.
Роман
Первый раз такой вижу
Роман
Он в pdotools ?
Андрей
Он в pdotools ?
https://modx.com/extras/package/if?version=52dace6262cf2410370031e9
Роман
Не совсем понимаю где и как его использовать
Андрей
Андрей
https://docs.modx.com/current/en/extras/if/index
Алексей
Если у вас феном, то сниппет IF не нужен
Алексей
If нужен только в сложных конструкциях, и то... Я без него всегда делал
Dmitry
ребят, такой вопрос: у меня написан плагин на событие OnDocFormSave, у товара сохраняются все параметры и обновляется цена, у другого товара цена зависит от того, который я в прошлом установил, так вот, как мне запускать событие для определенного id OnDocFormSave, пробовал через $product_reload_category = $modx->getObject('msProduct', $id_all[$k]); $product_reload_category->save(); но эффекта ноль
Dmitry
чтобы типа было так, я сохраняю сейчас товар, после того как я ему прописал save() начинает запускаться уже событие у товара и у него цена также обновляется, но уже со значением товара, который вот только что сохранился, надеюсь понятно объяснил)
Евгений
Алексей
если товары связаны чем-то, то просто взять id того товара и провести действия
Dmitry
если товары связаны чем-то, то просто взять id того товара и провести действия
Смотри, сохраняю 1 товар, а он может быть связан внутри любого другого и там он через migx
Dmitry
Это будет жестко проверять
Dmitry
Поэтому для этих товаров есть категория
Dmitry
И я все товары категории хочу обновить
Dmitry
Типа им запустить ondocrormsave
Алексей
ну, нужно получить все товары и foreach пройтись по обьектам :)
Алексей
docSave - сомневаюсь что это верный путь.
Алексей
можно просто написать функцию в плагине 1 раз ее подключить и применять для всех нужных id
Dmitry
можно просто написать функцию в плагине 1 раз ее подключить и применять для всех нужных id
Я это сделал, как мне их сохранить, т.е этим товарам, по которым я прохожусь запустить событие, которое мне нужно, потому что цена обновляется как раз-таки по событию ondocformsave?
Dmitry
Смотри, ты у товара, к примеру изментл цену на 100р, а у другого товара, если этот товар добавлен в нужное поле tv берется его сумма и плюсуется к товару товару
Алексей
Причем тут событие? у вас 1 событие на сохранение ТЕКУЩЕГО ресуса. Остальные РЕСУРСЫ вы сохраняете САМИ!
Dmitry
Причем тут событие? у вас 1 событие на сохранение ТЕКУЩЕГО ресуса. Остальные РЕСУРСЫ вы сохраняете САМИ!
Т.е нельзя никак запустить событие для другого ресурса, сокращу вопрос?
Dmitry
К примеру ресурсу с id 3 запустить событие любое
Алексей
Даже если вы запустите событие, откуда это событие узнает предыдущий ресурс у которого надо брать цену?
Алексей