From 767c0da28ae5a2d0a3e357cf75203ccb78ef6b42 Mon Sep 17 00:00:00 2001 From: Marcin Kuzminski Date: Mon, 14 Jan 2019 22:16:57 +0100 Subject: [PATCH] permissions: flush default user permissions on global app permission changes. --- rhodecode/apps/admin/views/permissions.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/rhodecode/apps/admin/views/permissions.py b/rhodecode/apps/admin/views/permissions.py index d551a841..d2fe6eeb 100644 --- a/rhodecode/apps/admin/views/permissions.py +++ b/rhodecode/apps/admin/views/permissions.py @@ -32,7 +32,7 @@ from pyramid.response import Response from rhodecode.apps._base import BaseAppView, DataGridAppView from rhodecode.apps.ssh_support import SshKeyFileChangeEvent -from rhodecode.events import trigger +from rhodecode import events from rhodecode.lib import helpers as h from rhodecode.lib.auth import ( @@ -141,6 +141,9 @@ class AdminPermissionsView(BaseAppView, DataGridAppView): h.flash(_('Error occurred during update of permissions'), category='error') + affected_user_ids = [User.get_default_user().user_id] + events.trigger(events.UserPermissionsChange(affected_user_ids)) + raise HTTPFound(h.route_path('admin_permissions_application')) @LoginRequired() @@ -214,6 +217,9 @@ class AdminPermissionsView(BaseAppView, DataGridAppView): h.flash(_('Error occurred during update of permissions'), category='error') + affected_user_ids = [User.get_default_user().user_id] + events.trigger(events.UserPermissionsChange(affected_user_ids)) + raise HTTPFound(h.route_path('admin_permissions_object')) @LoginRequired() @@ -313,6 +319,9 @@ class AdminPermissionsView(BaseAppView, DataGridAppView): h.flash(_('Error occurred during update of permissions'), category='error') + affected_user_ids = [User.get_default_user().user_id] + events.trigger(events.UserPermissionsChange(affected_user_ids)) + raise HTTPFound(h.route_path('admin_permissions_global')) @LoginRequired() @@ -499,7 +508,7 @@ class AdminPermissionsView(BaseAppView, DataGridAppView): key_file = self.request.registry.settings.get( 'ssh.authorized_keys_file_path') if ssh_enabled: - trigger(SshKeyFileChangeEvent(), self.request.registry) + events.trigger(SshKeyFileChangeEvent(), self.request.registry) h.flash(_('Updated SSH keys file: {}').format(key_file), category='success') else: