From 86d9ee1c0fc692d3ba14a47af810751ab5f83009 Mon Sep 17 00:00:00 2001
From: Vermaas <vermaas@astron.nl>
Date: Mon, 8 Jan 2024 14:29:05 +0100
Subject: [PATCH] add 'clear filter' button to all pages

---
 .../archived/clear_filter_button.html         |  3 +++
 .../taskdatabase/archived/filter_buttons.html | 20 ++++++++++++++++++
 .../templates/taskdatabase/archived/page.html |  4 ++--
 .../templates/taskdatabase/failures/page.html |  2 +-
 .../validation/clear_filter_button.html       |  3 +++
 .../validation/filter_buttons.html            | 21 +++++++++++++++++++
 .../taskdatabase/validation/page.html         |  4 +---
 atdb/taskdatabase/views.py                    | 15 ++++---------
 8 files changed, 55 insertions(+), 17 deletions(-)
 create mode 100644 atdb/taskdatabase/templates/taskdatabase/archived/clear_filter_button.html
 create mode 100644 atdb/taskdatabase/templates/taskdatabase/archived/filter_buttons.html
 create mode 100644 atdb/taskdatabase/templates/taskdatabase/validation/clear_filter_button.html
 create mode 100644 atdb/taskdatabase/templates/taskdatabase/validation/filter_buttons.html

diff --git a/atdb/taskdatabase/templates/taskdatabase/archived/clear_filter_button.html b/atdb/taskdatabase/templates/taskdatabase/archived/clear_filter_button.html
new file mode 100644
index 00000000..b2da2126
--- /dev/null
+++ b/atdb/taskdatabase/templates/taskdatabase/archived/clear_filter_button.html
@@ -0,0 +1,3 @@
+
+   <a href="{% url 'clear-filter' 'finished' %}" class="btn btn-success btn-sm" role="button"><i class="fas fa-window-close"></i> Clear Filter</a>
+
diff --git a/atdb/taskdatabase/templates/taskdatabase/archived/filter_buttons.html b/atdb/taskdatabase/templates/taskdatabase/archived/filter_buttons.html
new file mode 100644
index 00000000..f3439f4a
--- /dev/null
+++ b/atdb/taskdatabase/templates/taskdatabase/archived/filter_buttons.html
@@ -0,0 +1,20 @@
+
+
+        <div class="card">
+         <div class="card-body">
+           <table>
+
+             <tr>
+               <td>
+                   {% include "taskdatabase/archived/clear_filter_button.html" %}
+               </td>
+                 <td>
+                     {% include 'taskdatabase/filter/search.html' %}
+                 </td>
+             </tr>
+
+           </table>
+         </div>
+        </div>
+
+
diff --git a/atdb/taskdatabase/templates/taskdatabase/archived/page.html b/atdb/taskdatabase/templates/taskdatabase/archived/page.html
index 6bd1f77d..27982943 100644
--- a/atdb/taskdatabase/templates/taskdatabase/archived/page.html
+++ b/atdb/taskdatabase/templates/taskdatabase/archived/page.html
@@ -10,8 +10,8 @@
             <div class="col-12">
                 <h3>Finished</h3>
                 This overview shows the tasks that are <b>finished</b> and ingested into the LTA.
-                <hr>
-                <td>{% include 'taskdatabase/filter/search.html' %}</td>
+
+                {% include 'taskdatabase/archived/filter_buttons.html' %}&nbsp;
             </div>
         </div>
         <div class="row">
diff --git a/atdb/taskdatabase/templates/taskdatabase/failures/page.html b/atdb/taskdatabase/templates/taskdatabase/failures/page.html
index f1e742b8..161f50b9 100644
--- a/atdb/taskdatabase/templates/taskdatabase/failures/page.html
+++ b/atdb/taskdatabase/templates/taskdatabase/failures/page.html
@@ -11,7 +11,7 @@
                 <h3>Failures</h3>
                 These are all the tasks that <b>failed</b>.
                 Click 'Retry' to restart the this step in the workflow (see 'Diagram' in top menu).
-                <hr>
+
                 {% include 'taskdatabase/failures/filter_buttons.html' %}&nbsp;
 
             </div>
diff --git a/atdb/taskdatabase/templates/taskdatabase/validation/clear_filter_button.html b/atdb/taskdatabase/templates/taskdatabase/validation/clear_filter_button.html
new file mode 100644
index 00000000..6787f100
--- /dev/null
+++ b/atdb/taskdatabase/templates/taskdatabase/validation/clear_filter_button.html
@@ -0,0 +1,3 @@
+
+   <a href="{% url 'clear-filter' 'validation' %}" class="btn btn-success btn-sm" role="button"><i class="fas fa-window-close"></i> Clear Filter</a>
+
diff --git a/atdb/taskdatabase/templates/taskdatabase/validation/filter_buttons.html b/atdb/taskdatabase/templates/taskdatabase/validation/filter_buttons.html
new file mode 100644
index 00000000..54e0fffd
--- /dev/null
+++ b/atdb/taskdatabase/templates/taskdatabase/validation/filter_buttons.html
@@ -0,0 +1,21 @@
+
+
+        <div class="card">
+         <div class="card-body">
+           <table>
+
+             <tr>
+               <td>
+                   {% include "taskdatabase/validation/clear_filter_button.html" %}
+
+               </td>
+                 <td>
+                     {% include 'taskdatabase/filter/search.html' %}
+                 </td>
+             </tr>
+
+           </table>
+         </div>
+        </div>
+
+
diff --git a/atdb/taskdatabase/templates/taskdatabase/validation/page.html b/atdb/taskdatabase/templates/taskdatabase/validation/page.html
index b2434b97..195d5557 100644
--- a/atdb/taskdatabase/templates/taskdatabase/validation/page.html
+++ b/atdb/taskdatabase/templates/taskdatabase/validation/page.html
@@ -13,9 +13,7 @@
 
                 These are the SAS_ID's in status <b>stored</b> that can be validated. Click one of the quality buttons to validate.
 
-                <td>{% include 'taskdatabase/filter/search.html' %}</td>
-
-                <hr>
+                 {% include 'taskdatabase/validation/filter_buttons.html' %}&nbsp;
             </div>
         </div>
         <div class="row">
diff --git a/atdb/taskdatabase/views.py b/atdb/taskdatabase/views.py
index 281cdf6a..c6cb9235 100644
--- a/atdb/taskdatabase/views.py
+++ b/atdb/taskdatabase/views.py
@@ -1350,18 +1350,11 @@ def TaskClearFilter(request, redirect_to_page):
     request.session['search_box'] = ''
     request.session['filtered'] = False
 
+    try:
+        return redirect(redirect_to_page)
+    except:
+        return redirect_with_params('index', '?page=1')
 
-    if redirect_to_page == 'quality':
-        return redirect('quality')
-    if redirect_to_page == 'query':
-        return redirect('query')
-    if redirect_to_page == 'discarded':
-        return redirect('discarded')
-    if redirect_to_page == 'ingest':
-        return redirect('ingest')
-    if redirect_to_page == 'failures':
-        return redirect('failures')
-    return redirect_with_params('index', '?page=1')
 
 
 @login_required
-- 
GitLab