diff options
author | 2018-04-05 14:14:05 +0100 | |
---|---|---|
committer | 2018-04-05 14:14:05 +0100 | |
commit | 6a5de7cfdf5b419acd8258d5dbbd0b164662c140 (patch) | |
tree | 6a15fb90025330f615c954cb3a3aa7119410061e /templates/wiki | |
parent | That was a little dumb. (diff) |
More work towards the wiki
Diffstat (limited to 'templates/wiki')
-rw-r--r-- | templates/wiki/page_edit.html | 46 |
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 |