permissions: properly flush user cache permissions in more cases of permission changes.

- fixed #5560
This commit is contained in:
Marcin Kuzminski 2019-08-20 10:48:36 +02:00
parent b234d9d721
commit 0cbb6b652a
17 changed files with 76 additions and 55 deletions

View file

@ -34,6 +34,7 @@ from rhodecode.lib.exceptions import AttachedForksError, AttachedPullRequestsErr
from rhodecode.lib.utils2 import safe_int
from rhodecode.lib.vcs import RepositoryError
from rhodecode.model.db import Session, UserFollowing, User, Repository
from rhodecode.model.permission import PermissionModel
from rhodecode.model.repo import RepoModel
from rhodecode.model.scm import ScmModel
@ -110,7 +111,7 @@ class RepoSettingsView(RepoAppView):
# flush permissions for all users defined in permissions
affected_user_ids = self._get_users_with_permissions().keys()
events.trigger(events.UserPermissionsChange(affected_user_ids))
PermissionModel().trigger_permission_flush(affected_user_ids)
raise HTTPFound(h.route_path('home'))