Skip to content
Snippets Groups Projects
Commit c8f2d28c authored by Nico Vermaas's avatar Nico Vermaas
Browse files

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	atdb/taskdatabase/templates/taskdatabase/index.html
parents 82d4f69a 9431b3dc
Branches
No related tags found
1 merge request!256Master
Pipeline #30149 passed
Showing with 191 additions and 169 deletions
<a href="{% url 'clear-filter' %}" class="btn btn-secondary btn-sm" role="button"><i class="fas fa-window-close"></i> Clear Filter</a> {% if request.session.filtered == True %}
<a href="{% url 'clear-filter' 'index' %}" class="btn btn-success btn-sm" role="button"><i class="fas fa-window-close"></i> No Filter</a>
{% endif %}
...@@ -3,29 +3,38 @@ ...@@ -3,29 +3,38 @@
<div class="card"> <div class="card">
<div class="card-body"> <div class="card-body">
<table> <table>
<tr><td>Click to Filter</td></tr>
<tr>
{% if request.session.task_filter == "all" %}
<td>Click to Filter</td>
{% else %}
<td>Click to Filter ({{request.session.task_filter}})</td>
{% endif %}
</tr>
<tr> <tr>
<td> <td>
{% include "taskdatabase/filter/clear_filter_button.html" %} {% include "taskdatabase/filter/clear_filter_button.html" %}
<a href="{% url 'task-set-active-filter' %}" class="btn btn-secondary btn-sm" role="button"><i class="fas fa-layer-group"></i> Active</a> <a href="{% url 'task-set-active-filter' 'tasks' %}" class="btn btn-secondary btn-sm" role="button"><i class="fas fa-layer-group"></i> Active</a>
<a href="{% url 'task-set-filter' 'failed' %}" class="btn btn-secondary btn-sm" role="button"><i class="fas fa-layer-group"></i> Failed</a> <a href="{% url 'task-set-filter' 'failed' 'tasks' %}" class="btn btn-secondary btn-sm" role="button"><i class="fas fa-layer-group"></i> Failed</a>
<a href="{% url 'task-set-onhold-filter' True %}" class="btn btn-secondary btn-sm" role="button"><i class="fas fa-layer-group"></i> On Hold</a> <a href="{% url 'task-set-onhold-filter' True 'tasks' %}" class="btn btn-secondary btn-sm" role="button"><i class="fas fa-layer-group"></i> On Hold</a>
<a href="{% url 'task-set-filter' 'defined' %}" class="btn btn-secondary btn-sm" role="button">defined</a> <a href="{% url 'task-set-filter' 'defined' 'tasks' %}" class="btn btn-secondary btn-sm" role="button">defined</a>
<a href="{% url 'task-set-filter' 'staging' %}" class="btn btn-secondary btn-sm" role="button"><i>staging</i></a> <a href="{% url 'task-set-filter' 'staging' 'tasks' %}" class="btn btn-secondary btn-sm" role="button"><i>staging</i></a>
<a href="{% url 'task-set-filter' 'staged' %}" class="btn btn-secondary btn-sm" role="button">staged</a> <a href="{% url 'task-set-filter' 'staged' 'tasks' %}" class="btn btn-secondary btn-sm" role="button">staged</a>
<a href="{% url 'task-set-filter' 'fetching' %}" class="btn btn-secondary btn-sm" role="button"><i>fetching</i></a> <a href="{% url 'task-set-filter' 'fetching' 'tasks' %}" class="btn btn-secondary btn-sm" role="button"><i>fetching</i></a>
<a href="{% url 'task-set-filter' 'fetched' %}" class="btn btn-secondary btn-sm" role="button">fetched</a> <a href="{% url 'task-set-filter' 'fetched' 'tasks' %}" class="btn btn-secondary btn-sm" role="button">fetched</a>
<a href="{% url 'task-set-filter' 'processing' %}" class="btn btn-secondary btn-sm" role="button"><i>processing</i></a> <a href="{% url 'task-set-filter' 'processing' 'tasks' %}" class="btn btn-secondary btn-sm" role="button"><i>processing</i></a>
<a href="{% url 'task-set-filter' 'processed' %}" class="btn btn-secondary btn-sm" role="button">processed</a> <a href="{% url 'task-set-filter' 'processed' 'tasks' %}" class="btn btn-secondary btn-sm" role="button">processed</a>
<a href="{% url 'task-set-filter' 'storing' %}" class="btn btn-secondary btn-sm" role="button"><i>storing</i></a> <a href="{% url 'task-set-filter' 'storing' 'tasks' %}" class="btn btn-secondary btn-sm" role="button"><i>storing</i></a>
<a href="{% url 'task-set-filter' 'stored' %}" class="btn btn-secondary btn-sm" role="button">stored</a> <a href="{% url 'task-set-filter' 'stored' 'tasks' %}" class="btn btn-secondary btn-sm" role="button">stored</a>
<a href="{% url 'task-set-filter' 'validated' %}" class="btn btn-secondary btn-sm" role="button">validated</a> <a href="{% url 'task-set-filter' 'validated' 'tasks' %}" class="btn btn-secondary btn-sm" role="button">validated</a>
<a href="{% url 'task-set-filter' 'scrubbing' %}" class="btn btn-secondary btn-sm" role="button"><i>scrubbing</i></a> <a href="{% url 'task-set-filter' 'scrubbing' 'tasks' %}" class="btn btn-secondary btn-sm" role="button"><i>scrubbing</i></a>
<a href="{% url 'task-set-filter' 'scrubbed' %}" class="btn btn-secondary btn-sm" role="button">scrubbed</a> <a href="{% url 'task-set-filter' 'scrubbed' 'tasks' %}" class="btn btn-secondary btn-sm" role="button">scrubbed</a>
<a href="{% url 'task-set-filter' 'archiving' %}" class="btn btn-secondary btn-sm" role="button"><i>archiving</i></a> <a href="{% url 'task-set-filter' 'archiving' 'tasks' %}" class="btn btn-secondary btn-sm" role="button"><i>archiving</i></a>
<a href="{% url 'task-set-filter' 'archived' %}" class="btn btn-secondary btn-sm" role="button">archived</a> <a href="{% url 'task-set-filter' 'archived' 'tasks' %}" class="btn btn-secondary btn-sm" role="button">archived</a>
<a href="{% url 'task-set-filter' 'finished' %}" class="btn btn-secondary btn-sm" role="button">finished</a> <a href="{% url 'task-set-filter' 'finished' 'tasks' %}" class="btn btn-secondary btn-sm" role="button">finished</a>
</td> </td>
<td> <td>
......
{% if request.session.filtered == True %}
<a href="{% url 'clear-filter' 'quality' %}" class="btn btn-success btn-sm" role="button"><i class="fas fa-window-close"></i> No Filter</a>
{% endif %}
<div class="card">
<div class="card-body">
<table>
<tr>
{% if request.session.task_filter == "all" %}
<td>Click to Filter</td>
{% else %}
<td>Click to Filter ({{request.session.task_filter}})</td>
{% endif %}
</tr>
<tr>
<td>
{% include "taskdatabase/quality/clear_filter_button.html" %}
<a href="{% url 'task-set-active-filter' 'quality' %}" class="btn btn-secondary btn-sm" role="button"><i class="fas fa-layer-group"></i> Active</a>
<a href="{% url 'task-set-filter' 'failed' 'quality' %}" class="btn btn-secondary btn-sm" role="button"><i class="fas fa-layer-group"></i> Failed</a>
<a href="{% url 'task-set-onhold-filter' True 'quality' %}" class="btn btn-secondary btn-sm" role="button"><i class="fas fa-layer-group"></i> On Hold</a>
<a href="{% url 'task-set-filter' 'defined' 'quality' %}" class="btn btn-secondary btn-sm" role="button">defined</a>
<a href="{% url 'task-set-filter' 'staging' 'quality' %}" class="btn btn-secondary btn-sm" role="button"><i>staging</i></a>
<a href="{% url 'task-set-filter' 'staged' 'quality' %}" class="btn btn-secondary btn-sm" role="button">staged</a>
<a href="{% url 'task-set-filter' 'fetching' 'quality' %}" class="btn btn-secondary btn-sm" role="button"><i>fetching</i></a>
<a href="{% url 'task-set-filter' 'fetched' 'quality' %}" class="btn btn-secondary btn-sm" role="button">fetched</a>
<a href="{% url 'task-set-filter' 'processing' 'quality' %}" class="btn btn-secondary btn-sm" role="button"><i>processing</i></a>
<a href="{% url 'task-set-filter' 'processed' 'quality' %}" class="btn btn-secondary btn-sm" role="button">processed</a>
<a href="{% url 'task-set-filter' 'storing' 'quality' %}" class="btn btn-secondary btn-sm" role="button"><i>storing</i></a>
<a href="{% url 'task-set-filter' 'stored' 'quality' %}" class="btn btn-secondary btn-sm" role="button">stored</a>
<a href="{% url 'task-set-filter' 'validated' 'quality' %}" class="btn btn-secondary btn-sm" role="button">validated</a>
<a href="{% url 'task-set-filter' 'scrubbing' 'quality' %}" class="btn btn-secondary btn-sm" role="button"><i>scrubbing</i></a>
<a href="{% url 'task-set-filter' 'scrubbed' 'quality' %}" class="btn btn-secondary btn-sm" role="button">scrubbed</a>
<a href="{% url 'task-set-filter' 'archiving' 'quality' %}" class="btn btn-secondary btn-sm" role="button"><i>archiving</i></a>
<a href="{% url 'task-set-filter' 'archived' 'quality' %}" class="btn btn-secondary btn-sm" role="button">archived</a>
<a href="{% url 'task-set-filter' 'finished' 'quality' %}" class="btn btn-secondary btn-sm" role="button">finished</a>
</td>
<td>
{% include 'taskdatabase/filter/search.html' %}
</td>
</tr>
</table>
</div>
</div>
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
<h3>Quality Diagnostics</h3> <h3>Quality Diagnostics</h3>
This overview shows the Quality Diagnostics of all the task that have this information. This overview shows the Quality Diagnostics of all the task that have this information.
<hr> <hr>
{% include 'taskdatabase/filter/filter_buttons.html' %}&nbsp; {% include 'taskdatabase/quality/filter_buttons.html' %}&nbsp;
</div> </div>
</div> </div>
<div class="row"> <div class="row">
......
...@@ -42,8 +42,11 @@ ...@@ -42,8 +42,11 @@
<td>{{value}}</td> <td>{{value}}</td>
{% endfor %} {% endfor %}
<td> <td>
<a href="" <a class="open-modal btn btn-primary btn-sm"
class="btn btn-primary btn-sm" role="button" target="_blank"><img src="{% static 'taskdatabase/surfsara.jpg' %}" height="20" alt="this is a placeholder, links to plots will follow"></a>&nbsp; href="{% url 'inspection-plots' task.id my_tasks.number %}"
data-popup-url="{% url 'inspection-plots' task.id my_tasks.number %}">
<img src="{% static 'taskdatabase/surfsara.jpg' %}" height="20" alt="inspection plots">
</a>&nbsp;
</td> </td>
{% else %} {% else %}
<td>-</td><td>-</td><td>-</td><td>-</td> <td>-</td><td>-</td><td>-</td><td>-</td>
......
{% if request.session.filtered == True %}
<a href="{% url 'clear-filter' 'query' %}" class="btn btn-success btn-sm" role="button"><i class="fas fa-window-close"></i> No Filter</a>
{% else %}
<a href="{% url 'clear-filter' 'query' %}" class="btn btn-secondary btn-sm" role="button"><i class="fas fa-window-close"></i> No Filter</a>
{% endif %}
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
<form action="" method="get" class="form form-inline"> <form action="" method="get" class="form form-inline">
{% bootstrap_form filter.form layout='inline' %} {% bootstrap_form filter.form layout='inline' %}
&nbsp;<button type="submit" class="btn-secondary btn-sm" title="Filter"><i class="fas fa-filter"></i> Filter</button> &nbsp;<button type="submit" class="btn-secondary btn-sm" title="Filter"><i class="fas fa-filter"></i> Filter</button>
{% include "taskdatabase/filter/clear_filter_button.html" %} {% include "taskdatabase/query/clear_filter_button.html" %}
</form> </form>
</div> </div>
{% endif %} {% endif %}
......
...@@ -95,11 +95,10 @@ urlpatterns = [ ...@@ -95,11 +95,10 @@ urlpatterns = [
path('tasks/<int:pk>/change_priority/<priority_change>', views.ChangePriority, name='task-change-priority'), path('tasks/<int:pk>/change_priority/<priority_change>', views.ChangePriority, name='task-change-priority'),
path('tasks/sort-tasks/<sort>/<redirect_to_page>', views.SortTasks, name='sort-tasks'), path('tasks/sort-tasks/<sort>/<redirect_to_page>', views.SortTasks, name='sort-tasks'),
path('tasks/set_filter/<filter>/<redirect_to_page>', views.TaskSetFilter, name='task-set-filter'),
path('tasks/set_filter/<filter>', views.TaskSetFilter, name='task-set-filter'), path('tasks/set_active_filter/<redirect_to_page>', views.TaskSetActiveFilter, name='task-set-active-filter'),
path('tasks/set_active_filter', views.TaskSetActiveFilter, name='task-set-active-filter'), path('tasks/task-set-onhold-filter/<onhold>/<redirect_to_page>', views.TaskSetOnHoldFilter, name='task-set-onhold-filter'),
path('tasks/task-set-onhold-filter/<onhold>', views.TaskSetOnHoldFilter, name='task-set-onhold-filter'), path('tasks/clear_filter/<redirect_to_page>', views.TaskClearFilter, name='clear-filter'),
path('tasks/clear_filter/', views.TaskClearFilter, name='clear-filter'),
path('tasks/<int:pk>/set_status/<new_status>/<query_params>', views.TaskSetStatusTables2, name = 'task-setstatus'), path('tasks/<int:pk>/set_status/<new_status>/<query_params>', views.TaskSetStatusTables2, name = 'task-setstatus'),
path('tasks/set_status_multi/<new_status>/<query_params>', views.TaskMultiStatus, name='task-multi-setstatus'), path('tasks/set_status_multi/<new_status>/<query_params>', views.TaskMultiStatus, name='task-multi-setstatus'),
......
...@@ -211,39 +211,8 @@ class IndexView(ListView): ...@@ -211,39 +211,8 @@ class IndexView(ListView):
context_object_name = 'my_tasks' context_object_name = 'my_tasks'
def get_queryset(self): def get_queryset(self):
status = self.request.GET.get('status')
search_box = self.request.GET.get('search_box', None)
# get the sort variable from the session or use default tasks = get_filtered_tasks(self.request)
try:
sort = self.request.session['sort']
except:
sort = '-creationTime'
tasks = Task.objects.order_by(sort)
# check if there is a 'task_filter' put on the session
try:
filter = self.request.session['task_filter']
if filter != 'all':
tasks = get_filtered_tasks(filter, sort)
except:
pass
# check if there is a 'task_onhold_filter' put on the session
try:
onhold = self.request.session['task_onhold_filter']
if onhold != None:
tasks = tasks.filter(resume=not onhold)
except:
pass
if (search_box is not None):
tasks = get_filtered_tasks(search_box, sort)
# only return the 'regular' tasks, and not the 'postprocessing' tasks in the GUI
# tasks = tasks.filter(task_type='regular')
paginator = Paginator(tasks, config.TASKS_PER_PAGE) # Show 50 tasks per page paginator = Paginator(tasks, config.TASKS_PER_PAGE) # Show 50 tasks per page
page = self.request.GET.get('page') page = self.request.GET.get('page')
...@@ -279,38 +248,9 @@ class PostProcessingTasksView(ListView): ...@@ -279,38 +248,9 @@ class PostProcessingTasksView(ListView):
context_object_name = 'my_tasks' context_object_name = 'my_tasks'
def get_queryset(self): def get_queryset(self):
status = self.request.GET.get('status') tasks = get_filtered_tasks(self.request)
search_box = self.request.GET.get('search_box', None)
# get the sort variable from the session or use default
try:
sort = self.request.session['sort']
except:
sort = '-creationTime'
tasks = Task.objects.order_by(sort)
# check if there is a 'task_filter' put on the session
try:
filter = self.request.session['task_filter']
if filter != 'all':
tasks = get_filtered_tasks(filter, sort)
except:
pass
# check if there is a 'task_onhold_filter' put on the session
try:
onhold = self.request.session['task_onhold_filter']
if onhold != None:
tasks = tasks.filter(resume=not onhold)
except: # only return the 'postprocessing' tasks, and not the 'regular' tasks in the GUI
pass
if (search_box is not None):
tasks = get_filtered_tasks(search_box, sort)
# only return the 'regular' tasks, and not the 'postprocessing' tasks in the GUI
tasks = tasks.filter(task_type='postprocessing') tasks = tasks.filter(task_type='postprocessing')
paginator = Paginator(tasks, config.TASKS_PER_PAGE) # Show 50 tasks per page paginator = Paginator(tasks, config.TASKS_PER_PAGE) # Show 50 tasks per page
...@@ -348,26 +288,8 @@ class ShowQualityPage(ListView): ...@@ -348,26 +288,8 @@ class ShowQualityPage(ListView):
context_object_name = 'my_tasks' context_object_name = 'my_tasks'
def get_queryset(self): def get_queryset(self):
search_box = self.request.GET.get('search_box', None)
# get the sort variable from the session or use default
try:
sort = self.request.session['sort']
except:
sort = '-creationTime'
tasks = Task.objects.order_by(sort) tasks = get_filtered_tasks(self.request)
# check if there is a 'task_filter' put on the session
try:
filter = self.request.session['task_filter']
if filter != 'all':
tasks = get_filtered_tasks(filter, sort)
except:
pass
if (search_box is not None):
tasks = get_filtered_tasks(search_box, sort)
# exclude the tasks without quality information # exclude the tasks without quality information
tasks = tasks.exclude(outputs__quality__isnull=True) tasks = tasks.exclude(outputs__quality__isnull=True)
...@@ -408,26 +330,9 @@ class ShowValidationPage(ListView): ...@@ -408,26 +330,9 @@ class ShowValidationPage(ListView):
context_object_name = 'my_tasks' context_object_name = 'my_tasks'
def get_queryset(self): def get_queryset(self):
search_box = self.request.GET.get('search_box', None)
# get the sort variable from the session or use default stored_tasks = Task.objects.filter(status__icontains='stored')
try: tasks = get_filtered_tasks(self.request, stored_tasks)
sort = self.request.session['sort']
except:
sort = '-creationTime'
stored_tasks = Task.objects.filter(status__icontains='stored').order_by(sort)
tasks = stored_tasks
# check if there is a 'task_filter' put on the session
try:
filter = self.request.session['task_filter']
if filter != 'all':
tasks = get_filtered_tasks(filter, sort, stored_tasks)
except:
pass
if (search_box is not None):
tasks = get_filtered_tasks(search_box, sort, stored_tasks)
# exclude the failed tasks # exclude the failed tasks
tasks = tasks.exclude(status__icontains="failed") tasks = tasks.exclude(status__icontains="failed")
...@@ -467,27 +372,9 @@ class ShowFailuresPage(ListView): ...@@ -467,27 +372,9 @@ class ShowFailuresPage(ListView):
context_object_name = 'my_tasks' context_object_name = 'my_tasks'
def get_queryset(self): def get_queryset(self):
search_box = self.request.GET.get('search_box', None)
# get the sort variable from the session or use default
try:
sort = self.request.session['sort']
except:
sort = '-creationTime'
failed_tasks = Task.objects.filter(status__icontains='failed').order_by(sort) failed_tasks = Task.objects.filter(status__icontains='failed')
tasks = failed_tasks tasks = get_filtered_tasks(self.request, failed_tasks)
# check if there is a 'task_filter' put on the session
try:
filter = self.request.session['task_filter']
if filter != 'all':
tasks = get_filtered_tasks(filter, sort, failed_tasks)
except:
pass
if (search_box is not None):
tasks = get_filtered_tasks(search_box, sort, failed_tasks)
paginator = Paginator(tasks, config.TASKS_PER_PAGE) # Show 50 tasks per page paginator = Paginator(tasks, config.TASKS_PER_PAGE) # Show 50 tasks per page
page = self.request.GET.get('page') page = self.request.GET.get('page')
...@@ -513,21 +400,69 @@ class ShowFailuresPage(ListView): ...@@ -513,21 +400,69 @@ class ShowFailuresPage(ListView):
# this provides a broad range of filters for the search_box in the GUI # this provides a broad range of filters for the search_box in the GUI
def get_filtered_tasks(search, sort, tasks=None): def get_filtered_tasks(request, pre_filtered_tasks=None):
if tasks: filtered_tasks=[]
tasks_to_filter = tasks filtered_tasks_as_list = None
try:
my_sort = request.session['sort']
except:
my_sort = '-creationTime'
# if there is already a 'filtered_tasks_as_list' on the session, then show that.
try:
filtered_tasks_as_list = request.session['filtered_tasks_as_list']
except:
pass
if filtered_tasks_as_list:
if pre_filtered_tasks:
filtered_tasks = pre_filtered_tasks.filter(id__in=filtered_tasks_as_list)
else:
filtered_tasks = Task.objects.filter(id__in=filtered_tasks_as_list)
else:
if pre_filtered_tasks:
filtered_tasks = pre_filtered_tasks
else: else:
tasks_to_filter = Task.objects.all() filtered_tasks = Task.objects.all()
filtered_tasks = tasks_to_filter.filter( # check if there is a status filter active
try:
status_filter = request.session['task_filter']
if status_filter != 'all':
if type(status_filter) is list:
filtered_tasks = filtered_tasks.filter(status__in=status_filter)
else:
filtered_tasks = filtered_tasks.filter(status__icontains=status_filter)
except:
pass
# check if the on_hold filter is active
try:
onhold = request.session['task_onhold_filter']
if onhold != None:
filtered_tasks = filtered_tasks.filter(resume=not onhold)
except:
pass
search = request.GET.get('search_box', None)
if (search is not None):
filtered_tasks = filtered_tasks.filter(
Q(id__contains=search) | Q(id__contains=search) |
Q(sas_id__contains=search) | Q(sas_id__contains=search) |
Q(creationTime__icontains=search) | Q(creationTime__icontains=search) |
Q(filter__icontains=search) | Q(filter__icontains=search) |
Q(status__icontains=search) | Q(status__icontains=search) |
Q(status__in=search) | Q(status__in=search) |
Q(project__icontains=search)).order_by(sort) Q(project__icontains=search))
return filtered_tasks
if (Task.objects.all().count() == filtered_tasks.count()):
request.session['filtered'] = False
else:
request.session['filtered'] = True
return filtered_tasks.order_by(my_sort)
class TaskTables2View(SingleTableView): class TaskTables2View(SingleTableView):
...@@ -953,6 +888,7 @@ def HoldQuery(request, pk, hold_it, query_params): ...@@ -953,6 +888,7 @@ def HoldQuery(request, pk, hold_it, query_params):
current_query_params = convert_query_params_to_url(query_params) current_query_params = convert_query_params_to_url(query_params)
return redirect('/atdb/query/?' + current_query_params) return redirect('/atdb/query/?' + current_query_params)
@login_required @login_required
def ServiceHoldResume(request, name, hostname, enabled): def ServiceHoldResume(request, name, hostname, enabled):
model = LatestMonitor model = LatestMonitor
...@@ -1015,34 +951,51 @@ def TaskRetry(request, pk, new_status, page=0): ...@@ -1015,34 +951,51 @@ def TaskRetry(request, pk, new_status, page=0):
# set a filter value in the session, used later by the 'get_searched_tasks' mechanism # set a filter value in the session, used later by the 'get_searched_tasks' mechanism
def TaskSetFilter(request, filter): def TaskSetFilter(request, filter, redirect_to_page):
request.session['task_filter'] = filter request.session['task_filter'] = filter
# switch off the other filters # switch off the other filters
if filter == 'all': if filter == 'all':
request.session['task_onhold_filter'] = None request.session['task_onhold_filter'] = None
if redirect_to_page == 'quality':
return redirect('/atdb/quality')
return redirect('/atdb/?page=1') return redirect('/atdb/?page=1')
# set the defined list of ACTIVE_STATUSSES on the session, used later by the 'get_searched_tasks' mechanism # set the defined list of ACTIVE_STATUSSES on the session, used later by the 'get_searched_tasks' mechanism
def TaskSetActiveFilter(request): def TaskSetActiveFilter(request, redirect_to_page):
request.session['task_filter'] = settings.ACTIVE_STATUSSES request.session['task_filter'] = settings.ACTIVE_STATUSSES
request.session['task_onhold_filter'] = None request.session['task_onhold_filter'] = None
if redirect_to_page == 'quality':
return redirect('/atdb/quality')
return redirect('/atdb/?page=1') return redirect('/atdb/?page=1')
def TaskSetOnHoldFilter(request, onhold): def TaskSetOnHoldFilter(request, onhold, redirect_to_page):
request.session['task_onhold_filter'] = onhold request.session['task_onhold_filter'] = onhold
if redirect_to_page == 'quality':
return redirect('/atdb/quality')
return redirect('/atdb/?page=1') return redirect('/atdb/?page=1')
def TaskClearFilter(request):
def TaskClearFilter(request, redirect_to_page):
request.session['task_filter'] = 'all' request.session['task_filter'] = 'all'
request.session['task_onhold_filter'] = None request.session['task_onhold_filter'] = None
request.session['filtered_tasks_as_list'] = None request.session['filtered_tasks_as_list'] = None
request.session['search_box'] = '' request.session['search_box'] = ''
request.session['filtered'] = False
if redirect_to_page == 'quality':
return redirect('/atdb/quality')
if redirect_to_page == 'query':
return redirect('/atdb/query')
return redirect('/atdb/?page=1') return redirect('/atdb/?page=1')
@login_required @login_required
def ChangePriority(request, pk, priority_change, page=0): def ChangePriority(request, pk, priority_change, page=0):
model = Task model = Task
...@@ -1072,7 +1025,6 @@ def SortTasks(request, sort, redirect_to_page): ...@@ -1072,7 +1025,6 @@ def SortTasks(request, sort, redirect_to_page):
return redirect(redirect_to_page) return redirect(redirect_to_page)
def convert_query_params_to_url(query_params): def convert_query_params_to_url(query_params):
# to keep the state of the current query, # to keep the state of the current query,
# loop through the current query_params and send them back into the next request # loop through the current query_params and send them back into the next request
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment