Let users with empty permissions see certain pages

We’re going to make it possible for some users to be members of a
service, but not have any permissions (not even `view_activity`).

There are some pages that these users should still be able to see
These are the pages that a user with ‘basic view’ would have been able
to see, excluding those that let them send messages.
This commit is contained in:
Chris Hill-Scott
2018-08-06 11:09:57 +01:00
parent e34ca2a8ee
commit bbdbe61cad
6 changed files with 28 additions and 22 deletions

View File

@@ -46,7 +46,7 @@ page_headings = {
@main.route("/services/<service_id>/templates/<uuid:template_id>")
@login_required
@user_has_permissions('view_activity', 'send_messages')
@user_has_permissions()
def view_template(service_id, template_id):
if (
current_user.has_permissions('send_messages') and
@@ -106,7 +106,7 @@ def start_tour(service_id, template_id):
@main.route("/services/<service_id>/templates")
@main.route("/services/<service_id>/templates/<template_type>")
@login_required
@user_has_permissions('view_activity', 'send_messages')
@user_has_permissions()
def choose_template(service_id, template_type='all'):
templates = service_api_client.get_service_templates(service_id)['data']
@@ -161,7 +161,7 @@ def choose_template(service_id, template_type='all'):
@main.route("/services/<service_id>/templates/<template_id>.<filetype>")
@login_required
@user_has_permissions('view_activity', 'send_messages')
@user_has_permissions()
def view_letter_template_preview(service_id, template_id, filetype):
if filetype not in ('pdf', 'png'):
abort(404)
@@ -188,7 +188,7 @@ def _view_template_version(service_id, template_id, version, letters_as_pdf=Fals
@main.route("/services/<service_id>/templates/<template_id>/version/<int:version>")
@login_required
@user_has_permissions('view_activity')
@user_has_permissions()
def view_template_version(service_id, template_id, version):
return render_template(
'views/templates/template_history.html',
@@ -198,7 +198,7 @@ def view_template_version(service_id, template_id, version):
@main.route("/services/<service_id>/templates/<template_id>/version/<int:version>.<filetype>")
@login_required
@user_has_permissions('view_activity')
@user_has_permissions()
def view_template_version_preview(service_id, template_id, version, filetype):
db_template = service_api_client.get_service_template(service_id, template_id, version=version)['data']
return TemplatePreview.from_database_object(db_template, filetype)