diff --git a/atdb/atdb/static/taskdatabase/style.css b/atdb/atdb/static/taskdatabase/style.css index 450fee35862401059f5002c3099e10cdcade83ca..b927c9663aa7ee0883ebf3c4f2c97636a3cc0850 100644 --- a/atdb/atdb/static/taskdatabase/style.css +++ b/atdb/atdb/static/taskdatabase/style.css @@ -13,6 +13,11 @@ TD { color: blue; } +.suspended,.discarded { + color: grey; + font-style: italic; +} + .active { background-color: lemonchiffon; } diff --git a/atdb/taskdatabase/services/algorithms.py b/atdb/taskdatabase/services/algorithms.py index 8f05f408aa8908d9bbc0094e8b26b2f770f37f58..db9d1dbd8a3897df28250eae1f4aa25c4c7d7ec2 100644 --- a/atdb/taskdatabase/services/algorithms.py +++ b/atdb/taskdatabase/services/algorithms.py @@ -708,6 +708,9 @@ def construct_inspectionplots(task,source='task_id'): url = surl.replace(translation[0],translation[1]) results += '<tr><td><a href="' + url + '" target="_blank">'+ basename + '</a></td></tr>' +# if basename.endswith('png'): +# results += '<tr><td><a href="' + url + '" target="_blank"><img width="800" src="' + url + '" alt="' + basename + '"/></a></td></tr>' + plot_files.append(basename) elif source == 'sas_id': @@ -737,7 +740,10 @@ def construct_inspectionplots(task,source='task_id'): url = surl.replace(translation[0], translation[1]) results += '<tr><td><a href="' + url + '" target="_blank">' + basename + '</a></td></tr>' - #results += '<tr><td><a href="' + url + '" target="_blank">' + basename + '</a></td><td>'+str(plot['size'])+'</td></tr>' + +# if basename.endswith('png'): +# results += '<tr><td><a href="' + url + '" target="_blank"><img width="800" src="' + url + '" alt="'+basename+'"/></a></td></tr>' + plot_files.append(plot_file) except Exception as error: diff --git a/atdb/taskdatabase/static/taskdatabase/style.css b/atdb/taskdatabase/static/taskdatabase/style.css index 450fee35862401059f5002c3099e10cdcade83ca..b927c9663aa7ee0883ebf3c4f2c97636a3cc0850 100644 --- a/atdb/taskdatabase/static/taskdatabase/style.css +++ b/atdb/taskdatabase/static/taskdatabase/style.css @@ -13,6 +13,11 @@ TD { color: blue; } +.suspended,.discarded { + color: grey; + font-style: italic; +} + .active { background-color: lemonchiffon; } diff --git a/atdb/taskdatabase/templates/astronauth/navbar.html b/atdb/taskdatabase/templates/astronauth/navbar.html index 4acbe6f4fb664372c171e09a9715f1868da2cb7d..8b9121f1ed80811702f20c57ddffabcbd4bf9f28 100644 --- a/atdb/taskdatabase/templates/astronauth/navbar.html +++ b/atdb/taskdatabase/templates/astronauth/navbar.html @@ -28,7 +28,7 @@ <li><a class="nav-link" href="{% url 'quality' %}">Quality</a></li> <li><a class="nav-link" href="{% url 'validation' %}">Validation</a></li> <li><a class="nav-link" href="{% url 'failures' %}">Failures</a></li> - <li><a class="nav-link" href="{% url 'archived' %}">Archived</a></li> + <li><a class="nav-link" href="{% url 'finished' %}">Finished</a></li> <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/archived/headers.html b/atdb/taskdatabase/templates/taskdatabase/archived/headers.html index 5d3f42268a045138f8cb3b904187daf29423c8b3..589473d29c2389ff6d434c4916859aed0e5ee7ee 100644 --- a/atdb/taskdatabase/templates/taskdatabase/archived/headers.html +++ b/atdb/taskdatabase/templates/taskdatabase/archived/headers.html @@ -9,6 +9,11 @@ <a href="{% url 'sort-tasks' '-workflow' 'archived' %}" class="btn btn-light btn-sm" role="button"><i class="fas fa-sort-up"></i></a> Workflow <a href="{% url 'sort-tasks' 'workflow' 'archived' %}" class="btn btn-light btn-sm" role="button"><i class="fas fa-sort-down"></i></a> + <th> + <a href="{% url 'sort-tasks' '-status' 'archived' %}" class="btn btn-light btn-sm" role="button"><i class="fas fa-sort-up"></i></a> + Status + <a href="{% url 'sort-tasks' 'status' 'archived' %}" class="btn btn-light btn-sm" role="button"><i class="fas fa-sort-down"></i></a> + </th> <th> <a href="{% url 'sort-tasks' '-project' 'archived' %}" class="btn btn-light btn-sm" role="button"><i class="fas fa-sort-up"></i></a> Project diff --git a/atdb/taskdatabase/templates/taskdatabase/archived/page.html b/atdb/taskdatabase/templates/taskdatabase/archived/page.html index db04ca7aabbbc4feed8fa1908827407a84b35978..6bd1f77d1a453d48bae4a7fd7ffee969929a51e8 100644 --- a/atdb/taskdatabase/templates/taskdatabase/archived/page.html +++ b/atdb/taskdatabase/templates/taskdatabase/archived/page.html @@ -8,8 +8,8 @@ <div class="card-body"> <div class="row"> <div class="col-12"> - <h3>Archived</h3> - This overview shows the tasks that are <b>archived</b> in the LTA. + <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> </div> diff --git a/atdb/taskdatabase/templates/taskdatabase/archived/tasks.html b/atdb/taskdatabase/templates/taskdatabase/archived/tasks.html index 97c03bbebe92ed53fed5b4146fa4672b3c4772cb..40d040726da1185196d61a31c4020442b38cc3d8 100644 --- a/atdb/taskdatabase/templates/taskdatabase/archived/tasks.html +++ b/atdb/taskdatabase/templates/taskdatabase/archived/tasks.html @@ -31,7 +31,12 @@ target="_blank"><i class="fas fa-project-diagram"></i> {{ task.workflow }} </a></td> </td> - + {% if task.resume %} + <td class="bigger">{{ task.status }}</td> + {% endif %} + {% if not task.resume %} + <td class="bigger">{{ task.status }} (holding)</td> + {% endif %} <td>{{ task.project }}</td> <td>{{ task.filter }} </td> <td> diff --git a/atdb/taskdatabase/templates/taskdatabase/filter/filter_buttons.html b/atdb/taskdatabase/templates/taskdatabase/filter/filter_buttons.html index 3c811a825c6dc4c68caad360590a386e3a4722c8..c94156723da3ebed70a16ed0893f762dc166c3fe 100644 --- a/atdb/taskdatabase/templates/taskdatabase/filter/filter_buttons.html +++ b/atdb/taskdatabase/templates/taskdatabase/filter/filter_buttons.html @@ -35,6 +35,7 @@ <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' 'tasks' %}" class="btn btn-secondary btn-sm" role="button">archived</a> <a href="{% url 'task-set-filter' 'finished' 'tasks' %}" class="btn btn-secondary btn-sm" role="button">finished</a> + <a href="{% url 'task-set-filter' 'suspended' 'tasks' %}" class="btn btn-secondary btn-sm" role="button">suspended</a> </td> <td> diff --git a/atdb/taskdatabase/templates/taskdatabase/index.html b/atdb/taskdatabase/templates/taskdatabase/index.html index 02f3c9eed4a8f4f2e377ffb2cca8947bb8d8bf77..cbf6b0fa1c4a307f1cdb52575d0c3d5c720da546 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 31 March 2023 + <p class="footer"> Version 4 April 2023 </div> diff --git a/atdb/taskdatabase/templates/taskdatabase/quality/filter_buttons.html b/atdb/taskdatabase/templates/taskdatabase/quality/filter_buttons.html index 67877b8d1098c00e3603da7f51c5c7e8e7f188aa..31c387bda9fa043195290a2280476d9b03b9a1bd 100644 --- a/atdb/taskdatabase/templates/taskdatabase/quality/filter_buttons.html +++ b/atdb/taskdatabase/templates/taskdatabase/quality/filter_buttons.html @@ -16,16 +16,9 @@ <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> @@ -35,6 +28,7 @@ <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> + <a href="{% url 'task-set-filter' 'suspended' 'quality' %}" class="btn btn-secondary btn-sm" role="button">suspended</a> </td> <td> diff --git a/atdb/taskdatabase/templates/taskdatabase/query/set_multi_status_panel.html b/atdb/taskdatabase/templates/taskdatabase/query/set_multi_status_panel.html index 212fba09695287bc1661a4be59e507dbc47e2cfc..c84b49815e541d29626ded47c809e9ad4aaad462 100644 --- a/atdb/taskdatabase/templates/taskdatabase/query/set_multi_status_panel.html +++ b/atdb/taskdatabase/templates/taskdatabase/query/set_multi_status_panel.html @@ -19,6 +19,8 @@ <a href="{% url 'task-multi-setstatus' 'scrubbed' request.GET %}" class="btn btn-danger btn-sm" role="button"><i class="fas fa-sync-alt"></i> scrubbed</a> <a href="{% url 'task-multi-setstatus' 'archived' request.GET %}" class="btn btn-danger btn-sm" role="button"><i class="fas fa-sync-alt"></i> archived</a> <a href="{% url 'task-multi-setstatus' 'finished' request.GET %}" class="btn btn-danger btn-sm" role="button"><i class="fas fa-sync-alt"></i> finished</a> + <a href="{% url 'task-multi-setstatus' 'suspended' request.GET %}" class="btn btn-danger btn-sm" role="button"><i class="fas fa-sync-alt"></i> suspended</a> + </tr> </table> {% endif %} diff --git a/atdb/taskdatabase/templates/taskdatabase/query/status_buttons_per_row.html b/atdb/taskdatabase/templates/taskdatabase/query/status_buttons_per_row.html index a5f3852760f997115badeaf9369dac51bec64c50..e9e362c01dd17fe4d8c5d2a34dbe471260dd8b7d 100644 --- a/atdb/taskdatabase/templates/taskdatabase/query/status_buttons_per_row.html +++ b/atdb/taskdatabase/templates/taskdatabase/query/status_buttons_per_row.html @@ -10,5 +10,6 @@ <a href="{% url 'task-setstatus' record.pk 'scrubbed' request.GET %}" class="btn btn-warning btn-sm" role="button"><i class="fas fa-sync-alt"></i> scrubbed</a> <a href="{% url 'task-setstatus' record.pk 'archived' request.GET %}" class="btn btn-warning btn-sm" role="button"><i class="fas fa-sync-alt"></i> archived</a> <a href="{% url 'task-setstatus' record.pk 'finished' request.GET %}" class="btn btn-warning btn-sm" role="button"><i class="fas fa-sync-alt"></i> finished</a> + <a href="{% url 'task-setstatus' record.pk 'suspended' request.GET %}" class="btn btn-warning btn-sm" role="button"><i class="fas fa-sync-alt"></i> suspended</a> {% endif %} diff --git a/atdb/taskdatabase/templates/taskdatabase/tasks/details_card.html b/atdb/taskdatabase/templates/taskdatabase/tasks/details_card.html index abaab6708b567ee4c3757e122298ab2c9cb16b3e..54f6a7844161168f89d0b84ff507b8e6fda2da70 100644 --- a/atdb/taskdatabase/templates/taskdatabase/tasks/details_card.html +++ b/atdb/taskdatabase/templates/taskdatabase/tasks/details_card.html @@ -5,6 +5,8 @@ <table class="table table-striped"> <tbody> <tr><td><b>id</b></td><td><a href="{% url 'task-detail-view-api' task.pk %}" target="_blank">{{ task.id }} </a></td></tr> + <tr><td><b>slurm jobs</b></td><td><a href="{% url 'job-list-view-api' %}?task_id={{ task.id }}" {{ task.id }} target="_blank">jobs for task {{ task.id }} </a></td></tr> + <tr><td><b>priority</b></td><td> {% if user.is_authenticated %} <a href="{% url 'task-change-priority' task.pk '-10' %}" class="btn btn-warning btn-sm" role="button">-10</a> @@ -52,6 +54,7 @@ ><i class="fas fa-balance-scale-right"></i> Quality </a> {% endif %} + </td> </tr> <tr><td><b>filter</b></td><td>{{ task.filter }}</td></tr> diff --git a/atdb/taskdatabase/templates/taskdatabase/tasks/set_status_buttons.html b/atdb/taskdatabase/templates/taskdatabase/tasks/set_status_buttons.html index b33c6262098380ddf27a7e850bf2a38249790f01..0878aa875935bb14030e20b179d97726bc334049 100644 --- a/atdb/taskdatabase/templates/taskdatabase/tasks/set_status_buttons.html +++ b/atdb/taskdatabase/templates/taskdatabase/tasks/set_status_buttons.html @@ -8,4 +8,5 @@ <a href="{% url 'task-details-setstatus' task.pk 'scrubbed' %}" class="btn btn-warning btn-sm" role="button"><i class="fas fa-sync-alt"></i> scrubbed</a> <a href="{% url 'task-details-setstatus' task.pk 'archived' %}" class="btn btn-warning btn-sm" role="button"><i class="fas fa-sync-alt"></i> archived</a> <a href="{% url 'task-details-setstatus' task.pk 'finished' %}" class="btn btn-warning btn-sm" role="button"><i class="fas fa-sync-alt"></i> finished</a> -<a href="{% url 'task-details-setstatus' task.pk 'failed (manual)' %}" class="btn btn-warning btn-sm" role="button"><i class="fas fa-sync-alt"></i> failed (manual)</a> +<a href="{% url 'task-details-setstatus' task.pk 'suspended' %}" class="btn btn-warning btn-sm" role="button"><i class="fas fa-sync-alt"></i> suspended</a> +<a href="{% url 'task-details-setstatus' task.pk 'discard' %}" class="btn btn-danger btn-sm" role="button"><i class="fas fa-sync-alt"></i> discard</a> diff --git a/atdb/taskdatabase/urls.py b/atdb/taskdatabase/urls.py index b980e73869bb2aa92e8d696054bf39763705df21..16c5316e7a4ff703462af4f5e9f5c2feeddf82fc 100644 --- a/atdb/taskdatabase/urls.py +++ b/atdb/taskdatabase/urls.py @@ -18,7 +18,7 @@ urlpatterns = [ path('quality', views.ShowQualityPage.as_view(), name='quality'), path('validation', views.ShowValidationPage.as_view(), name='validation'), path('failures', views.ShowFailuresPage.as_view(), name='failures'), - path('archived', views.ShowArchivedPage.as_view(), name='archived'), + path('finished', views.ShowFinishedPage.as_view(), name='finished'), path('task_details/<int:id>/<page>', views.TaskDetails, name='task-details'), path('task_details/', views.TaskDetails, name='task-details'), @@ -68,7 +68,7 @@ urlpatterns = [ path('configuration/', views.ConfigurationListViewAPI.as_view()), path('configuration/<int:pk>/', views.ConfigurationDetailsViewAPI.as_view(), name='configuration-detail-view-api'), - path('jobs/', views.JobListViewAPI.as_view()), + path('jobs/', views.JobListViewAPI.as_view(), name='job-list-view-api'), path('jobs/<int:pk>/', views.JobDetailsViewAPI.as_view(), name='job-detail-view-api'), path('postprocessing/', views.PostProcessingRuleListViewAPI.as_view()), diff --git a/atdb/taskdatabase/views.py b/atdb/taskdatabase/views.py index 7ad57183ac6a0cce4661e2b76cdd4c9760cbc1b3..fc8ce497125b8d91ac3085c3f66dd1606e0e857d 100644 --- a/atdb/taskdatabase/views.py +++ b/atdb/taskdatabase/views.py @@ -404,7 +404,7 @@ class ShowFailuresPage(ListView): return tasks -class ShowArchivedPage(ListView): +class ShowFinishedPage(ListView): """ This shows the tasks that are archived Note that the global filter is also applied @@ -417,7 +417,7 @@ class ShowArchivedPage(ListView): def get_queryset(self): - archived_tasks = Task.objects.filter(status='archived') + archived_tasks = Task.objects.filter(status='finished') #tasks = get_filtered_tasks(self.request, archived_tasks, "sas_id") tasks = get_filtered_tasks(self.request, archived_tasks)