diff options
author | 2018-04-18 00:14:06 +0100 | |
---|---|---|
committer | 2018-04-18 00:14:06 +0100 | |
commit | 9e36e3d58c56e5ebb30242497e13d2e8ca82de1f (patch) | |
tree | 6cca173e7603b54787353cd56427df63c66b5e0d /pysite/views/wiki/history/show.py | |
parent | Fix sidebar routes (diff) |
Pass `can_edit` into history templates
Diffstat (limited to 'pysite/views/wiki/history/show.py')
-rw-r--r-- | pysite/views/wiki/history/show.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/pysite/views/wiki/history/show.py b/pysite/views/wiki/history/show.py index 9580816f..bbe2466d 100644 --- a/pysite/views/wiki/history/show.py +++ b/pysite/views/wiki/history/show.py @@ -4,6 +4,7 @@ import datetime from werkzeug.exceptions import NotFound from pysite.base_route import RouteView +from pysite.constants import DEBUG_MODE, EDITOR_ROLES from pysite.mixins import DBMixin @@ -25,3 +26,17 @@ class RevisionsListView(RouteView, DBMixin): results = sorted(results, key=lambda revision: revision["date"], reverse=True) return self.render("wiki/revision_list.html", page=page, revisions=results), 200 + + def is_staff(self): + if DEBUG_MODE: + return True + if not self.logged_in: + return False + + roles = self.user_data.get("roles", []) + + for role in roles: + if role in EDITOR_ROLES: + return True + + return False |