У меня есть папка на моем сайте, которая содержит сотни подпапок. Каждая подпапка представляет отправку документа и содержит элементы, связанные с отправкой. Страницей по умолчанию для каждой подпапки является пользовательский шаблон страницы (на основе документа), который отображает немного различную информацию в зависимости от роли просматриваемого пользователя. Например, пользователи с ролью диспетчера видят что-то немного отличающееся от пользователей с ролью рецензента или редактора. Пользователям на сайте назначены разные роли для разных папок - например, диспетчер может назначить пользователя A в качестве проверяющего в папках 1-5 и пользователя B в качестве проверяющего в папках 6-10.
Я бы хотел создать на панели пользователя пользователя портлет, отображающий все папки, к которым ему был предоставлен доступ Reviewer, или я согласился бы, если бы на панели инструментов была ссылка, которая ведет к шаблону страницы, если это проще , Первоначально я думал, что создам коллекцию, но нет встроенного «крючка» для отображения контента, в котором пользователю назначена определенная роль.
Я не могу просто ограничить его, чтобы содержимое не было доступно для просмотра, если у вас нет роли рецензента, поскольку оно должно быть доступно для просмотра всем аутентифицированным пользователям.
Я играл с шаблоном стандартного представления (folder_listing), чтобы попытаться найти правильный код. Я попытался определить переменную "role" в начале слота "entry":
tal:define="member context/portal_membership/getAuthenticatedMember;
roles python:member.getRolesInContext(item);"
и использовать условие для элемента, чтобы отображать только элементы, в которых пользователь имеет роль рецензента:
tal:condition="python:'Reviewer' in roles"
Вот ссылка на полный шаблон страницы: http://www.tempfiles.net/download/201110/214265/folder_listing.html
Когда я использую это, я просто не получаю результата. Я немного изменил его, чтобы на странице мне было показано, какую роль он играет, и я не думаю, что он играет роль текущего элемента.
Буду признателен за толчок в правильном направлении !!