Отредактируйте представление списка администратора / узла содержимого в зависимости от прав доступа к терминам таксономии в Drupal 8

У меня есть пользовательский тип контента "уведомления", где я добавил раскрывающееся поле для конкретного термина таксономии (предположим, что словарь страны и термины в нем - США, Великобритания и т. Д.). Только определенная пользовательская роль (предположительно note_editor) сможет добавлять уведомления (пользовательский тип контента, о котором я упоминал). Такие разрешения роли предоставляются для этой роли.

Теперь я установил модуль license_by_term и настроил его так, чтобы определенные пользователи с ролью note_editor имели доступ к условиям конкретной страны (например, пользователь note_user_1 имеет доступ к термину страны США, note_user_2 имеет доступ к термину страны Великобритании). В этой стране в раскрывающемся списке терминов в форме добавления уведомлений указаны только те страны, т.е. термины, к которым у текущего пользователя есть доступ. Таким образом, alert_user_1 получит только США в раскрывающемся списке стран в форме добавления уведомлений.

Редактируя представление admin/content, где отображается все содержимое, я добавил поле страны, в котором отображается термин страны, выбранный для этого уведомления. До сих пор все работает нормально. Но когда пользователь note_user_1 входит на сайт, на странице просмотра admin/content он может видеть все содержимое, включая уведомления, к которым у него есть доступ. Но мне нужно перечислить только те уведомления, которые имеют ту же страну, к которой имеет доступ note_user_1. В этом случае note_user_1 должен видеть только уведомления из страны США и редактировать их. Но происходит то, что он может видеть все содержимое, но не имеет разрешения на его редактирование / удаление, кроме тех случаев, когда у него есть доступ к стране. Другие уведомления из другой страны не перечислены, но в списке перечислены другие типы контента, например основные страницы.

Я также должен отозвать разрешение на просмотр другого содержимого. Я знаю, что мне нужно добавить фильтр в представлении содержимого. Но как это сделать, какой фильтр я должен использовать, чтобы показывать только те уведомления, к которым у него есть доступ к стране, и НИЧЕГО больше. А также я должен сделать это так, чтобы страница списка узлов других ролей пользователя не мешала. Роль администратора или другая роль администратора контента будет иметь то же представление списка узлов, что и раньше. Изменение только для этой роли пользователя.

Я также могу создать отдельное новое представление, но проблема с критериями фильтрации сохраняется. Я также открыт для написания кода в пользовательском модуле, но мне понадобятся некоторые предложения о том, что делать потом. Буду очень признателен, если кто-нибудь может предложить пролить свет на мою проблему!

0 ответов

Другие вопросы по тегам