diff --git a/geokey/core/url/admin.py b/geokey/core/url/admin.py index fa71377e..68b02467 100644 --- a/geokey/core/url/admin.py +++ b/geokey/core/url/admin.py @@ -10,6 +10,7 @@ from geokey.applications import views as app_views from geokey.superusertools import views as superusertools from geokey.subsets import views as subsets +from geokey.core import views as logger urlpatterns = [ @@ -165,6 +166,16 @@ subsets.SubsetDelete.as_view(), name='subset_delete'), + # ########################### + # LOGGER + # ########################### + + url(r'^projects/(?P[0-9]+)/' + r'history/$', + logger.LoggerList.as_view(), + name='logger_list'), + + # ########################### # APPS # ########################### diff --git a/geokey/core/views.py b/geokey/core/views.py index 1953c191..d1e3cfef 100644 --- a/geokey/core/views.py +++ b/geokey/core/views.py @@ -3,8 +3,39 @@ from rest_framework.views import APIView from rest_framework.response import Response +from django.views.generic import TemplateView + from geokey.version import get_version from geokey.extensions.base import extensions +from geokey.projects.views import ProjectContext +from geokey.core.models import LoggerHistory + + +class LoggerList(ProjectContext, TemplateView): + """A list of all history logs.""" + + template_name = 'logger/logger_list.html' + + def get_context_data(self, *args, **kwargs): + """Return the context to render the view. + Overwrite the method to add the logs for the to the context. + Returns + ------- + dict + Context. + """ + + context = super(LoggerList, self).get_context_data( + *args, + **kwargs + ) + + logs = LoggerHistory.objects.filter( + project__contains={'id': str(context['project'].id)}) + + context['logs'] = logs[::-1] + + return context # ############################################################################ diff --git a/geokey/templates/logger/logger_list.html b/geokey/templates/logger/logger_list.html new file mode 100644 index 00000000..2095c09d --- /dev/null +++ b/geokey/templates/logger/logger_list.html @@ -0,0 +1,214 @@ +{% extends 'base.html' %} + +{% block bodydata %} +data-project-id="{{ project.id }}" +data-project-locked="{{ project.islocked }}" +{% endblock %} + +{% block title %} | Project: {{ project.name }} - Logger{% endblock %} + +{% block main %} + + + +
+ + {% include 'snippets/messages.html' %} + +
+
+

+ {% if project.islocked %}{% endif %} + History +

+ + {% for log in logs %} + {% if forloop.first %} + + {% endif %} + + + + {% endfor %} +
+
+
+{% endblock %} + +{% block libraries %} + + + + + + + + + + + +{% endblock %} diff --git a/geokey/templates/projects/navigation.html b/geokey/templates/projects/navigation.html index 28523edd..3780df7b 100644 --- a/geokey/templates/projects/navigation.html +++ b/geokey/templates/projects/navigation.html @@ -19,7 +19,13 @@ Geographic extent + + + +