diff --git a/logs_collector/collector/templates/collector/includes/navigation.html b/logs_collector/collector/templates/collector/includes/navigation.html index 2f8bd90..d585a9d 100644 --- a/logs_collector/collector/templates/collector/includes/navigation.html +++ b/logs_collector/collector/templates/collector/includes/navigation.html @@ -1,3 +1,5 @@ +{% load collector_extras %} +{% get_platforms as platforms %} @@ -43,11 +45,10 @@ {% for platform in platforms %}
  • {{ platform.pretty_name}} - +
  • {% endfor %}
  • diff --git a/logs_collector/collector/templates/collector/includes/ticket_archives.html b/logs_collector/collector/templates/collector/includes/ticket_archives.html index ff80d58..ffcb81b 100644 --- a/logs_collector/collector/templates/collector/includes/ticket_archives.html +++ b/logs_collector/collector/templates/collector/includes/ticket_archives.html @@ -1,9 +1,10 @@ +{% load collector_extras %}
  • File: - {{ archive.file }} + {{ archive.file.name|clean_filename }}
    @@ -13,12 +14,12 @@
    Uploaded: - {{ archive.time_update }} + {{ archive.time_update|date:"D d.m.y H:i" }}

    Size: - {{ archive.size }} + {{ archive.file.size|sizify }}
    diff --git a/logs_collector/collector/templates/collector/includes/ticket_info.html b/logs_collector/collector/templates/collector/includes/ticket_info.html index eb4c1a9..f6e2d01 100644 --- a/logs_collector/collector/templates/collector/includes/ticket_info.html +++ b/logs_collector/collector/templates/collector/includes/ticket_info.html @@ -1,6 +1,6 @@

    Ticket: {{ ticket.number }}

    - {{ ticket.time_create }} + {{ ticket.time_create|date:"D d.m.y H:i" }}
    diff --git a/logs_collector/collector/templates/collector/tickets.html b/logs_collector/collector/templates/collector/tickets.html index 0f496bb..b85bad5 100644 --- a/logs_collector/collector/templates/collector/tickets.html +++ b/logs_collector/collector/templates/collector/tickets.html @@ -7,7 +7,7 @@ {% for ticket in tickets %}
    -
    +
    {% include 'collector/includes/ticket_info.html' %}
    diff --git a/logs_collector/collector/templatetags/__init__.py b/logs_collector/collector/templatetags/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/logs_collector/collector/templatetags/collector_extras.py b/logs_collector/collector/templatetags/collector_extras.py new file mode 100644 index 0000000..a0268dc --- /dev/null +++ b/logs_collector/collector/templatetags/collector_extras.py @@ -0,0 +1,48 @@ +from django import template +from collector.models import Platform + + +register = template.Library() + + +@register.simple_tag() +def get_platforms(): + return Platform.objects.all() + + +@register.filter(name='sizify') +def sizify(value: int) -> str: + """Simple kb/mb/gb size snippet for templates: + + {{ Archive.file.size|sizify }} + + Args: + value (int): size of file from Filefield + + Returns: + str: format human readable size like 4.2 Gb + """ + + if value < 512000: + value = value / 1024.0 + ext = 'Kb' + elif value < 4194304000: + value = value / 1048576.0 + ext = 'Mb' + else: + value = value / 1073741824.0 + ext = 'Gb' + return f'{round(value, 2)} {ext}' + + +@register.filter(name='clean_filename') +def clean_filename(filename: str) -> str: + """delete prefix ticket number folder for template + + Args: + filename (str): filename from Filefield + + Returns: + str: only filename + """ + return filename.rpartition('/')[-1] diff --git a/logs_collector/collector/views.py b/logs_collector/collector/views.py index d12684c..2b3d7ba 100644 --- a/logs_collector/collector/views.py +++ b/logs_collector/collector/views.py @@ -34,10 +34,10 @@ class ListAllTickets(generic.ListView): context_object_name = 'tickets' paginate_by = 5 - def get_context_data(self, **kwargs): - context = super().get_context_data(**kwargs) - context['platforms'] = Platform.objects.all() - return context + # def get_context_data(self, **kwargs): + # context = super().get_context_data(**kwargs) + # context['platforms'] = Platform.objects.all() + # return context class ListPlatformTickets(generic.ListView):