Добавляемый тикет по умолчанию неопубликован

Всем привет. Хотел спросить, можно ли настроить сниппет [[!TicketForm]] таким образом, чтобы пользователь при создании тикета, создавал его неопубликованным, чтобы в дальнейшем администратор мог сам добавлять тикеты из админки?
Андрей Копп
04 марта 2016, 18:51
modx.pro
1
1 478
0

Комментарии: 7

Евгений Webinmd
05 марта 2016, 00:54
0
Попробуйте скрытое поле published со значением 1
    Максим Кузнецов
    05 марта 2016, 01:33
    +3
    Тогда уж лучше со значением 0..)

    А вообще, скрытые поля на фронтэнде (при наличии вредительских желаний) легко отредактировать через консоль браузера, поэтому лучше решить задачу через плагин:

    <?php
    	switch ($modx->event->name) {
    		case 'OnDocFormSave':
    			//при желании можно дополнительно ограничить применение только для определенных шаблонов
    			if ($resource->get('template') == 8 && $mode == 'new' && $resource->class_key == "Ticket") {  
                 	  		 $resource->set('published', 0);
    			}
    			
    			$resource->save();
     
    		break;
    	}

    Вешать на событие OnDocFormSave, соответственно.
Василий Наумкин
05 марта 2016, 07:39
0
Там же при создании тикета 2 кнопки: опубликовать и в черновики.

Первую можно просто убрать. Черновик — это и есть неопубликованный тикет.
    Роман Садоян
    05 марта 2016, 11:53
    0
    Можно добавить TV поле — Опубликован или нет. (publihedTV)
    По умолчанию все тикеты публикуются (published = 1, а вот наше TV — publishedTV = 0), но не выводятся, т.к. идет фильтрация в pdoTools по TV полю.
    &where = `{"publishedTV":1}`
    pdoTools с этим отлично справляется.

    Почему так?
    При публикации тикета — на почту администрации приходит письмо о добавлении тикета, а вот если он его в черновики добавит — то ничего не придет.
    По мне так проще добавить 1 TV что бы определять опубликован тикет или нет, чем добавлять отправку почтовых уведомлений при публикации в черновик.
    Администратор откроет тикет — проверит содержимое и поставит Опубликован — Да (publishedTV = 1)
      Сергей Шлоков
      05 марта 2016, 13:49
      0
      Администратор откроет тикет — проверит содержимое и поставит Опубликован — Да (publishedTV = 1)
      А если администратор забудет.
      Максим выше привел пример плагина, который решает все задачи — и уведомление высылается и тикет не опублинован.
        Роман Садоян
        05 марта 2016, 15:17
        0
        и уведомление высылается и тикет не опублинован.
        Если это так то решение Максима безусловно лучше.
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      7