aboutsummaryrefslogtreecommitdiffstats
path: root/templates/wiki
diff options
context:
space:
mode:
authorGravatar Gareth Coles <[email protected]>2018-04-05 14:14:05 +0100
committerGravatar Gareth Coles <[email protected]>2018-04-05 14:14:05 +0100
commit6a5de7cfdf5b419acd8258d5dbbd0b164662c140 (patch)
tree6a15fb90025330f615c954cb3a3aa7119410061e /templates/wiki
parentThat was a little dumb. (diff)
More work towards the wiki
Diffstat (limited to 'templates/wiki')
-rw-r--r--templates/wiki/page_edit.html46
1 files changed, 43 insertions, 3 deletions
diff --git a/templates/wiki/page_edit.html b/templates/wiki/page_edit.html
index 5601cbbf..97a5161c 100644
--- a/templates/wiki/page_edit.html
+++ b/templates/wiki/page_edit.html
@@ -4,8 +4,48 @@
{% block og_description %}Landing page for the wiki{% endblock %}
{% block content %}
<div class="uk-container uk-section">
- <h1 class="uk-title uk-text-center">
- Placeholder text.
- </h1>
+ <form action="{{ url_for("wiki.edit", page=page) }}" method="post">
+ <label for="title">Title: </label>
+ <input name="title" id="title" value="{{ title }}" class="uk-input" />
+ <label for="rst">Document: </label>
+ <textarea name="rst" id="rst" class="uk-textarea">{{ rst }}</textarea>
+ <button value="Preview" id="preview">Preview</button>
+ <button type="submit" value="Save">Save</button>
+ <input type="hidden" name="csrf_token" value="{{ csrf_token() }}"/>
+ </form>
+
+ <div id="preview-div" style="border: 1px solid grey;">
+ <p>Preview will appear here.</p>
+ </div>
</div>
+
+ <script type="application/javascript">
+ "use strict";
+
+ let csrf_token = "{{ csrf_token() }}";
+
+ document.getElementById("preview").onclick = function(event) {
+ let oReq = new XMLHttpRequest();
+ let data = document.getElementById("rst").value;
+
+ oReq.addEventListener("load", function() {
+ let response = JSON.parse(this.responseText);
+
+ if (response.error !== undefined) {
+ console.log("Error: " + response.error)
+ } else {
+ document.getElementById("preview-div").innerHTML = response.data;
+ }
+ });
+
+ oReq.open("POST", "/render");
+
+ oReq.setRequestHeader("Content-type", "application/json");
+ oReq.setRequestHeader("X-CSRFToken", csrf_token);
+
+ oReq.send(JSON.stringify({"data": data}));
+
+ return false;
+ }
+ </script>
{% endblock %} \ No newline at end of file