From 610a7898bb3821b78a36d263445112beca56d645 Mon Sep 17 00:00:00 2001 From: Andrew Croce Date: Mon, 27 Aug 2018 14:15:40 -0400 Subject: [PATCH] create a `user_can` method in template context, to check against user permissions add user permissions list to template context --- atst/routes/workspaces.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/atst/routes/workspaces.py b/atst/routes/workspaces.py index 64faac94..ce0def86 100644 --- a/atst/routes/workspaces.py +++ b/atst/routes/workspaces.py @@ -12,10 +12,11 @@ from atst.domain.workspaces import Workspaces from atst.domain.projects import Projects from atst.forms.new_project import NewProjectForm from atst.forms.new_member import NewMemberForm +from atst.domain.authz import Authorization +from atst.models.permissions import Permissions bp = Blueprint("workspaces", __name__) - @bp.context_processor def workspace(): workspace = None @@ -26,8 +27,17 @@ def workspace(): ) except UnauthorizedError: pass - return {"workspace": workspace} + def user_can(permission): + if workspace: + return Authorization.has_workspace_permission(g.current_user, workspace, permission) + return false + + return { + "workspace": workspace, + "permissions": Permissions, + "user_can": user_can + } @bp.route("/workspaces") def workspaces():