diff --git a/AKDashboard/locale/de_DE/LC_MESSAGES/django.po b/AKDashboard/locale/de_DE/LC_MESSAGES/django.po new file mode 100644 index 0000000000000000000000000000000000000000..e292f2bec1137909c2cc83c6682481fe4fbe69b3 --- /dev/null +++ b/AKDashboard/locale/de_DE/LC_MESSAGES/django.po @@ -0,0 +1,42 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-01-09 00:07+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: templates/AKDashboard/dashboard.html:31 +msgid "Current AKs" +msgstr "Aktuelle AKs" + +#: templates/AKDashboard/dashboard.html:36 +msgid "AK Wall" +msgstr "AK-Wall" + +#: templates/AKDashboard/dashboard.html:44 +msgid "AK Submission" +msgstr "AK-Submission" + +#: templates/AKDashboard/dashboard.html:51 +msgid "Write to organizers of this event for questions and comments" +msgstr "Kontaktiere die Organisator*innen des Events bei Fragen oder Kommentaren" + +#: templates/AKDashboard/dashboard.html:58 +msgid "Currently, there are no Events!" +msgstr "Aktuell gibt es keine Events!" + +#: templates/AKDashboard/dashboard.html:61 +msgid "Please contact an administrator if you want to use AKPlanning." +msgstr "Bitte kontaktiere eine*n Administrator*in, falls du AKPlanning verwenden möchtest." diff --git a/AKDashboard/static/AKDashboard/style.css b/AKDashboard/static/AKDashboard/style.css new file mode 100644 index 0000000000000000000000000000000000000000..4cb50650bdc69552a845563e88bc4ebab918d43b --- /dev/null +++ b/AKDashboard/static/AKDashboard/style.css @@ -0,0 +1,29 @@ +.dashboard-row { + margin-bottom: 5em; +} + +.dashboard-row > .row { + margin-left: 0; + padding-bottom: 1em; +} + +.dashboard-box .fa { + font-size: 26pt; +} + +.dashboard-box span.text { + display: block; + padding-top: 10px; + font-size: 12pt; +} + +.dashboard-box { + display: block; + padding: 2em; + +} + +.dashboard-button { + display: inline; + padding: 0; +} diff --git a/AKDashboard/templates/AKDashboard/dashboard.html b/AKDashboard/templates/AKDashboard/dashboard.html new file mode 100644 index 0000000000000000000000000000000000000000..ec261fde433e25309c7708b5729834be61192afc --- /dev/null +++ b/AKDashboard/templates/AKDashboard/dashboard.html @@ -0,0 +1,65 @@ +{% extends 'base.html' %} + +{% load fontawesome %} +{% load i18n %} +{% load static %} +{% load tags_AKModel %} + +{% block imports %} + + {{ block.super }} + + <link rel="stylesheet" href="{% static 'AKDashboard/style.css' %}"> + +{% endblock %} + +{% block breadcrumbs %} + <li class="breadcrumb-item">AKPlanning</li> +{% endblock %} + +{% block content %} + {% for event in events %} + <div class="dashboard-row"> + <h2> {{ event.name }} </h2> + <div class="row"> + {% if 'AKPlan'|check_app_installed %} + + <a class="dashboard-box btn btn-primary" + href="{% url 'plan:ak_plan_current_next' event_slug=event.slug %}"> + <div class="col-sm-12 col-md-3 col-lg-2 dashboard-button"><span + class="fa fa-list-ul"></span> <span + class='text'>{% trans 'Current AKs' %}</span></div> + </a> + <a class="dashboard-box btn btn-primary" + href="{% url 'plan:ak_plan_timeline' event_slug=event.slug %}"> + <div class="col-sm-12 col-md-3 col-lg-2 dashboard-button"><span + class="fa fa-calendar"></span> <span class='text'>{% trans "AK Wall" %}</span></div> + </a> + {% endif %} + {% if 'AKSubmission'|check_app_installed %} + <a class="dashboard-box btn btn-primary" + href="{% url 'submit:submission_overview' event_slug=event.slug %}"> + <div class="col-sm-12 col-md-3 col-lg-2 dashboard-button"><span + class="fa fa-pencil-alt"></span> <span + class='text'>{% trans 'AK Submission' %}</span></div> + </a> + + {% endif %} + </div> + {% if event.contact_email %} + <p> + <a href="mailto:{{ event.contact_email }}">{% fontawesome_icon "envelope" %} {% trans "Write to organizers of this event for questions and comments" %}</a> + </p> + {% endif %} + </div> + {% empty %} + <div class="jumbotron"> + <h2 class="display-4"> + {% trans 'Currently, there are no Events!' %} + </h2> + <p class="lead"> + {% trans 'Please contact an administrator if you want to use AKPlanning.' %} + </p> + </div> + {% endfor %} +{% endblock %} \ No newline at end of file diff --git a/AKDashboard/urls.py b/AKDashboard/urls.py index b920578cef772d34fcb6bf8dcc428f9bb7d33009..24497d3008495e6545b9be678a77f218f7e6eb82 100644 --- a/AKDashboard/urls.py +++ b/AKDashboard/urls.py @@ -5,5 +5,5 @@ from AKDashboard import views app_name = "dashboard" urlpatterns = [ - path('', views.TopLevelRedirectView.as_view(), name='top_level_redirect'), + path('', views.DashboardView.as_view(), name="dashboard"), ] diff --git a/AKDashboard/views.py b/AKDashboard/views.py index 14660a24ea1038c685e4a9c4888c7fe0dc87ac5c..6d870680ea24ea27b53c1cdfefaa0a12f39e968a 100644 --- a/AKDashboard/views.py +++ b/AKDashboard/views.py @@ -1,12 +1,18 @@ -from django.urls import reverse_lazy -from django.views.generic import RedirectView +from django.utils.decorators import method_decorator +from django.views.decorators.csrf import ensure_csrf_cookie +from django.views.generic import TemplateView from AKModel.models import Event -class TopLevelRedirectView(RedirectView): - is_permanent = False +class DashboardView(TemplateView): + template_name = 'AKDashboard/dashboard.html' - def get_redirect_url(self, *args, **kwargs): - return reverse_lazy('submit:submission_overview', - kwargs={'event_slug': Event.objects.filter(active=True).last().slug}) + @method_decorator(ensure_csrf_cookie) + def dispatch(self, *args, **kwargs): + return super().dispatch(*args, **kwargs) + + def get_context_data(self, **kwargs): + context = super().get_context_data(**kwargs) + context['events'] = Event.objects.all() + return context diff --git a/AKModel/migrations/0026_akslot_updated.py b/AKModel/migrations/0026_akslot_updated.py new file mode 100644 index 0000000000000000000000000000000000000000..a22023befe7454ae5d94eae5429c14bb730911a7 --- /dev/null +++ b/AKModel/migrations/0026_akslot_updated.py @@ -0,0 +1,17 @@ +# Generated by Django 2.2.6 on 2019-10-31 00:02 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ('AKModel', '0025_contact_email'), + ] + + operations = [ + migrations.AddField( + model_name='akslot', + name='updated', + field=models.DateTimeField(auto_now=True, verbose_name='Last update'), + ), + ] diff --git a/AKModel/models.py b/AKModel/models.py index 57c35f41bc3e72d8d9d8f2fe6b61a609e77d9cf0..c6c2ffef71ea586cf6bf49895c960e1eeabb60de 100644 --- a/AKModel/models.py +++ b/AKModel/models.py @@ -1,4 +1,5 @@ # Create your models here. +import datetime import itertools from django.db import models @@ -24,7 +25,8 @@ class Event(models.Model): help_text='Default length in hours that is assumed for AKs in this event.') contact_email = models.EmailField(verbose_name=_("Contact email address"), blank=True, - help_text=_("An email address that is displayed on every page and can be used for all kinds of questions")) + help_text=_( + "An email address that is displayed on every page and can be used for all kinds of questions")) class Meta: verbose_name = _('Event') @@ -263,6 +265,8 @@ class AKSlot(models.Model): event = models.ForeignKey(to=Event, on_delete=models.CASCADE, verbose_name=_('Event'), help_text=_('Associated event')) + updated = models.DateTimeField(auto_now=True, verbose_name=_("Last update")) + class Meta: verbose_name = _('AK Slot') verbose_name_plural = _('AK Slots') @@ -281,3 +285,10 @@ class AKSlot(models.Model): if self.start is None: return _("Not scheduled yet") return self.start.strftime('%a %H:%M') + + @property + def end(self): + """ + Retrieve end time of the AK slot + """ + return self.start + datetime.timedelta(hours=float(self.duration)) diff --git a/AKModel/templatetags/tags_AKModel.py b/AKModel/templatetags/tags_AKModel.py index 4c154816021ab08908b03290c86de25480075ea3..4540e85997647ba46b2cae4ac1404d03194e329c 100644 --- a/AKModel/templatetags/tags_AKModel.py +++ b/AKModel/templatetags/tags_AKModel.py @@ -1,9 +1,16 @@ from django import template +from django.apps import apps from django.conf import settings register = template.Library() + # Get Footer Info from settings @register.simple_tag def footer_info(): return settings.FOOTER_INFO + + +@register.filter +def check_app_installed(name): + return apps.is_installed(name) diff --git a/AKPlanning/settings.py b/AKPlanning/settings.py index ae81292a55b9540cd5b6cbd54fa32d16cf07203d..4d10d860b1df8ca0a698c15bfee04177d0b3f325 100644 --- a/AKPlanning/settings.py +++ b/AKPlanning/settings.py @@ -11,9 +11,8 @@ https://docs.djangoproject.com/en/2.2/ref/settings/ """ import os -from django.utils.translation import gettext_lazy as _ - +from django.utils.translation import gettext_lazy as _ # Build paths inside the project like this: os.path.join(BASE_DIR, ...) from split_settings.tools import optional, include @@ -37,7 +36,7 @@ INSTALLED_APPS = [ 'AKDashboard.apps.AkdashboardConfig', 'AKSubmission.apps.AksubmissionConfig', 'AKScheduling.apps.AkschedulingConfig', - 'AKPlan.apps.AkplanConfig', + # 'AKPlan.apps.AkplanConfig', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', diff --git a/AKSubmission/locale/de_DE/LC_MESSAGES/django.po b/AKSubmission/locale/de_DE/LC_MESSAGES/django.po index dde61690383e890ce581a526e6fa1edc90372e71..044fcb7ad35e657d875726cd9c287d29f128ab0c 100644 --- a/AKSubmission/locale/de_DE/LC_MESSAGES/django.po +++ b/AKSubmission/locale/de_DE/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-10-29 15:27+0000\n" +"POT-Creation-Date: 2020-01-08 21:38+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -40,81 +40,79 @@ msgstr "" #: templates/AKSubmission/ak_detail.html:8 #: templates/AKSubmission/ak_edit.html:8 templates/AKSubmission/ak_list.html:8 -#: templates/AKSubmission/ak_list.html:14 +#: templates/AKSubmission/ak_list.html:23 #: templates/AKSubmission/akowner_create_update.html:7 #: templates/AKSubmission/akslot_add_update.html:7 #: templates/AKSubmission/akslot_delete.html:7 #: templates/AKSubmission/submission_overview.html:6 -#: templates/AKSubmission/submission_overview.html:15 +#: templates/AKSubmission/submission_overview.html:23 #: templates/AKSubmission/submit_new.html:8 #: templates/AKSubmission/submit_new_wish.html:5 msgid "AKs" msgstr "AKs" #: templates/AKSubmission/ak_detail.html:8 -#: templates/AKSubmission/akslot_delete.html:30 -#, fuzzy -#| msgid "AKs" +#: templates/AKSubmission/akslot_delete.html:31 msgid "AK" -msgstr "AKs" +msgstr "AK" #: templates/AKSubmission/ak_detail.html:13 -#: templates/AKSubmission/ak_edit.html:14 -#: templates/AKSubmission/ak_list.html:13 -#: templates/AKSubmission/ak_list.html:18 -#: templates/AKSubmission/akowner_create_update.html:13 -#: templates/AKSubmission/akslot_add_update.html:13 -#: templates/AKSubmission/akslot_delete.html:13 +#: templates/AKSubmission/ak_edit.html:13 +#: templates/AKSubmission/ak_list.html:22 +#: templates/AKSubmission/ak_list.html:27 +#: templates/AKSubmission/akowner_create_update.html:12 +#: templates/AKSubmission/akslot_add_update.html:12 +#: templates/AKSubmission/akslot_delete.html:12 #: templates/AKSubmission/submission_overview.html:6 -#: templates/AKSubmission/submission_overview.html:11 -#: templates/AKSubmission/submit_new.html:19 +#: templates/AKSubmission/submission_overview.html:19 +#: templates/AKSubmission/submit_new.html:18 #: templates/AKSubmission/submit_new_wish.html:10 msgid "AK Submission" msgstr "AK-Eintragung" -#: templates/AKSubmission/ak_detail.html:27 -#: templates/AKSubmission/ak_list_table.html:30 +#: templates/AKSubmission/ak_detail.html:29 +#: templates/AKSubmission/ak_list_table.html:32 msgid "AK Wish" msgstr "AK-Wunsch" -#: templates/AKSubmission/ak_detail.html:30 +#: templates/AKSubmission/ak_detail.html:33 #: templates/AKSubmission/ak_list_table.html:10 msgid "Who?" msgstr "Wer?" -#: templates/AKSubmission/ak_detail.html:32 +#: templates/AKSubmission/ak_detail.html:37 #: templates/AKSubmission/ak_list_table.html:11 msgid "Category" msgstr "Kategorie" -#: templates/AKSubmission/ak_detail.html:38 +#: templates/AKSubmission/ak_detail.html:43 msgid "Present this AK" msgstr "Diesen AK vorstellen" -#: templates/AKSubmission/ak_detail.html:42 -#: templates/AKSubmission/ak_list.html:26 +#: templates/AKSubmission/ak_detail.html:47 +#: templates/AKSubmission/ak_list.html:35 #: templates/AKSubmission/ak_list_table.html:12 msgid "Tags" msgstr "Tags" -#: templates/AKSubmission/ak_detail.html:48 +#: templates/AKSubmission/ak_detail.html:53 msgid "Reso?" msgstr "Reso?" -#: templates/AKSubmission/ak_detail.html:62 +#: templates/AKSubmission/ak_detail.html:67 msgid "When?" msgstr "Wann?" -#: templates/AKSubmission/ak_detail.html:63 -#: templates/AKSubmission/akslot_delete.html:31 +#: templates/AKSubmission/ak_detail.html:68 +#: templates/AKSubmission/akslot_delete.html:35 msgid "Duration" msgstr "Dauer" -#: templates/AKSubmission/ak_detail.html:64 +#: templates/AKSubmission/ak_detail.html:69 msgid "Room" msgstr "Raum" -#: templates/AKSubmission/ak_detail.html:86 +#: templates/AKSubmission/ak_detail.html:95 msgid "Add another slot" msgstr "Einen neuen AK-Slot hinzufügen" @@ -126,7 +124,7 @@ msgstr "AK bearbeiten" msgid "Edit" msgstr "Bearbeiten" -#: templates/AKSubmission/ak_list.html:20 +#: templates/AKSubmission/ak_list.html:29 msgid "Categories" msgstr "Kategorie" @@ -134,34 +132,34 @@ msgstr "Kategorie" msgid "Name" msgstr "Name" -#: templates/AKSubmission/ak_list_table.html:22 +#: templates/AKSubmission/ak_list_table.html:23 msgid "present this AK" msgstr "Diesen AK vorstellen" -#: templates/AKSubmission/ak_list_table.html:25 +#: templates/AKSubmission/ak_list_table.html:27 msgid "Reso" msgstr "Reso" #: templates/AKSubmission/akowner_create_update.html:7 -#: templates/AKSubmission/akowner_create_update.html:14 -#: templates/AKSubmission/akowner_create_update.html:19 +#: templates/AKSubmission/akowner_create_update.html:13 +#: templates/AKSubmission/akowner_create_update.html:18 msgid "AK Owner" msgstr "AK-Leitung" -#: templates/AKSubmission/akowner_create_update.html:25 +#: templates/AKSubmission/akowner_create_update.html:24 #: templates/AKSubmission/akslot_add_update.html:26 #: templates/AKSubmission/submit_new.html:34 msgid "Reset" msgstr "Zurücksetzen" -#: templates/AKSubmission/akowner_create_update.html:29 +#: templates/AKSubmission/akowner_create_update.html:28 #: templates/AKSubmission/akslot_add_update.html:30 -#: templates/AKSubmission/akslot_delete.html:36 +#: templates/AKSubmission/akslot_delete.html:42 #: templates/AKSubmission/submit_new.html:38 msgid "Cancel" msgstr "Abbrechen" -#: templates/AKSubmission/akowner_create_update.html:32 +#: templates/AKSubmission/akowner_create_update.html:31 #: templates/AKSubmission/akslot_add_update.html:33 msgid "Continue" msgstr "Weiter" @@ -172,57 +170,61 @@ msgstr "Weiter" #: templates/AKSubmission/akslot_delete.html:7 #: templates/AKSubmission/akslot_delete.html:15 #: templates/AKSubmission/akslot_delete.html:20 -#, fuzzy -#| msgid "Duration(s)" msgid "AK Duration(s)" -msgstr "Dauer(n)" +msgstr "AK-Dauer(n)" #: templates/AKSubmission/akslot_delete.html:25 msgid "Do you really want to delete this AK Slot?" -msgstr "" +msgstr "Willst du diesen AK-Slot wirklich löschen?" -#: templates/AKSubmission/akslot_delete.html:39 +#: templates/AKSubmission/akslot_delete.html:45 msgid "Confirm" msgstr "Bestätigen" -#: templates/AKSubmission/base_submission.html:8 +#: templates/AKSubmission/submission_base.html:13 msgid "Write to organizers of this event for questions and comments" msgstr "Fragen oder Kommentare? Schreib den Orgas dieses Events eine Mail" -#: templates/AKSubmission/submission_overview.html:19 +#: templates/AKSubmission/submission_overview.html:27 msgid "" "On this page you can see a list of current AKs, change them and add new ones." msgstr "" "Auf dieser Seite kannst du eine Liste von aktuellen AKs sehen, diese " "bearbeiten und neue hinzufügen." -#: templates/AKSubmission/submission_overview.html:25 +#: templates/AKSubmission/submission_overview.html:34 #: templates/AKSubmission/submit_new_wish.html:5 #: templates/AKSubmission/submit_new_wish.html:11 #: templates/AKSubmission/submit_new_wish.html:15 msgid "New AK Wish" msgstr "Neuer AK-Wunsch" -#: templates/AKSubmission/submission_overview.html:29 +#: templates/AKSubmission/submission_overview.html:38 msgid "Who" msgstr "Wer" -#: templates/AKSubmission/submission_overview.html:32 +#: templates/AKSubmission/submission_overview.html:41 msgid "I do not own AKs yet" msgstr "Ich leite bisher keine AKs" -#: templates/AKSubmission/submission_overview.html:40 +#: templates/AKSubmission/submission_overview.html:49 #: templates/AKSubmission/submit_new.html:8 #: templates/AKSubmission/submit_new.html:21 #: templates/AKSubmission/submit_new.html:28 msgid "New AK" msgstr "Neuer AK" -#: templates/AKSubmission/submission_overview.html:46 +#: templates/AKSubmission/submission_overview.html:55 msgid "Edit Person Info" msgstr "Personen-Info bearbeiten" -#: templates/AKSubmission/submission_overview.html:53 +#: templates/AKSubmission/submission_overview.html:62 +msgid "This event is not active. You cannot add or change AKs" +msgstr "" +"Dieses Event is nicht aktiv. Es können keine AKs hinzugefügt oder bearbeitet " +"werden" + +#: templates/AKSubmission/submission_overview.html:66 msgid "Current AKs" msgstr "Aktuelle AKs" @@ -246,38 +248,32 @@ msgstr "AK erfolgreich angelegt" #: views.py:157 msgid "AK successfully updated" -msgstr "AK erfolgreich bearbeitet" +msgstr "AK erfolgreich aktualisiert" #: views.py:215 msgid "Person Info successfully updated" -msgstr "Personen-Info erfolgreich bearbeitet" +msgstr "Personen-Info erfolgreich aktualisiert" #: views.py:228 msgid "No user selected" msgstr "Keine Person ausgewählt" #: views.py:254 -#, fuzzy -#| msgid "AK successfully created" msgid "AK Slot successfully added" -msgstr "AK erfolgreich angelegt" +msgstr "AK-Slot erfolgreich angelegt" #: views.py:266 msgid "You cannot edit a slot that has already been scheduled" msgstr "Bereits geplante AK-Slots können nicht mehr bearbeitet werden" #: views.py:276 -#, fuzzy -#| msgid "AK successfully updated" msgid "AK Slot successfully updated" -msgstr "AK erfolgreich bearbeitet" +msgstr "AK-Slot erfolgreich aktualisiert" #: views.py:287 msgid "You cannot delete a slot that has already been scheduled" msgstr "Bereits geplante AK-Slots können nicht mehr gelöscht werden" #: views.py:297 -#, fuzzy -#| msgid "AK successfully created" msgid "AK Slot successfully deleted" -msgstr "AK erfolgreich angelegt" +msgstr "AK-Slot erfolgreich angelegt" diff --git a/AKSubmission/templates/AKSubmission/ak_detail.html b/AKSubmission/templates/AKSubmission/ak_detail.html index c7d9b53ab75945f695188fa31347347c6dc0ed24..b8e1c830db25c423425c5e354a9a9df384ff895b 100644 --- a/AKSubmission/templates/AKSubmission/ak_detail.html +++ b/AKSubmission/templates/AKSubmission/ak_detail.html @@ -1,4 +1,4 @@ -{% extends 'AKSubmission/base_submission.html' %} +{% extends 'AKSubmission/submission_base.html' %} {% load i18n %} {% load fontawesome %} @@ -8,9 +8,9 @@ {% block title %}{% trans "AKs" %}: {{ ak.event.name }} - {% trans "AK" %}: {{ ak.name }}{% endblock %} {% block breadcrumbs %} - <li class="breadcrumb-item">AKPlanning</li> - <li class="breadcrumb-item">{{ ak.event.slug }}</li> - <li class="breadcrumb-item"><a href="{% url 'submit:submission_overview' event_slug=ak.event.slug %}">{% trans "AK Submission" %}</a></li> + {% include "AKSubmission/submission_breadcrumbs.html" %} + <li class="breadcrumb-item"><a + href="{% url 'submit:submission_overview' event_slug=ak.event.slug %}">{% trans "AK Submission" %}</a></li> <li class="breadcrumb-item active">{{ ak.name }}</li> {% endblock %} @@ -19,15 +19,20 @@ <div class="float-right"> {% if ak.link != "" %} - <a href="{{ ak.link }}" class="btn btn-info">{% fontawesome_icon 'external-link-alt' %}</a> + <a href="{{ ak.link }}" class="btn btn-info">{% fontawesome_icon 'external-link-alt' %}</a> {% endif %} - <a href="{% url 'submit:ak_edit' event_slug=ak.event.slug pk=ak.pk %}" class="btn btn-success">{% fontawesome_icon 'pencil-alt' %}</a> - </div> + {% if ak.event.active %} + <a href="{% url 'submit:ak_edit' event_slug=ak.event.slug pk=ak.pk %}" + class="btn btn-success">{% fontawesome_icon 'pencil-alt' %}</a> + {% endif %} </div> <h2>{% if ak.wish %}{% trans "AK Wish" %}: {% endif %}{{ ak.name }}</h2> <table class="table table-borderless"> - <tr><td>{% trans "Who?" %}</td><td>{{ ak.owners_list }}</td></tr> + <tr> + <td>{% trans "Who?" %}</td> + <td>{{ ak.owners_list }}</td> + </tr> <tr> <td>{% trans 'Category' %}</td> <td> @@ -58,32 +63,37 @@ <table class="table"> <thead> - <tr> - <th>{% trans "When?" %}</th> - <th>{% trans "Duration" %}</th> - <th>{% trans "Room" %}</th> - <th></th> - </tr> + <tr> + <th>{% trans "When?" %}</th> + <th>{% trans "Duration" %}</th> + <th>{% trans "Room" %}</th> + <th></th> + </tr> </thead> <tbody> - {% for slot in ak.akslot_set.all %} - <tr> - <td>{{ slot.start_simplified }}</td> - <td>{{ slot.duration }}</td> - <td>{{ slot.room }}</td> - <td> - {% if not slot.start %} - <a href="{% url 'submit:akslot_edit' event_slug=ak.event.slug pk=slot.pk %}" class="btn btn-success">{% fontawesome_icon 'pencil-alt' %}</a> - <a href="{% url 'submit:akslot_delete' event_slug=ak.event.slug pk=slot.pk %}" class="btn btn-danger">{% fontawesome_icon 'times' %}</a> - {% endif %} - </td> - </tr> - {% endfor %} + {% for slot in ak.akslot_set.all %} + <tr> + <td>{{ slot.start_simplified }}</td> + <td>{{ slot.duration }}</td> + <td>{{ slot.room }}</td> + <td> + {% if not slot.start %} + <a href="{% url 'submit:akslot_edit' event_slug=ak.event.slug pk=slot.pk %}" + class="btn btn-success">{% fontawesome_icon 'pencil-alt' %}</a> + <a href="{% url 'submit:akslot_delete' event_slug=ak.event.slug pk=slot.pk %}" + class="btn btn-danger">{% fontawesome_icon 'times' %}</a> + {% endif %} + </td> + </tr> + {% endfor %} </tbody> </table> - <div class=""> - <a href="{% url 'submit:akslot_add' event_slug=ak.event.slug pk=ak.pk %}" class="btn btn-success">{% fontawesome_icon 'plus' %} {% trans "Add another slot" %}</a> - </div> + {% if ak.event.active %} + <div class=""> + <a href="{% url 'submit:akslot_add' event_slug=ak.event.slug pk=ak.pk %}" + class="btn btn-success">{% fontawesome_icon 'plus' %} {% trans "Add another slot" %}</a> + </div> + {% endif %} {% endblock %} diff --git a/AKSubmission/templates/AKSubmission/ak_edit.html b/AKSubmission/templates/AKSubmission/ak_edit.html index 9c6077ece628f8f949e4cfb35b7fdc70821d531f..a5e0b1c6771102ef617e9c7eebad65966a622936 100644 --- a/AKSubmission/templates/AKSubmission/ak_edit.html +++ b/AKSubmission/templates/AKSubmission/ak_edit.html @@ -8,11 +8,11 @@ {% block title %}{% trans "AKs" %}: {{ event.name }} - {% trans "Edit AK" %}: {{ ak.name }}{% endblock %} {% block breadcrumbs %} - <li class="breadcrumb-item">AKPlanning</li> - <li class="breadcrumb-item">{{ event.slug }}</li> + {% include "AKSubmission/submission_breadcrumbs.html" %} <li class="breadcrumb-item"><a href="{% url 'submit:submission_overview' event_slug=event.slug %}">{% trans "AK Submission" %}</a></li> - <li class="breadcrumb-item"><a href="{% url 'submit:ak_detail' event_slug=event.slug pk=ak.pk %}">{{ ak.short_name }}</a></li> + <li class="breadcrumb-item"><a + href="{% url 'submit:ak_detail' event_slug=event.slug pk=ak.pk %}">{{ ak.short_name }}</a></li> <li class="breadcrumb-item active">{% trans "Edit" %}</li> {% endblock %} diff --git a/AKSubmission/templates/AKSubmission/ak_list.html b/AKSubmission/templates/AKSubmission/ak_list.html index 808604411166a75449e2fe4672426d62a59e97c0..68373e6d1b413d8b6500e7a20679bf4ea5e5d26f 100644 --- a/AKSubmission/templates/AKSubmission/ak_list.html +++ b/AKSubmission/templates/AKSubmission/ak_list.html @@ -1,4 +1,4 @@ -{% extends 'AKSubmission/base_submission.html' %} +{% extends 'AKSubmission/submission_base.html' %} {% load i18n %} {% load fontawesome %} @@ -8,18 +8,18 @@ {% block title %}{% trans "AKs" %}: {{ event.name }} - {% trans "AKs" %}{% endblock %} {% block imports %} -<style> -/* Prevent wrapping of buttons in AK table */ -.table td:nth-child(5) { - white-space: nowrap; -} -</style> + <style> + /* Prevent wrapping of buttons in AK table */ + .table td:nth-child(5) { + white-space: nowrap; + } + </style> {% endblock %} {% block breadcrumbs %} - <li class="breadcrumb-item">AKPlanning</li> - <li class="breadcrumb-item">{{ event.slug }}</li> - <li class="breadcrumb-item"><a href="{% url 'submit:submission_overview' event_slug=event.slug %}">{% trans "AK Submission" %}</a></li> + {% include "AKSubmission/submission_breadcrumbs.html" %} + <li class="breadcrumb-item"><a + href="{% url 'submit:submission_overview' event_slug=event.slug %}">{% trans "AK Submission" %}</a></li> <li class="breadcrumb-item active">{% trans "AKs" %}</li> {% endblock %} diff --git a/AKSubmission/templates/AKSubmission/ak_list_table.html b/AKSubmission/templates/AKSubmission/ak_list_table.html index f9d405e844e51d7f6ea89e3996c797704b67db63..6ce385f9d059b4e089d2e68a33ed7746587dec28 100644 --- a/AKSubmission/templates/AKSubmission/ak_list_table.html +++ b/AKSubmission/templates/AKSubmission/ak_list_table.html @@ -4,25 +4,27 @@ {% load tags_AKSubmission %} <table id="akTable" class="table table-striped"> - <thead> - <tr> - <th>{% trans "Name" %}</th> - <th>{% trans "Who?" %}</th> - <th>{% trans 'Category' %}</th> - <th>{% trans "Tags" %}</th> - <th></th> - </tr> - </thead> - <tbody> + <thead> + <tr> + <th>{% trans "Name" %}</th> + <th>{% trans "Who?" %}</th> + <th>{% trans 'Category' %}</th> + <th>{% trans "Tags" %}</th> + <th></th> + </tr> + </thead> + <tbody> {% for ak in AKs %} <tr> <td> <b>{{ ak.name }}</b> {% if ak.present %} - <span class="badge badge-dark badge-pill" title="{% trans 'present this AK' %}">{% fontawesome_icon "bullhorn" %}</span> + <span class="badge badge-dark badge-pill" + title="{% trans 'present this AK' %}">{% fontawesome_icon "bullhorn" %}</span> {% endif %} {% if ak.reso %} - <span class="badge badge-dark badge-pill" title="{% trans 'Reso' %}">{% fontawesome_icon "scroll" %}</span> + <span class="badge badge-dark badge-pill" + title="{% trans 'Reso' %}">{% fontawesome_icon "scroll" %}</span> {% endif %} </td> <td> @@ -35,16 +37,20 @@ <td>{% category_linked_badge ak.category event.slug %}</td> <td>{% tag_list ak.tags.all event.slug %}</td> <td class="text-right"> - <a href="{% url 'submit:ak_detail' event_slug=ak.event.slug pk=ak.pk %}" class="btn btn-primary">{% fontawesome_icon 'info' %}</a> + <a href="{% url 'submit:ak_detail' event_slug=ak.event.slug pk=ak.pk %}" + class="btn btn-primary">{% fontawesome_icon 'info' %}</a> {% if ak.link %} - <a href="{{ ak.link }}" class="btn btn-info">{% fontawesome_icon 'external-link-alt' %}</a> + <a href="{{ ak.link }}" class="btn btn-info">{% fontawesome_icon 'external-link-alt' %}</a> + {% endif %} + {% if event.active %} + <a href="{% url 'submit:ak_edit' event_slug=event.slug pk=ak.pk %}" + class="btn btn-success">{% fontawesome_icon 'pencil-alt' %}</a> {% endif %} - <a href="{% url 'submit:ak_edit' event_slug=event.slug pk=ak.pk %}" class="btn btn-success">{% fontawesome_icon 'pencil-alt' %}</a> </td> </tr> <tr> <td colspan="5" class="small">{{ ak.description }}</td> </tr> {% endfor %} - </tbody> + </tbody> </table> diff --git a/AKSubmission/templates/AKSubmission/akowner_create_update.html b/AKSubmission/templates/AKSubmission/akowner_create_update.html index 7ebfc25f72450f66b2498d236c70d8725118333b..d0f22cec88368d55e929d180504a991964f80fc9 100644 --- a/AKSubmission/templates/AKSubmission/akowner_create_update.html +++ b/AKSubmission/templates/AKSubmission/akowner_create_update.html @@ -1,4 +1,4 @@ -{% extends 'AKSubmission/base_submission.html' %} +{% extends 'AKSubmission/submission_base.html' %} {% load i18n %} {% load bootstrap4 %} @@ -7,8 +7,7 @@ {% block title %}{% trans "AKs" %}: {{ event.name }} - {% trans "AK Owner" %}{% endblock %} {% block breadcrumbs %} - <li class="breadcrumb-item">AKPlanning</li> - <li class="breadcrumb-item">{{ event.slug }}</li> + {% include "AKSubmission/submission_breadcrumbs.html" %} <li class="breadcrumb-item"><a href="{% url 'submit:submission_overview' event_slug=event.slug %}">{% trans "AK Submission" %}</a></li> <li class="breadcrumb-item active">{% trans "AK Owner" %}</li> diff --git a/AKSubmission/templates/AKSubmission/akslot_add_update.html b/AKSubmission/templates/AKSubmission/akslot_add_update.html index 2a479dbdbce2695c8ea5613d8d0607ee5c2a20aa..c602fd6f89fcbe09a9129060d1ed783b6172066e 100644 --- a/AKSubmission/templates/AKSubmission/akslot_add_update.html +++ b/AKSubmission/templates/AKSubmission/akslot_add_update.html @@ -1,4 +1,4 @@ -{% extends 'AKSubmission/base_submission.html' %} +{% extends 'AKSubmission/submission_base.html' %} {% load i18n %} {% load bootstrap4 %} @@ -7,11 +7,11 @@ {% block title %}{% trans "AKs" %}: {{ event.name }} - {% trans "AK Duration(s)" %}{% endblock %} {% block breadcrumbs %} - <li class="breadcrumb-item">AKPlanning</li> - <li class="breadcrumb-item">{{ event.slug }}</li> + {% include "AKSubmission/submission_breadcrumbs.html" %} <li class="breadcrumb-item"><a href="{% url 'submit:submission_overview' event_slug=event.slug %}">{% trans "AK Submission" %}</a></li> - <li class="breadcrumb-item"><a href="{% url 'submit:ak_detail' event_slug=event.slug pk=ak.pk %}">{{ ak.short_name }}</a></li> + <li class="breadcrumb-item"><a + href="{% url 'submit:ak_detail' event_slug=event.slug pk=ak.pk %}">{{ ak.short_name }}</a></li> <li class="breadcrumb-item active">{% trans "AK Duration(s)" %}</li> {% endblock %} diff --git a/AKSubmission/templates/AKSubmission/akslot_delete.html b/AKSubmission/templates/AKSubmission/akslot_delete.html index fb69c140127bf25251be8c952539ddfc50e4d7c8..cfa69c211aec541892d75094a31ebee98370a41a 100644 --- a/AKSubmission/templates/AKSubmission/akslot_delete.html +++ b/AKSubmission/templates/AKSubmission/akslot_delete.html @@ -1,4 +1,4 @@ -{% extends 'AKSubmission/base_submission.html' %} +{% extends 'AKSubmission/submission_base.html' %} {% load i18n %} {% load bootstrap4 %} @@ -7,11 +7,11 @@ {% block title %}{% trans "AKs" %}: {{ event.name }} - {% trans "AK Duration(s)" %}{% endblock %} {% block breadcrumbs %} - <li class="breadcrumb-item">AKPlanning</li> - <li class="breadcrumb-item">{{ event.slug }}</li> + {% include "AKSubmission/submission_breadcrumbs.html" %} <li class="breadcrumb-item"><a href="{% url 'submit:submission_overview' event_slug=event.slug %}">{% trans "AK Submission" %}</a></li> - <li class="breadcrumb-item"><a href="{% url 'submit:ak_detail' event_slug=event.slug pk=ak.pk %}">{{ ak.short_name }}</a></li> + <li class="breadcrumb-item"><a + href="{% url 'submit:ak_detail' event_slug=event.slug pk=ak.pk %}">{{ ak.short_name }}</a></li> <li class="breadcrumb-item active">{% trans "AK Duration(s)" %}</li> {% endblock %} @@ -27,8 +27,14 @@ <table class="table"> <tbody> - <tr><td>{% trans "AK" %}</td><td>{{ akslot.ak }}</td></tr> - <tr><td>{% trans "Duration" %}</td><td>{{ akslot.duration }}</td></tr> + <tr> + <td>{% trans "AK" %}</td> + <td>{{ akslot.ak }}</td> + </tr> + <tr> + <td>{% trans "Duration" %}</td> + <td>{{ akslot.duration }}</td> + </tr> </tbody> </table> {% buttons %} diff --git a/AKSubmission/templates/AKSubmission/base_submission.html b/AKSubmission/templates/AKSubmission/base_submission.html deleted file mode 100644 index 9d9115d0e3f424c665b834f92877523c3ae3e89f..0000000000000000000000000000000000000000 --- a/AKSubmission/templates/AKSubmission/base_submission.html +++ /dev/null @@ -1,10 +0,0 @@ -{% extends "base.html" %} - -{% load fontawesome %} -{% load i18n %} - -{% block footer_custom %} - {% if event.contact_email %} - <h4><a href="mailto://{{ event.contact_email }}">{% fontawesome_icon "envelope" %} {% trans "Write to organizers of this event for questions and comments" %}</a></h4> - {% endif %} -{% endblock %} diff --git a/AKSubmission/templates/AKSubmission/submission_base.html b/AKSubmission/templates/AKSubmission/submission_base.html new file mode 100644 index 0000000000000000000000000000000000000000..1700a9a6d087a7d19c227f1247b1f2f3ebda8eb8 --- /dev/null +++ b/AKSubmission/templates/AKSubmission/submission_base.html @@ -0,0 +1,16 @@ +{% extends "base.html" %} + +{% load fontawesome %} +{% load i18n %} + +{% block breadcrumbs %} + {% include "AKSubmission/submission_breadcrumbs.html" %} +{% endblock %} + +{% block footer_custom %} + {% if event.contact_email %} + <h4> + <a href="mailto:{{ event.contact_email }}">{% fontawesome_icon "envelope" %} {% trans "Write to organizers of this event for questions and comments" %}</a> + </h4> + {% endif %} +{% endblock %} diff --git a/AKSubmission/templates/AKSubmission/submission_breadcrumbs.html b/AKSubmission/templates/AKSubmission/submission_breadcrumbs.html new file mode 100644 index 0000000000000000000000000000000000000000..147d6c261ac6e4b8a8d9f16a8d7e76fd2104b59d --- /dev/null +++ b/AKSubmission/templates/AKSubmission/submission_breadcrumbs.html @@ -0,0 +1,10 @@ +{% load tags_AKModel %} + +<li class="breadcrumb-item"> + {% if 'AKDashboard'|check_app_installed %} + <a href="{% url 'dashboard:dashboard' %}">AKPlanning</a> + {% else %} + AKPlanning + {% endif %} +</li> +<li class="breadcrumb-item">{{ event.slug }}</li> diff --git a/AKSubmission/templates/AKSubmission/submission_overview.html b/AKSubmission/templates/AKSubmission/submission_overview.html index 4581297910e7cecf9a1d6572476c17d0a7a8952f..5403d9796609cf7726826ceefb041ac480eff872 100644 --- a/AKSubmission/templates/AKSubmission/submission_overview.html +++ b/AKSubmission/templates/AKSubmission/submission_overview.html @@ -1,4 +1,4 @@ -{% extends 'AKSubmission/base_submission.html' %} +{% extends 'AKSubmission/submission_base.html' %} {% load i18n %} {% load fontawesome %} @@ -6,17 +6,16 @@ {% block title %}{% trans "AKs" %}: {{ event.name }} - {% trans "AK Submission" %}{% endblock %} {% block imports %} -<style> -/* Prevent wrapping of buttons in AK table */ -.table td:nth-child(5) { - white-space: nowrap; -} -</style> + <style> + /* Prevent wrapping of buttons in AK table */ + .table td:nth-child(5) { + white-space: nowrap; + } + </style> {% endblock %} {% block breadcrumbs %} - <li class="breadcrumb-item">AKPlanning</li> - <li class="breadcrumb-item">{{ event.slug }}</li> + {% include "AKSubmission/submission_breadcrumbs.html" %} <li class="breadcrumb-item active">{% trans "AK Submission" %}</li> {% endblock %} @@ -27,37 +26,42 @@ {% blocktrans %}On this page you can see a list of current AKs, change them and add new ones.{% endblocktrans %} - <div class="jumbotron" style="margin-top:20px;"> - <form method="POST" action="#" class="form-row"> - {% csrf_token %} - <a href="{% url 'submit:submit_ak_wish' event_slug=event.slug %}" class="btn btn-info"> - {% trans "New AK Wish" %} - </a> - <span style="font-size: 1.5em"> - | - <label for="selectOwnerId" class="align-middle d-inline">{% trans "Who" %}:</label> - </span> - <select name="owner_id" id="selectOwnerId" class=""> - <option value="-1">{% trans "I do not own AKs yet" %}</option> - {% for owner in existingOwners %} - <option value="{{ owner.pk }}">{{ owner }}</option> - {% endfor %} - </select> - <input - type="submit" - class="btn btn-primary" - value="{% trans "New AK" %}" - formaction="{% url 'submit:akowner_select' event_slug=event.slug %}" - /> - <input - type="submit" - class="btn btn-success" - value="{% trans 'Edit Person Info' %}" - formaction="{% url 'submit:akowner_edit_dispatch' event_slug=event.slug %}" - /> - </form> - </div> - + {% if event.active %} + <div class="jumbotron" style="margin-top:20px;"> + <form method="POST" action="#" class="form-row"> + {% csrf_token %} + <a href="{% url 'submit:submit_ak_wish' event_slug=event.slug %}" class="btn btn-info"> + {% trans "New AK Wish" %} + </a> + <span style="font-size: 1.5em"> + | + <label for="selectOwnerId" class="align-middle d-inline">{% trans "Who" %}:</label> + </span> + <select name="owner_id" id="selectOwnerId" class=""> + <option value="-1">{% trans "I do not own AKs yet" %}</option> + {% for owner in existingOwners %} + <option value="{{ owner.pk }}">{{ owner }}</option> + {% endfor %} + </select> + <input + type="submit" + class="btn btn-primary" + value="{% trans "New AK" %}" + formaction="{% url 'submit:akowner_select' event_slug=event.slug %}" + /> + <input + type="submit" + class="btn btn-success" + value="{% trans 'Edit Person Info' %}" + formaction="{% url 'submit:akowner_edit_dispatch' event_slug=event.slug %}" + /> + </form> + </div> + {% else %} + <div class="alert alert-warning" style="margin-top:20px;margin-bottom: 20px;"> + {% trans "This event is not active. You cannot add or change AKs" %} + </div> + {% endif %} <h2>{% trans "Current AKs" %}</h2> @@ -67,9 +71,10 @@ <ul class="nav nav-tabs" style="margin-bottom:15px"> {% for category, _ in categories %} - <li class="nav-item"> - <a class="nav-link {% if forloop.first %}active{% endif %}" data-toggle="tab" href="#category_{{ category.pk }}">{{ category.name }}</a> - </li> + <li class="nav-item"> + <a class="nav-link {% if forloop.first %}active{% endif %}" data-toggle="tab" + href="#category_{{ category.pk }}">{{ category.name }}</a> + </li> {% endfor %} </ul> diff --git a/AKSubmission/templates/AKSubmission/submit_new.html b/AKSubmission/templates/AKSubmission/submit_new.html index 3e0815cb17472946a41fa3ba8a41d0c37ce17c26..28024bd60e33345894b1cc66a8b728178aab1b9c 100644 --- a/AKSubmission/templates/AKSubmission/submit_new.html +++ b/AKSubmission/templates/AKSubmission/submit_new.html @@ -1,4 +1,4 @@ -{% extends 'AKSubmission/base_submission.html' %} +{% extends 'AKSubmission/submission_base.html' %} {% load i18n %} {% load bootstrap4 %} @@ -13,11 +13,11 @@ {% endblock %} {% block breadcrumbs %} - <li class="breadcrumb-item">AKPlanning</li> - <li class="breadcrumb-item">{{ event.slug }}</li> + {% include "AKSubmission/submission_breadcrumbs.html" %} <li class="breadcrumb-item"><a href="{% url 'submit:submission_overview' event_slug=event.slug %}">{% trans "AK Submission" %}</a></li> - <li class="breadcrumb-item"><a href="{% url 'submit:akowner_edit' event_slug=event.slug slug=owner.slug %}">{{ owner.slug }}</a></li> + <li class="breadcrumb-item"><a + href="{% url 'submit:akowner_edit' event_slug=event.slug slug=owner.slug %}">{{ owner.slug }}</a></li> <li class="breadcrumb-item active">{% trans "New AK" %}</li> {% endblock %} @@ -47,8 +47,8 @@ {% block bottom_script %} <script src="{% static 'common/vendor/chosen-js/chosen.jquery.js' %}"></script> <script> - $(function() { - $('.chosen-select').chosen(); - }); + $(function () { + $('.chosen-select').chosen(); + }); </script> {% endblock %} \ No newline at end of file diff --git a/AKSubmission/templates/AKSubmission/submit_new_wish.html b/AKSubmission/templates/AKSubmission/submit_new_wish.html index 5bd54e7b718a88734217c8d14aa4c6d8bcfe9af1..6896c00a6e9a4e7b2f8a54c264d43ab718232d7c 100644 --- a/AKSubmission/templates/AKSubmission/submit_new_wish.html +++ b/AKSubmission/templates/AKSubmission/submit_new_wish.html @@ -5,9 +5,9 @@ {% block title %}{% trans "AKs" %}: {{ event.name }} - {% trans "New AK Wish" %}{% endblock %} {% block breadcrumbs %} - <li class="breadcrumb-item">AKPlanning</li> - <li class="breadcrumb-item">{{ event.slug }}</li> - <li class="breadcrumb-item"><a href="{% url 'submit:submission_overview' event_slug=event.slug %}">{% trans "AK Submission" %}</a></li> + {% include "AKSubmission/submission_breadcrumbs.html" %} + <li class="breadcrumb-item"><a + href="{% url 'submit:submission_overview' event_slug=event.slug %}">{% trans "AK Submission" %}</a></li> <li class="breadcrumb-item active">{% trans "New AK Wish" %}</li> {% endblock %} diff --git a/AKSubmission/urls.py b/AKSubmission/urls.py index c40cb5960de9ee91ce8ab091acd0b6108accf537..01bbcbad65e18be9a1d3f018e62ff56082350b91 100644 --- a/AKSubmission/urls.py +++ b/AKSubmission/urls.py @@ -9,14 +9,14 @@ urlpatterns = [ '<slug:event_slug>/submission/', include([ path('', views.SubmissionOverviewView.as_view(), name='submission_overview'), - path('ak/<int:pk>', views.AKDetailView.as_view(), name='ak_detail'), + path('ak/<int:pk>/', views.AKDetailView.as_view(), name='ak_detail'), path('ak/<int:pk>/edit/', views.AKEditView.as_view(), name='ak_edit'), path('ak/<int:pk>/add_slot/', views.AKSlotAddView.as_view(), name='akslot_add'), path('akslot/<int:pk>/edit/', views.AKSlotEditView.as_view(), name='akslot_edit'), path('akslot/<int:pk>/delete/', views.AKSlotDeleteView.as_view(), name='akslot_delete'), path('aks/', views.AKListView.as_view(), name='ak_list'), - path('aks/category/<int:category_pk>', views.AKListByCategoryView.as_view(), name='ak_list_by_category'), - path('aks/tag/<int:tag_pk>', views.AKListByTagView.as_view(), name='ak_list_by_tag'), + path('aks/category/<int:category_pk>/', views.AKListByCategoryView.as_view(), name='ak_list_by_category'), + path('aks/tag/<int:tag_pk>/', views.AKListByTagView.as_view(), name='ak_list_by_tag'), path('owner/', views.AKOwnerCreateView.as_view(), name='akowner_create'), path('new/', views.AKOwnerSelectDispatchView.as_view(), name='akowner_select'), path('owner/edit/', views.AKOwnerEditDispatchView.as_view(), name='akowner_edit_dispatch'), diff --git a/static_common/common/css/bootstrap-choosen.css b/static_common/common/css/bootstrap-chosen.css similarity index 100% rename from static_common/common/css/bootstrap-choosen.css rename to static_common/common/css/bootstrap-chosen.css