Skip to content
Snippets Groups Projects
Commit 9005c583 authored by Patrick Jentsch's avatar Patrick Jentsch
Browse files

Add progress bar for file upload.

parent 22a12232
No related branches found
No related tags found
No related merge requests found
function sendNewJobFormData(form, progress) {
var XHR = new XMLHttpRequest();
var FD = new FormData(form);
XHR.upload.addEventListener("progress", function(event) {
progress.querySelector(".determinate").style.width = ((event.loaded / event.total) * 100).toString() + "%";
});
XHR.addEventListener("loadend", function(event) {
form.reset();
location.reload();
});
XHR.open("POST", window.location.href);
XHR.send(FD);
}
function initNewJobForm(newJobFormElement) {
newJobFormElement.addEventListener("submit", function(event) {
event.preventDefault();
var toast = M.toast(
{html: `<div class="row">
<div class="col s12">${this.title.value}</div>
<div class="col s12">
<div class="progress">
<div class="determinate" style="width: 0%"></div>
</div>
</div>
</div>`,
displayLength: Infinity}
);
sendNewJobFormData(this, toast.el.querySelector(".progress"));
});
}
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
<link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='css/materialize.min.css') }}" media="screen,projection"/> <link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='css/materialize.min.css') }}" media="screen,projection"/>
<link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='css/opaque.css') }}" media="screen,projection"/> <link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='css/opaque.css') }}" media="screen,projection"/>
<script src="{{ url_for('static', filename='js/Animations.js') }}"></script> <script src="{{ url_for('static', filename='js/Animations.js') }}"></script>
<script src="{{ url_for('static', filename='js/opaque.js') }}"></script>
<script src="{{ url_for('static', filename='js/jsonpatch.min.js') }}"></script> <script src="{{ url_for('static', filename='js/jsonpatch.min.js') }}"></script>
<script src="{{ url_for('static', filename='js/socket.io.js') }}"></script> <script src="{{ url_for('static', filename='js/socket.io.js') }}"></script>
<script src="{{ url_for('static', filename='js/list.js') }}"></script> <script src="{{ url_for('static', filename='js/list.js') }}"></script>
......
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
<div class="col s12"> <div class="col s12">
<div class="card"> <div class="card">
<form method="POST" enctype="multipart/form-data"> <form method="POST" enctype="multipart/form-data" id="new-nlp-job-form">
<div class="card-content"> <div class="card-content">
{{ new_nlp_job_form.hidden_tag() }} {{ new_nlp_job_form.hidden_tag() }}
<div class="row"> <div class="row">
...@@ -121,4 +121,7 @@ ...@@ -121,4 +121,7 @@
</form> </form>
</div> </div>
</div> </div>
<script>
initNewJobForm(document.getElementById("new-nlp-job-form"));
</script>
{% endblock %} {% endblock %}
...@@ -54,7 +54,7 @@ ...@@ -54,7 +54,7 @@
<div class="col s12"> <div class="col s12">
<div class="card"> <div class="card">
<form method="POST" enctype="multipart/form-data"> <form method="POST" enctype="multipart/form-data" id="new-ocr-job-form">
<div class="card-content"> <div class="card-content">
{{ new_ocr_job_form.hidden_tag() }} {{ new_ocr_job_form.hidden_tag() }}
<div class="row"> <div class="row">
...@@ -138,4 +138,7 @@ ...@@ -138,4 +138,7 @@
</form> </form>
</div> </div>
</div> </div>
<script>
initNewJobForm(document.getElementById("new-ocr-job-form"));
</script>
{% endblock %} {% endblock %}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment