aboutsummaryrefslogtreecommitdiffstats
path: root/pysite/views/wiki/page.py
diff options
context:
space:
mode:
Diffstat (limited to 'pysite/views/wiki/page.py')
-rw-r--r--pysite/views/wiki/page.py13
1 files changed, 8 insertions, 5 deletions
diff --git a/pysite/views/wiki/page.py b/pysite/views/wiki/page.py
index 01c8fa8a..a7f60f02 100644
--- a/pysite/views/wiki/page.py
+++ b/pysite/views/wiki/page.py
@@ -1,8 +1,9 @@
# coding=utf-8
from flask import redirect, url_for
+from werkzeug.exceptions import NotFound
from pysite.base_route import RouteView
-from pysite.constants import ALL_STAFF_ROLES
+from pysite.constants import DEBUG_MODE, EDITOR_ROLES
from pysite.mixins import DBMixin
@@ -18,19 +19,21 @@ class PageView(RouteView, DBMixin):
if obj is None:
if self.is_staff():
- return redirect(url_for("wiki.edit", page=page))
+ return redirect(url_for("wiki.edit", page=page, can_edit=False))
- return self.render("wiki/page_missing.html", page=page)
- return self.render("wiki/page_view.html", page=page, data=obj)
+ raise NotFound()
+ return self.render("wiki/page_view.html", page=page, data=obj, can_edit=self.is_staff())
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 ALL_STAFF_ROLES:
+ if role in EDITOR_ROLES:
return True
return False