diff --git a/atdb/taskdatabase/templates/taskdatabase/base.html b/atdb/taskdatabase/templates/taskdatabase/base.html index 2e7799d65a1d4aa182147a006f744286e942ff9f..cfe0a241ee5ba90e96da266f7857fa4bd96f15c8 100644 --- a/atdb/taskdatabase/templates/taskdatabase/base.html +++ b/atdb/taskdatabase/templates/taskdatabase/base.html @@ -1,7 +1,7 @@ <!DOCTYPE html> {% load static %} - +{% load atdb_extra_tags %} <html lang="en"> <head> @@ -55,7 +55,9 @@ <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> - +{% comment %} + <li><a class="nav-link" href="{% url 'query2' request|current_query_params %}">Filter2</a></li> +{% endcomment %} <li><a class="nav-link" href="{% url 'monitoring' %}">Monitoring</a></li> <li><a class="nav-link" href="{% url 'diagram' %}">Diagram</a></li> diff --git a/atdb/taskdatabase/templates/taskdatabase/index.html b/atdb/taskdatabase/templates/taskdatabase/index.html index 1187bbc5b849a3ecfc487c03bf39d48b8177923f..5a3e8dcff4cc50a77f3ae53abc6f8d130745174b 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 - 15:00) + <p class="footer"> Version 1.0.0 (8 feb 2021 - 15:00) </div> diff --git a/atdb/taskdatabase/templatetags/__init__.py b/atdb/taskdatabase/templatetags/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/atdb/taskdatabase/templatetags/atdb_extra_tags.py b/atdb/taskdatabase/templatetags/atdb_extra_tags.py new file mode 100644 index 0000000000000000000000000000000000000000..f41778c41d0cf2493352d74591f26219769c8d93 --- /dev/null +++ b/atdb/taskdatabase/templatetags/atdb_extra_tags.py @@ -0,0 +1,17 @@ +from django import template + +register = template.Library() + +@register.filter +def expand_list(list): + s = '' + for key, value in list: + s = s + '&' + key + '=' + value + return s + +@register.filter +def current_query_params(request): + # expands the current query parameters into a string like: + # ?id=&status__icontains=defining&sas_id=178677 + params = "?"+request.session['current_query_params'][1:] + return params \ No newline at end of file diff --git a/atdb/taskdatabase/urls.py b/atdb/taskdatabase/urls.py index 47ab03e1a24b7fb6f30a7406f87c6ac813d87947..e881851e89c2b92ba3ed002227e868a85eccac56 100644 --- a/atdb/taskdatabase/urls.py +++ b/atdb/taskdatabase/urls.py @@ -28,7 +28,7 @@ urlpatterns = [ path('workflow_details/<id>/', views.WorkflowDetails, name='workflow-details'), path('query/', views.QueryView.as_view(), name='query'), - # path('dashboard/', views.DashboardView.as_view(), name='dashboard'), + #path('query2/<query_params>', views.QueryView.as_view(), name='query2'), # path('monitoring/', views.MonitoringView.as_view(), name='monitoring'), path('monitoring/', views.ShowMonitoring, name='monitoring'), diff --git a/atdb/taskdatabase/views.py b/atdb/taskdatabase/views.py index 2b06e3b23d094a6bffabc57545efe2e35f36ddc1..3161ae9e708470e1584c6d2c93f713c4cd6b210b 100644 --- a/atdb/taskdatabase/views.py +++ b/atdb/taskdatabase/views.py @@ -151,7 +151,6 @@ class MonitorFilter(filters.FilterSet): } # ---------- Tables2 Views (experimental) ----------- -# implementation with tables2: http://localhost:8000/atdb/tables2 class QueryView(SingleTableMixin, FilterView): table_class = TaskTable model = Task @@ -165,6 +164,9 @@ class QueryView(SingleTableMixin, FilterView): # https://stackoverflow.com/questions/7763115/django-passing-data-between-views count = self.object_list.count() + # q: how do I apply this before getting into get_table_data? + # current_query_params = self.request.session['current_query_params'] + try: limit = int(Configuration.objects.get(key='multi_change_limit').value) except: @@ -178,6 +180,7 @@ class QueryView(SingleTableMixin, FilterView): # store on the session self.request.session['filtered_tasks_as_list'] = filtered_tasks_as_list + return self.object_list