Разбираюсь с ACL-ами. Поигрался с примерами из мана, по отключению кнопок и статусов и т.п. Вроде понятно. Теперь боевая задача: При создании тикета агентом, при выборе очереди "Fair Ideas", нужно убрать все возможные типы кроме "Idea". Сделал вот так:
https://drive.google.com/file/d/0BwAfmY ... sp=sharing
Это работает, но только с уже существующими и находящимися в очереди "Fair Ideas" тикетами, и только при редактировании "Свободных полей". А надо что бы работало при создании "новой заявки по телефону". Не понятно. Ковыряем ман и форум дальше... Находим кусок
Код: Выделить всё
Frontend => {
Action => ['AgentTicketPhone', 'AgentTicketEmail'],
},
https://drive.google.com/file/d/0BwAfmY ... sp=sharing
Совсем не работает. Совсем не понятно. (( По логике вроде бы все правильно делаю. Если логику правильно понимаю. В чем может быть причина?
При проверке каждого нового ACL'а, другие отключаю.
Можно сделать и на оборот, при выборе типа "Idea", оставлять доступной только очередь "Fair Ideas", но хочу сделать так, что бы в других очередях данный тип вообще не был доступен.
ACL зависимости доступного списка очередей от типа заявки работает на ура.
В интерфейсе клиента вообще не получается ни какие ACL'ы реализовать. (( Выбор типа заявки у костомеров отключен в принципе. По дефолту - "Инцидент", но с помощью планировщика сделал по тригеру "TicketCreate", проверять, не назначена ли тикету очередь "Fair Ideas", и если да, то автоматом меняет тип на "Idea". И большинство заявок будет поступать в очередь "Fair Ideas" именно через вэб-интерфейс кастомеров или по почте. А агенты редко будут в эту очередь заявки регистрировать, и вот что бы агенты не запутались в таких редких случаях, и не нафигачили чего не надо нафигачивать, необходимо по максимуму все ACLами подрезать.
В общем, в данную задачу можно все решить обходными пуятми...
Что то я много все в кучу свалил. Краткость не моя сестра, извините )) Попробую уточнить вопросы:
1. Почему не работает ACL в "новая телефонная заявка"(второй скрин)? Чего-то не хватает, но не пойму чего. Вроде бы простая задача
2. Почуму не работает зависимость типа от выбранной очереди? С этим надо обязательно, для ршенеия если не этой задачи, то будущих.
3. Почему не работает ACL в интерфейсе кастомера? Хотя, с костомерским ACL'ом еще не разбирался.
Как всегда буду благодарен даже пинкам в правильном направлении.