From 388e7eaa607290f1063e730af4882f9d2364ed46 Mon Sep 17 00:00:00 2001 From: Patrick Jentsch <p.jentsch@uni-bielefeld.de> Date: Mon, 11 Nov 2019 15:57:55 +0100 Subject: [PATCH] Add first implementation of loading modal --- app/corpora/events.py | 1 + app/templates/base.html.j2 | 8 ++++--- app/templates/corpora/corpus_analysis.html.j2 | 22 +++++++++++++++++++ 3 files changed, 28 insertions(+), 3 deletions(-) diff --git a/app/corpora/events.py b/app/corpora/events.py index 601cd654..3da43763 100644 --- a/app/corpora/events.py +++ b/app/corpora/events.py @@ -55,6 +55,7 @@ def observe_corpus_analysis_connection(app, corpus_id, session_id): username='opaque') analysis_client.connect() analysis_clients[session_id] = analysis_client + socketio.emit('init_corpus_analysis', 'Ready', room=session_id) while session_id in connected_sessions: try: analysis_client.ctrl_ping() diff --git a/app/templates/base.html.j2 b/app/templates/base.html.j2 index 2febaeab..1f0e4647 100644 --- a/app/templates/base.html.j2 +++ b/app/templates/base.html.j2 @@ -158,9 +158,7 @@ </header> <main class="grey lighten-5"> - {% block main_block %} - {% endblock %} - + {% block main_block %}{% endblock %} </main> <footer class="page-footer"> @@ -188,6 +186,10 @@ document.getElementById("new-job"), {"coverTrigger": false} ); + var loadingModal = document.getElementById("loading-modal"); + console.log(loadingModal); + M.Modal.init(loadingModal, {"dismissible": false}); + M.Modal.getInstance(loadingModal).open(); var entry; for (entry of document.querySelectorAll("#slide-out a:not(.subheader)")) { if (entry.href === window.location.href) { diff --git a/app/templates/corpora/corpus_analysis.html.j2 b/app/templates/corpora/corpus_analysis.html.j2 index 39599272..a742e919 100644 --- a/app/templates/corpora/corpus_analysis.html.j2 +++ b/app/templates/corpora/corpus_analysis.html.j2 @@ -3,6 +3,9 @@ {% block page_content %} <script> socket.emit('init_corpus_analysis', {{ corpus_id }}); +socket.on('init_corpus_analysis', function(msg) { + if (msg === 'Ready') {M.Modal.getInstance(document.getElementById("loading-modal")).close();} +}); </script> @@ -125,4 +128,23 @@ function sendQueryData() { console.log('Query data has been sent!') } </script> + +<div id="loading-modal" class="modal no-autoinit"> + <div class="modal-content"> + <h4>Waiting for analysis software</h4> + <div class="preloader-wrapper big active"> + <div class="spinner-layer spinner-blue-only"> + <div class="circle-clipper left"> + <div class="circle"></div> + </div> + <div class="gap-patch"> + <div class="circle"></div> + </div> + <div class="circle-clipper right"> + <div class="circle"></div> + </div> + </div> + </div> + </div> +</div> {% endblock %} -- GitLab