2013-05-27 5 views
1

Я новичок в OTRS, и я должен добавить флажок html с некоторым текстом на странице отправки заявки. По сути, мне нужно, чтобы пользователь принял заявление о конфиденциальности (нажав на флажок), прежде чем он представит новый билет. Следовательно, кнопка отправки должна быть включена только после того, как пользователь нажмет на этот флажок. Как я могу это сделать?Добавить html флажок в OTRS ticket submit страница

Я знаю HTML, но я не знаю OTRS-архитектуры, поэтому я не могу понять, как я могу изменить HTML-страницы.

В kernel-> output-> HTML-> Standard Я основан HTML шаблоны (* .dtl), но:

  1. Я не знаю, Wich элементы являются частью страницы представившего билета;
  2. Я не знаю, нужно ли мне изменять существующий шаблон, добавлять HTML или создавать новый шаблон (в этом втором случае я должен изменить некоторый модуль perl, который вызывает макет, но один из них!?!)
  3. Я пытаюсь открыть .dtl-файлы, чтобы понять, что мне нужно изменить, но Firefox не может их правильно отобразить; как я могу их открыть?

ответ

2

Если вы хотите, чтобы клиенты принимали заявление о конфиденциальности, вам не нужно указывать код.

Вы можете просто перейти в Admin> SysConfig> Framework> Frontend :: Customer и активировать модуль CustomerPanelPreApplicationModule###CustomerAccept, а также значения InfoKey и InfoFile. Когда клиент регистрируется в тексте в InfoFile, отображается, и клиент должен это принять. После принятия InfoKey сохраняется в пользовательских настройках. Таким образом, система не будет снова запрашивать разрешение для клиента, и если вы можете изменить политику, вы также можете изменить ее, отображая сообщение при необходимости.

За ваши вопросы по файлам .dtl: это простые HTML-файлы, но разные блоки отображаются файлами, расположенными под ядром/модулями.

Если вы хотите изменить страницу, которая используется для отправки новых билетов, это файл: CustomerTicketMessage.dtl. Вы можете редактировать эти файлы с помощью любого текстового редактора.

+0

спасибо! Ваш ответ был очень полезным. Но что, если я хочу, чтобы клиент принял InfoFile при каждом входе в систему? Я вообще пытался отключить InfoKey, но сообщение отображается при каждом запросе (следовательно, даже если оно принято пользователем, оно снова и снова отображается, зацикливание). – user1781028

+0

Очевидно, что я не знаю вашего варианта использования, но мне кажется, что это очень плохо с точки зрения UX. Если вы действительно хотите это сделать, вы можете добавить какой-то пользовательский код, который удаляет ключ предпочтения из настроек пользователя после входа в систему. – MichielB

+0

В принципе, мне нужно, чтобы пользователь принял отказ от конфиденциальности каждый раз, когда он отправлял новый билет. Поэтому я предпочел включить флажок с текстом оговорки в CustomerTicketMessage.dtl. С javascript я включаю/выключаю кнопку «Отправить», чтобы помешать пользователю отправить билет без принятия. Все простые HTML и все простые Javascript, а также стили CSS встроены в теги HTML. Я знаю, что это приблизительный подход, но это самый простой способ сделать это. Если вы можете предложить лучший подход, я был бы очень признателен. Однако ваш ответ был полным и полным. – user1781028