Tickets - как сделать более гибким?
Сайт состоит из разных разнонаправленных разделов с чуть отличающейся логикой работы. Но все они сделаны на тикетах. И не хватает гибкости в реализации.
Накопились 2 вопроса, которые тормозят весь процесс на данный момент:
1. Как можно отловить и управлять событиями при добавлении, сохранении тикета (через TicketForm)?
Это нужно для реализации разной логики в разделах, отличной от стандартной. Например в одном разделе стандартная логика работает на «ура», а в другом требуется выполнение каких-то действий при сохранении формы (например сменить класс на js или перезагрузить страницу)
Пример такой гибкости в AjaxForm
2. Как менять текст уведомления при добавлении комментариев отдельно для каждого раздела, то есть не меняя при этом стандартные словари?
Ситуация ровно та же: в одном разделе комментарии и есть комментарии и там всё хорошо, а в другом разделе это например вопрос-ответ и упоминание комментариев в уведомлениях запрещено (Например «Вашкомментарий вопрос (или ответ) отправлен на модерацию.»
Накопились 2 вопроса, которые тормозят весь процесс на данный момент:
1. Как можно отловить и управлять событиями при добавлении, сохранении тикета (через TicketForm)?
Это нужно для реализации разной логики в разделах, отличной от стандартной. Например в одном разделе стандартная логика работает на «ура», а в другом требуется выполнение каких-то действий при сохранении формы (например сменить класс на js или перезагрузить страницу)
Пример такой гибкости в AjaxForm
2. Как менять текст уведомления при добавлении комментариев отдельно для каждого раздела, то есть не меняя при этом стандартные словари?
Ситуация ровно та же: в одном разделе комментарии и есть комментарии и там всё хорошо, а в другом разделе это например вопрос-ответ и упоминание комментариев в уведомлениях запрещено (Например «Ваш
Поблагодарить автора
Отправить деньги
Комментарии: 7
В какую сторону мне копать?
Может быть вручную подключать отдельные js-файлы прямо вручную в коде в разных шаблонах разные файлы?
Или всё-таки есть какие-то события, на которые можно реагировать для обновления содержимого страницы и вклинивания в работу компонента «на лету»?
Может быть вручную подключать отдельные js-файлы прямо вручную в коде в разных шаблонах разные файлы?
Или всё-таки есть какие-то события, на которые можно реагировать для обновления содержимого страницы и вклинивания в работу компонента «на лету»?
По первому пункту, думаю, надо свой js делать с нужной логикой или расширять стандартный (копию).
По второму пункту. Для каждого раздела укажи нужный чанк с шаблоном для уведомлений в параметре tplCommentEmailSubscription.
По второму пункту. Для каждого раздела укажи нужный чанк с шаблоном для уведомлений в параметре tplCommentEmailSubscription.
1. Спасибо, буду копать… Жаль что не предусмотрены события чтобы к ним подцепится…
2. Под уведомлениями я имел ввиду не почтовые, а всплывающие на jGrowl
2. Под уведомлениями я имел ввиду не почтовые, а всплывающие на jGrowl
Вижу. При модерации есть. Ну тогда делай копию default.js и правь 316 строчку. Не забудь в настройках указать новый файл.
Жаль что не предусмотрены события чтобы к ним подцепится…
Можно сделать себе и отправить PR.
Нда, нужно будет думать как в копиях привязать логику отдельно к каждым разделам…
Наверно буду отталкиваться от каких-то родительских классов…
Спасибо!
Наверно буду отталкиваться от каких-то родительских классов…
Спасибо!
Копия нужна одна.
Для каждого раздела укажи свой класс. Например,
Для каждого раздела укажи свой класс. Например,
<body class="faq">
и проверяй в 316 строчкеswitch ($(document.body).attr('class')) {
case 'faq':
....
break
case 'forum':
....
break
default:
Tickets.Message.info(response.message);
break
}
Где нужна базовая логика класс не указывай.
Сергей спасибо!!!
Как раз то что надо!
Как раз то что надо!
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.