4 минуты назад
Нужно проверять метод save в файле assets/components/tickets/js/web/default.js
Там лаг с label id и input id и как раз если убрать из label id, то и ...
Указан неверный код защиты от спама. Tickets, как исправить? 2
39 минут назад
Павел, скрипт у вас просто замечательный! Только одно но, или 2, смотря как считать… Сниппет требует от браузеров пользователей очень много ресурсов и...
[xLike] Идеальная система лайков с оптимистичным интерфейсом и правильной формулой 112
3 часа назад
Оставленная «на потом» дока будет камнем на шее успешного запуска нового модуля.
Про платную расширенную версию ещё не забываем.
MiniShop3 - чего ждать в Beta версии. 8
Сегодня в 01:24
в phpStorm плагин Codeium для автодополнения, а так в браузере Gemini (https://aistudio.google.com/app/prompts/new_chat) он намного намного лучше chat...
Испытание ИИ Cursor 1
Вчера в 23:11
Ну планируется что расчеты будут делать клиенты на сайте. А чтоб они не могли приписать себе любую цену товара считать цену надо на стороне сервера. Т...
Плюсы и минусы Vue и gtsAPI 20
Вчера в 19:01
xtype: modx-combo-user
Это xtype (тип поля) самого MODX, выводит всех пользователей modUser
Список всех возможных типов полей
Вывести поле создателя при редактировании ресурса 3
Вчера в 17:31
Пишет не валидный токен «Невалидный токен»
Полностью переустановил modx полностью переустановил sendit
Apache:
2.4.55
Панель управления Beget My...
[SendIt 2.0.0] Пагинация и обновлённая загрузка файлов 23
Вчера в 13:40
Написал вот такой плагин, меня устраивает
<?php
// OnDocFormRender
$modx->controller->addHtml('<script>Ext.onReady(function(){
...
SEOSuite - после установки! 3
Вчера в 09:56
Правильно так:
{('<script type="text/javascript" defer> let my_variable = "' ~ $_modx->resource.MyTv ~ '";</sc...
Как правильно вставить modx переменную в js скрипт на Fenom 1
02 декабря 2024, 10:49
Сегодня вышло обновление от тебя, всё исправлено! Спасибо!
PageBlocks. Удобное управление контентом сайта. 38
А что даст проверка на контекст и новое условие media_source?
Как я понимаю, при отправке с фронта, tickets назначает реальную папку (id ресурсу) только после отправки и сохранения ресурса, плагин срабатывает раньше, а в это время пути к картинкам ведут еще на нулевой ресурс assets/images/tickets/0/имяфайла.png
По вашей подсказке сделал срабатывание плагина только для авторизованных в mgr, что в моем случае частично решает проблему (обычные пользователи, отправляют статьи на проверку (плагин не срабатывает и не прописывает «кривые пути»), а уже менеджер заходит в админку проверяет, публикует и сохраняет (срабатывает плагин и прописывает корректный путь))
Решение получается не универсальное, куда копать дальше?
Есть ли возможность запустить плагин после срабатывания tickets ( когда пути уже ведут на реальный, а не на нулевой ресурс)
Картинкам в Tickets уже после отправки прописывается реальный id, а сначала он 0. Если знаете, подскажите пожалуйста как исправить.
Сейчас приходится заходить в админку, удалять путь к картинке и заново сохранять, чтобы опять сработал плагин и прописался нормальный путь.
В первый вызов страница не из кэша, получается что стили подключены дважды, самим сниппетом и мной, а вот после попадания в cache остаются только те, которые подключил я сам.
Само по себе это не страшно, но в первый раз некрасиво.
Изначально вызывал не кешированный pdoPage, что тоже быстро, но он же с кэшем просто сказка (почти в два раза быстрее быстрого).
Куда копать, чтобы Tickets подключил стили и скрипты в связке с кэшируемым pdoPage и они попали в итоговый cache.
У меня в форме есть доп. поля (tv, например поле model ) которые пользователь заполняет сам, я их не подцепляю.
Вот пример вызова, обратите внимание на &allowedFields=`longtitle,fullname,model,introtext,avtor`
В шаблоне формы tpl.Tickets.form.create1 участок отвечающий за model. Сделал, абсолютно также как остальные стандартные поля.
Ну и добавил подпись в словарь.
Все работает и введенные поля (tv) успешно отправляет.
И еще, если не получается решить простым способом, попробуйте сделать ваш select необязательным полем, создайте скрытый input и подставляйте выбранное значение из select яваскриптом в этот input, а его уже и отправляйте. Сам не пробовал, но должно получится. В данном случае, какая разница, заполнил поле пользователь или скрипт.
1. форму для публикации тиккета выводим так (понятно, что используемые и необходимые поля у каждого свои )
2. сниппет [!get?]]
3. часть шаблона tpl.Tickets.form.create1 отвечающая за выбор категории (рекомендую изначально сделать копию оригинального шаблона (например тот же tpl.Tickets.form.create1) и уже туда добавлять код)
Принцип работы
У сниппета TicketForm есть возможность выбора родителя откуда выводить: &parents Вот туда мы будем подставлять значение из выбранного селекта (категории). Мы выбираем селект (категории — выводимый с помощью pdoMenu), форма отправляется по выбору селекта (onchange=«if (this.selectedIndex) this.form.submit ()»). Сниппет [[!get?]] ловит отправленное значение (id) формы (id категории), по выбранному нами селекту (категории) и подставляет его в TicketForm &parents=`[[!get?]]`. Так, как после автоматической отправки формы, по выбору селекта страница перезагружается и он сбрасывается, то скриптом $("#parentcat [value='[[!get?]]']").attr(«selected», «selected»); устанавливаем выбранное значение, чтобы не путать пользователя.
Как следует, не потестил, но пока вроде работает.
К сожалению это всего лишь костыли и решение достаточно кривое, но как сделать более красиво я не знаю. Нужно просить у Василия, и если он сочтет нужным и выкроит время, то будет счастье и появится такая возможность из коробки.
Приветствуются любые правки, переделки и оптимизация.
adminvps 6$ (виртуальный — Standart)