diff --git a/atdb/taskdatabase/services/algorithms.py b/atdb/taskdatabase/services/algorithms.py
index 0489a857b0231f25120047d52bd4e0cb33f2840f..3db3fa8364398018e841ed568b357db120eceac3 100644
--- a/atdb/taskdatabase/services/algorithms.py
+++ b/atdb/taskdatabase/services/algorithms.py
@@ -472,13 +472,6 @@ def highlight_value(values, value_to_highlight):
 
 def construct_tasks_per_workflow_html(request, workflow_results):
 
-    try:
-        query_list_of_ids = request.session['query_list_of_ids']
-        current_query_params = request.session['current_query_params']
-    except:
-        pass
-
-
     # --- Progress of tasks per active workflow ---
     results_tasks = "<p>Progress of tasks per workflow</p>"
 
@@ -618,11 +611,13 @@ def construct_logs_per_workflow_html(request, workflow_results):
 def construct_dashboard_html(request, selection):
     # gather and construct the dashboard based on the requested selection
 
+    filtered_tasks = Task.objects.all()
     try:
-        filtered_tasks_as_list = request.session['filtered_tasks_as_list']
-        filtered_tasks = Task.objects.filter(id__in=filtered_tasks_as_list)
+        if 'applyfilter' in selection:
+            filtered_tasks_as_list = request.session['filtered_tasks_as_list']
+            filtered_tasks = Task.objects.filter(id__in=filtered_tasks_as_list)
     except:
-        filtered_tasks = Task.objects.all()
+        pass
 
     # --- Progress of tasks per active workflow ---
     workflow_results = aggregate_resources_tasks(request, selection, filtered_tasks)
diff --git a/atdb/taskdatabase/templates/dashboard/toggles.html b/atdb/taskdatabase/templates/dashboard/toggles.html
index 1cdf43c17e07c3c83bf1a00463670c366b6c34fc..07829575d3b096c6714a301d9b1e8fa97629ac29 100644
--- a/atdb/taskdatabase/templates/dashboard/toggles.html
+++ b/atdb/taskdatabase/templates/dashboard/toggles.html
@@ -9,7 +9,7 @@
            data-onstyle="warning"
            data-offstyle="primary"
            data-style
-           {% if not 'active' in toggle_selection %} checked {% endif %}
+           {% if not 'active' in selection %} checked {% endif %}
     >&nbsp;
 
     <input type="checkbox"
@@ -24,6 +24,17 @@
            {% if 'resources' in selection %} checked {% endif %}
     >&nbsp;
 
+        <input type="checkbox"
+           id = "apply_filter"
+           name="apply_filter"
+           data-on="Latest Filter Applied"
+           data-off="No Filter Applied"
+           data-toggle="toggle"
+           data-onstyle="primary"
+           data-offstyle="secondary"
+           data-style
+           {% if 'applyfilter' in selection %} checked {% endif %}
+    >&nbsp;
 
     <script>
       $(function() {
@@ -58,4 +69,21 @@
         })
       })
     </script>
+
+    <script>
+      $(function() {
+        $('#apply_filter').change(function() {
+
+          let url = location.href
+          if ($(this).prop('checked')) {
+            url = url.replace('nofilter','applyfilter');
+            location.assign(url);
+          } else {
+            url = url.replace('applyfilter','nofilter');
+            location.assign(url);
+          }
+
+        })
+      })
+    </script>
 </table>
\ No newline at end of file
diff --git a/atdb/taskdatabase/templates/taskdatabase/base.html b/atdb/taskdatabase/templates/taskdatabase/base.html
index 1ca7e6141cdf3d1ff27a875b5898b3927b8cb39b..2e7799d65a1d4aa182147a006f744286e942ff9f 100644
--- a/atdb/taskdatabase/templates/taskdatabase/base.html
+++ b/atdb/taskdatabase/templates/taskdatabase/base.html
@@ -52,7 +52,7 @@
                     <li><a class="nav-link" href="{% url 'quality' %}">Quality</a></li>
                 {% endif %}
 
-                <li><a class="nav-link" href="{% url 'dashboard' 'active_nores' %}">Dashboard</a></li>
+                <li><a class="nav-link" href="{% url 'dashboard' 'active_nores_nofilter' %}">Dashboard</a></li>
 
                 <li><a class="nav-link" href="{% url 'query' %}">Filter</a></li>
 
diff --git a/atdb/taskdatabase/templates/taskdatabase/index.html b/atdb/taskdatabase/templates/taskdatabase/index.html
index 1abdb6fea53d5e3d95a5c0bcdcde826110db5c90..1187bbc5b849a3ecfc487c03bf39d48b8177923f 100644
--- a/atdb/taskdatabase/templates/taskdatabase/index.html
+++ b/atdb/taskdatabase/templates/taskdatabase/index.html
@@ -34,7 +34,7 @@
         {% include 'taskdatabase/pagination.html' %}
        </div>
     </div>
-    <p class="footer"> Version 1.0.0 (7 feb 2021 - 14:00)
+    <p class="footer"> Version 1.0.0 (7 feb 2021 - 15:00)
 
 </div>
 
diff --git a/atdb/taskdatabase/views.py b/atdb/taskdatabase/views.py
index 203c6361023932262d419156100b92d7fa3906b6..2b06e3b23d094a6bffabc57545efe2e35f36ddc1 100644
--- a/atdb/taskdatabase/views.py
+++ b/atdb/taskdatabase/views.py
@@ -178,7 +178,6 @@ class QueryView(SingleTableMixin, FilterView):
 
         # store on the session
         self.request.session['filtered_tasks_as_list'] = filtered_tasks_as_list
-        self.request.session['query_list_of_ids'] = query_list_of_ids
         return self.object_list
 
 
@@ -488,7 +487,7 @@ def ShowDashboard(request, selection):
     return render(request, "dashboard/dashboard.html",
                   {'results_tasks': results_tasks,
                    'results_logs': results_logs,
-                   'toggle_selection': selection})
+                   'selection': selection})
 
 
 def WorkflowDetails(request, id):
@@ -812,7 +811,6 @@ def TaskClearFilter(request):
     request.session['task_filter'] = 'all'
     request.session['task_onhold_filter'] = None
     request.session['filtered_tasks_as_list'] = None
-    request.session['query_list_of_ids'] = None
     request.session['search_box'] = ''
     return redirect('/atdb/?page=1')
 
@@ -881,13 +879,13 @@ def TaskSetStatusTables2(request, pk, new_status, query_params):
 @login_required
 def TaskMultiStatus(request, new_status, query_params):
     # get the list of id's from the session
-    query_list_of_ids = request.session['query_list_of_ids']
-    count = len(query_list_of_ids)
+    filtered_tasks_as_list = request.session['filtered_tasks_as_list']
+    count = len(filtered_tasks_as_list)
 
     if request.method == "POST":
 
-        for id in query_list_of_ids:
-            task = Task.objects.get(id=id[0])
+        for id in filtered_tasks_as_list:
+            task = Task.objects.get(id=id)
             task.new_status = new_status
             task.save()
 
@@ -905,13 +903,13 @@ def TaskMultiStatus(request, new_status, query_params):
 @login_required
 def TaskMultiHold(request, onhold, query_params):
     # get the list of id's from the session
-    query_list_of_ids = request.session['query_list_of_ids']
-    count = len(query_list_of_ids)
+    filtered_tasks_as_list = request.session['filtered_tasks_as_list']
+    count = len(filtered_tasks_as_list)
 
     if request.method == "POST":
 
-        for id in query_list_of_ids:
-            task = Task.objects.get(id=id[0])
+        for id in filtered_tasks_as_list:
+            task = Task.objects.get(id=id)
             task.resume = (onhold == 'resume')
             task.save()