diff --git a/atdb/taskdatabase/templates/query/action_buttons_per_row.html b/atdb/taskdatabase/templates/query/action_buttons_per_row.html index 03e74f559591f275f5afab323dbb03b777c88b4d..6fae0ffc89dc2f0c6b6a4c84c6a329ee13f37cb9 100644 --- a/atdb/taskdatabase/templates/query/action_buttons_per_row.html +++ b/atdb/taskdatabase/templates/query/action_buttons_per_row.html @@ -1,9 +1,9 @@ <a href="{% url 'task-details' record.pk 0 %}" class="btn btn-primary btn-sm" role="button"><i class="fas fa-list"></i> Details</a> {% if record.resume %} - <a href="{% url 'task-hold-resume' record.pk 'hold' 0 %}" class="btn btn-warning btn-sm" role="button"><i class="fas fa-pause"></i> hold</a> + <a href="{% url 'task-hold-resume' record.pk 'hold' %}" class="btn btn-warning btn-sm" role="button"><i class="fas fa-pause"></i> hold</a> {% endif %} {% if not record.resume %} - <a href="{% url 'task-hold-resume' record.pk 'resume' 0 %}" class="btn btn-success btn-sm" role="button"><i class="fas fa-play"></i> start</a> + <a href="{% url 'task-hold-resume' record.pk 'resume' %}" class="btn btn-success btn-sm" role="button"><i class="fas fa-play"></i> start</a> {% endif %} \ No newline at end of file diff --git a/atdb/taskdatabase/templates/query/set_multi_status_panel.html b/atdb/taskdatabase/templates/query/set_multi_status_panel.html index 00cb2f624915152dd7300db1c9bae64e09f39ca8..d6daa63bf2609e6d1cdbda50f22b98b2ed6df5d6 100644 --- a/atdb/taskdatabase/templates/query/set_multi_status_panel.html +++ b/atdb/taskdatabase/templates/query/set_multi_status_panel.html @@ -8,7 +8,10 @@ <p>Click to change Status for all these tasks</p> <table> <tr> - <a href="{% url 'task-multi-setstatus' 'defining' %}" class="btn btn-danger btn-sm" role="button"><i class="fas fa-sync-alt"></i> defining</a> + <a href="{% url 'task-multi-hold' 'hold' %}" class="btn btn-danger btn-sm" role="button"><i class="fas fa-pause"></i> hold</a> + <a href="{% url 'task-multi-hold' 'resume' %}" class="btn btn-danger btn-sm" role="button"><i class="fas fa-play"></i> start</a> + + <a href="{% url 'task-multi-setstatus' 'defining' %}" class="btn btn-danger btn-sm" role="button"><i class="fas fa-sync-alt"></i> defining</a> <a href="{% url 'task-multi-setstatus' 'defined' %}" class="btn btn-danger btn-sm" role="button"><i class="fas fa-sync-alt"></i> defined</a> <a href="{% url 'task-multi-setstatus' 'staged' %}" class="btn btn-danger btn-sm" role="button"><i class="fas fa-sync-alt"></i> staged</a> <a href="{% url 'task-multi-setstatus' 'processed' %}" class="btn btn-danger btn-sm" role="button"><i class="fas fa-sync-alt"></i> processed</a> diff --git a/atdb/taskdatabase/templates/taskdatabase/index.html b/atdb/taskdatabase/templates/taskdatabase/index.html index 95f65c9482db7bf3778b525cfaa39b4cf433ea13..a3413b7fbb9e6224fbc663b2ae50e867daa8e9c1 100644 --- a/atdb/taskdatabase/templates/taskdatabase/index.html +++ b/atdb/taskdatabase/templates/taskdatabase/index.html @@ -80,7 +80,7 @@ {% include 'taskdatabase/pagination.html' %} </div> </div> - <p class="footer"> Version 1.0.0 (1 apr 2021 - 12:00) + <p class="footer"> Version 1.0.0 (1 apr 2021 - 14:00) </div> diff --git a/atdb/taskdatabase/urls.py b/atdb/taskdatabase/urls.py index 73ac3e5803e38dd362a142c3c12ea0f838176b50..e7474e03859303116c3a0e30bc8b0047a1c9a29d 100644 --- a/atdb/taskdatabase/urls.py +++ b/atdb/taskdatabase/urls.py @@ -64,7 +64,8 @@ urlpatterns = [ path('tasks/task-set-onhold-filter/<onhold>', views.TaskSetOnHoldFilter, name='task-set-onhold-filter'), path('tasks/<int:pk>/set_status/<new_status>/<page>', views.TaskSetStatusTables2, name = 'task-setstatus'), path('tasks/set_status_multi/<new_status>', views.TaskSetStatusMulti, name='task-multi-setstatus'), - + path('tasks/set_multi_hold/<onhold>', views.TaskMultiHold, name='task-multi-hold'), path('tasks/<int:pk>/hold/<hold_it>/<page>', views.Hold, name='task-hold-resume'), + path('tasks/<int:pk>/hold/<hold_it>', views.Hold, name='task-hold-resume'), ] \ No newline at end of file diff --git a/atdb/taskdatabase/views.py b/atdb/taskdatabase/views.py index b9757b70ff548f1d76a0a7b72f8725b36d34fb38..ebfb1e473a03af73f4213ef7d7c4104f4e5e9547 100644 --- a/atdb/taskdatabase/views.py +++ b/atdb/taskdatabase/views.py @@ -8,7 +8,6 @@ from django.contrib.auth.decorators import login_required from django.views.generic import ListView from django.contrib import messages -from django.core.cache import cache from rest_framework import generics, pagination from rest_framework.response import Response @@ -453,7 +452,7 @@ class JobDetailsViewAPI(generics.RetrieveUpdateDestroyAPIView): # set task status to 'new_status' - called from the GUI @login_required -def Hold(request,pk,hold_it,page): +def Hold(request,pk,hold_it,page=0): model = Task task = Task.objects.get(pk=pk) task.resume = (hold_it == 'resume') @@ -537,10 +536,6 @@ def TaskSetStatusTables2(request,pk,new_status,page): def TaskSetStatusMulti(request, new_status): # read the current querylist from the session - # yikes, this doesn't work if 2 users are simultaneously logged in - # query_list = cache.get('query_list') - # cache.delete('query_list') - # get the list of id's from the session query_list_of_ids = request.session['query_list_of_ids'] @@ -550,6 +545,22 @@ def TaskSetStatusMulti(request, new_status): task.save() return redirect('/atdb/query') + +@login_required +def TaskMultiHold(request, onhold): + # read the current querylist from the session + + # get the list of id's from the session + query_list_of_ids = request.session['query_list_of_ids'] + + for id in query_list_of_ids: + task = Task.objects.get(id=id[0]) + task.resume = (onhold == 'resume') + task.save() + + return redirect('/atdb/query') + + # /atdb/get_size?status__in=defined,staged class GetSizeView(generics.ListAPIView): queryset = Task.objects.all()