@@ -57,7 +57,7 @@ public function init()
5757 const PERMISSION_ROOT_ACCESS = 'cms.root ' ;
5858
5959 /**
60- * Роль администратора
60+ * Права администратора
6161 */
6262 const PERMISSION_ROLE_ADMIN_ACCESS = 'cms.admin-role-access ' ;
6363 /**
@@ -67,31 +67,71 @@ public function init()
6767
6868 const PERMISSION_ADMIN_DASHBOARDS_EDIT = 'cms.admin-dashboards-edit ' ;
6969
70- const PERMISSION_ELFINDER_USER_FILES = 'cms.elfinder-user-files ' ;
71- const PERMISSION_ELFINDER_COMMON_PUBLIC_FILES = 'cms.elfinder-common-public-files ' ;
72- const PERMISSION_ELFINDER_ADDITIONAL_FILES = 'cms.elfinder-additional-files ' ;
73-
7470 const PERMISSION_EDIT_VIEW_FILES = 'cms.edit-view-files ' ;
7571
76-
72+ //Гость
7773 const ROLE_GUEST = 'guest ' ;
78- const ROLE_ROOT = 'root ' ;
79- const ROLE_ADMIN = 'admin ' ;
80- const ROLE_MANGER = 'manager ' ;
81- const ROLE_EDITOR = 'editor ' ;
74+ //Зарегистрированныей пользователь
8275 const ROLE_USER = 'user ' ;
76+
77+ //Сотрудник, имеет доступ в админку
8378 const ROLE_WORKER = 'worker ' ;
8479
80+
81+ //Редактор контента управляет контентом, только своим
82+ const ROLE_EDITOR = 'editor ' ;
83+ /**
84+ * Главный редактор контента, управляет всем контентом, удаляет только свой
85+ */
86+ const ROLE_MAIN_EDITOR = 'main_editor ' ;
87+
88+ /**
89+ * Менеджер - работает в CRM. Управляет клиентами, компаниями, сделками и заказами
90+ */
91+ const ROLE_MANGER = 'manager ' ;
92+ /**
93+ * Маркетолог - доступны инструменты маркетинга. Настройка бонусов и скидок.
94+ */
95+ const ROLE_MARKETER = 'marketer ' ;
96+
97+
98+ //Администратор может управлять всем сайтом
99+ const ROLE_ADMIN = 'admin ' ;
100+
101+ //Суперпользователь!
102+ const ROLE_ROOT = 'root ' ;
103+
104+
105+ /**
106+ * @deprecated
107+ */
108+ const PERMISSION_ELFINDER_COMMON_PUBLIC_FILES = 'cms.elfinder-common-public-files ' ;
109+ /**
110+ * @deprecated
111+ */
112+ const PERMISSION_ELFINDER_USER_FILES = 'cms.elfinder-user-files ' ;
113+ /**
114+ * @deprecated
115+ */
116+ const PERMISSION_ELFINDER_ADDITIONAL_FILES = 'cms.elfinder-additional-files ' ;
117+
118+
85119 static public function protectedRoles ()
86120 {
87121 return [
88- static ::ROLE_ROOT ,
89- static ::ROLE_ADMIN ,
90- static ::ROLE_MANGER ,
91- static ::ROLE_EDITOR ,
92- static ::ROLE_USER ,
93122 static ::ROLE_GUEST ,
94123 static ::ROLE_WORKER ,
124+ static ::ROLE_USER ,
125+
126+ static ::ROLE_EDITOR ,
127+ static ::ROLE_MAIN_EDITOR ,
128+
129+ static ::ROLE_MANGER ,
130+ static ::ROLE_MARKETER ,
131+
132+ static ::ROLE_ADMIN ,
133+ static ::ROLE_ROOT ,
134+
95135 ];
96136 }
97137
@@ -422,6 +462,28 @@ public function updateRule($name, $rule)
422462
423463 return true ;
424464 }
465+ /**
466+ * @inheritdoc
467+ */
468+ public function updateRole ($ name , $ rule )
469+ {
470+ parent ::updateItem ($ name , $ rule );
471+
472+ $ this ->_invalidate (self ::CACHE_PART_ITEMS );
473+
474+ return true ;
475+ }
476+ /**
477+ * @inheritdoc
478+ */
479+ public function updatePermission ($ name , $ rule )
480+ {
481+ parent ::updateItem ($ name , $ rule );
482+
483+ $ this ->_invalidate (self ::CACHE_PART_ITEMS );
484+
485+ return true ;
486+ }
425487
426488 /**
427489 * @inheritdoc
0 commit comments