diff --git a/atdb/taskdatabase/templates/taskdatabase/base.html b/atdb/taskdatabase/templates/taskdatabase/base.html index fb5651185aa98b6dcbef4d2d574efb74e77b9269..f45f027512890b0c4403d5b367623a7f6a483530 100644 --- a/atdb/taskdatabase/templates/taskdatabase/base.html +++ b/atdb/taskdatabase/templates/taskdatabase/base.html @@ -28,10 +28,7 @@ {% block extra_js %}{% endblock %} </head> -<!-- <body onload="readFromLocalStorage('search_box')"> ---> - <body> <nav class="navbar navbar-expand-lg navbar-light bg-light"> <div class="container-fluid"> <ul class="nav navbar-nav"> @@ -43,9 +40,12 @@ <li><a class="nav-link" href="{% url 'homepage' %}">Tasks</a></li> <li><a class="nav-link" href="{% url 'task-details'%}">Details</a></li> <li><a class="nav-link" href="{% url 'tables2' %}">Query</a></li> - <li><a class="nav-link" href="{% url 'diagram' %}">State Diagram</a></li> + {% if user.is_superuser %} + <li><a class="nav-link" href="{% url 'config' %}">Configuration</a></li> + {% endif %} + <li><a class="nav-link" href="{% url 'diagram' %}">Diagram</a></li> {% if user.is_staff %} - <li><a class="nav-link" href="{% url 'admin:index' %}" target="_blank">Admin Page</a></li> + <li><a class="nav-link" href="{% url 'admin:index' %}" target="_blank">Admin</a></li> {% endif %} </ul> @@ -78,4 +78,7 @@ {% endblock %} </body> -</html> \ No newline at end of file +{% include "taskdatabase/modal/modal_script.html" %} +{% include "taskdatabase/modal/modal.html" %} + +</html> diff --git a/atdb/taskdatabase/templates/taskdatabase/config.html b/atdb/taskdatabase/templates/taskdatabase/config.html new file mode 100644 index 0000000000000000000000000000000000000000..bfc4d4213911535952e9f3c1711ac433654678a3 --- /dev/null +++ b/atdb/taskdatabase/templates/taskdatabase/config.html @@ -0,0 +1,19 @@ +{% extends 'taskdatabase/base.html' %} +{% load static %} + +{% block myBlock %} +<div class="container"> +<div class="card"> + <div class="card-body"> + <h3>Configuration </h3> + <table class="table table-striped"> + <tbody> + {{ results | safe }} + </tbody> + </table> + </div> +</div> + <a href="/atdb/admin/taskdatabase/configuration/" class="btn btn-warning btn-sm" target="_blank" role="button"><i class="fas fa-cog"></i> Edit Configuration</a> +</div> +{% endblock %} + diff --git a/atdb/taskdatabase/templates/taskdatabase/diagram.html b/atdb/taskdatabase/templates/taskdatabase/diagram.html index cb64a2f916e6feef3947d8f1bae74bdb69e7f7ab..5cb8af1e7c93ac112b3ee0fe6e99d6239c402997 100644 --- a/atdb/taskdatabase/templates/taskdatabase/diagram.html +++ b/atdb/taskdatabase/templates/taskdatabase/diagram.html @@ -6,7 +6,6 @@ <div class="embed-responsive embed-responsive-21by9"> <iframe class="embed-responsive-item" src="{% static 'taskdatabase/ATDB-LDV Workflow Diagram.png' %}" allowfullscreen></iframe> </div> -<p class="footer"> Version 1.0.0 (2 mar 2021 - 17:00) {% endblock %} diff --git a/atdb/taskdatabase/templates/taskdatabase/index.html b/atdb/taskdatabase/templates/taskdatabase/index.html index 92ea8f2dc8db4936a8c505555bc0fd1735a4f76d..4f41278443c5fe887eb48df971d753738efcb6d6 100644 --- a/atdb/taskdatabase/templates/taskdatabase/index.html +++ b/atdb/taskdatabase/templates/taskdatabase/index.html @@ -45,45 +45,11 @@ {% include 'taskdatabase/pagination.html' %} </div> </div> - <p class="footer"> Version 1.0.0 (8 mar 2021 - 12:00) + <p class="footer"> Version 1.0.0 (8 mar 2021 - 15:00) </div> - - -<script type="text/javascript"> - (function(seconds) { - var refresh, - intvrefresh = function() { - clearInterval(refresh); - refresh = setTimeout(function() { - //location.href = location.href; - location.reload(); - }, seconds * 1000); - }; - - $(document).on('keypress click', function() { intvrefresh() }); - intvrefresh(); - - }(30)); -</script> - - -<script type="text/javascript"> - function readFromLocalStorage(id) { - var s = localStorage.getItem(id); - if (s !== null) { - document.getElementById(id).value = s; - } - } -</script> - -<script type="text/javascript"> -function writeToLocalStorage(id) { - var s = document.getElementById(id).value - localStorage.setItem(id, s); -} -</script> +{% include 'taskdatabase/localstorage_scripts.html' %} {% endblock %} diff --git a/atdb/taskdatabase/templates/taskdatabase/localstorage_scripts.html b/atdb/taskdatabase/templates/taskdatabase/localstorage_scripts.html new file mode 100644 index 0000000000000000000000000000000000000000..a95e03d8cb656fc18a3b66803b65e798aedf3e57 --- /dev/null +++ b/atdb/taskdatabase/templates/taskdatabase/localstorage_scripts.html @@ -0,0 +1,33 @@ +<script type="text/javascript"> + (function(seconds) { + var refresh, + intvrefresh = function() { + clearInterval(refresh); + refresh = setTimeout(function() { + //location.href = location.href; + location.reload(); + }, seconds * 1000); + }; + + $(document).on('keypress click', function() { intvrefresh() }); + intvrefresh(); + + }(30)); +</script> + + +<script type="text/javascript"> + function readFromLocalStorage(id) { + var s = localStorage.getItem(id); + if (s !== null) { + document.getElementById(id).value = s; + } + } +</script> + +<script type="text/javascript"> +function writeToLocalStorage(id) { + var s = document.getElementById(id).value + localStorage.setItem(id, s); +} +</script> \ No newline at end of file diff --git a/atdb/taskdatabase/urls.py b/atdb/taskdatabase/urls.py index 5e1154ae7bcb7c6d97e177494609d975bd7c65a2..e9cd21554cf5c232e099f10b6ba421f216cb7c04 100644 --- a/atdb/taskdatabase/urls.py +++ b/atdb/taskdatabase/urls.py @@ -15,7 +15,7 @@ urlpatterns = [ path('<page>', views.IndexView.as_view(), name='homepage_page'), path('task_details/<int:id>/<page>', views.TaskDetails, name='task-details'), - path('task_details', views.TaskDetails, name='task-details'), + path('task_details/', views.TaskDetails, name='task-details'), path('show-inputs/<int:id>/', views.ShowInputs, name='show-inputs'), path('show-outputs/<int:id>/', views.ShowOutputs, name='show-outputs'), @@ -29,6 +29,7 @@ urlpatterns = [ path('tables2basic/', views.TaskTables2View.as_view(), name='tasktables2'), path('tables2/', views.FilteredTaskListView.as_view(), name='tables2'), + path('config/', views.ShowConfig, name='config'), path('diagram/', views.DiagramView.as_view(), name='diagram'), # --- REST API --- diff --git a/atdb/taskdatabase/views.py b/atdb/taskdatabase/views.py index 0dc5f18ff54a0ed49d3b4791ce1ebaff4adc1e72..1cd66a0f3802be88b1a9305bb88935aee0f7ad42 100644 --- a/atdb/taskdatabase/views.py +++ b/atdb/taskdatabase/views.py @@ -48,7 +48,7 @@ class TaskFilter(filters.FilterSet): 'sas_id': ['exact', 'icontains'], 'status': ['exact', 'icontains', 'in', 'startswith'], 'purge_policy': ['exact'], - 'priority': ['exact'], + 'priority': ['exact','lte','gte'], } class TaskFilterGUI(filters.FilterSet): @@ -289,6 +289,34 @@ def ShowMetrics(request, id): return render(request, "taskdatabase/details/metrics.html", {'results': results}) +def convert_config_to_html(querylist): + results = "" + try: + for record in querylist: + # iterate through the dict of key/values + key = record.key + value = record.value + try: + if "://" in value: + link = "<a href=" + '"' + value + '">' + key +"</a>" + value = link + except: + pass + line = "<tr><td><b>" + str(key) + "</b></td><td>" + str(value) + "</td></tr>" + results = results + line + except: + results = "<tr><td>no data</td></tr>" + + return results + + +def ShowConfig(request): + configuration = Configuration.objects.all() + + results = convert_config_to_html(configuration) + return render(request, "taskdatabase/config.html", {'results': results}) + + def WorkflowDetails(request, id): workflow = Workflow.objects.get(id=id) return render(request, "taskdatabase/details/workflow_details.html", {'workflow': workflow})