From 9aaf14c803021f8bcc4292887af42cce92b30a77 Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Thu, 12 Apr 2018 16:41:39 +0100 Subject: [Wiki] Fix pages being wiped when saved without edits --- pysite/views/wiki/edit.py | 5 +++++ templates/wiki/page_edit.html | 9 ++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/pysite/views/wiki/edit.py b/pysite/views/wiki/edit.py index a2e98e20..0d70fed5 100644 --- a/pysite/views/wiki/edit.py +++ b/pysite/views/wiki/edit.py @@ -1,5 +1,6 @@ # coding=utf-8 from flask import request, url_for +from werkzeug.exceptions import BadRequest from werkzeug.utils import redirect from pysite.base_route import RouteView @@ -35,6 +36,10 @@ class EditView(RouteView, DBMixin): @csrf def post(self, page): rst = request.form["rst"] + + if not rst.strip(): + raise BadRequest() + rendered = render(rst) obj = { diff --git a/templates/wiki/page_edit.html b/templates/wiki/page_edit.html index b797577d..b59a8912 100644 --- a/templates/wiki/page_edit.html +++ b/templates/wiki/page_edit.html @@ -14,7 +14,7 @@
- +
{{ rst }}
@@ -61,6 +61,13 @@ } }); + let data = editor.getValue(); + + if (data.replace("\s", "").length < 1) { + document.getElementById("submit").disabled = true; + return false; + } + oReq.open("POST", "/render"); oReq.setRequestHeader("Content-type", "application/json"); -- cgit v1.2.3