From d304b8dc42434049741a8167bdbd58fba6342ad9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Benjamin=20H=C3=A4ttasch?=
 <benjamin.haettasch@cs.tu-darmstadt.de>
Date: Tue, 22 Oct 2019 00:45:35 +0200
Subject: [PATCH] Improve treatment of wishes

Add visualization to ak list and detail page
Add option to treat them as an own category on submission overview
---
 AKPlanning/settings.py                        |  3 +++
 .../locale/de_DE/LC_MESSAGES/django.po        | 21 +++++++++++++++++--
 .../templates/AKSubmission/ak_detail.html     |  2 +-
 .../templates/AKSubmission/ak_list_table.html |  8 ++++++-
 .../AKSubmission/submission_overview.html     |  4 ++--
 AKSubmission/views.py                         | 10 ++++++++-
 6 files changed, 41 insertions(+), 7 deletions(-)

diff --git a/AKPlanning/settings.py b/AKPlanning/settings.py
index 0c97a248..88d3f855 100644
--- a/AKPlanning/settings.py
+++ b/AKPlanning/settings.py
@@ -137,3 +137,6 @@ BOOTSTRAP4 = {
 
 # Settings for FontAwesome
 FONTAWESOME_CSS_URL = "//cdnjs.cloudflare.com/ajax/libs/font-awesome/5.11.2/css/all.css"
+
+# Treat wishes as seperate category in submission views?
+WISHES_AS_CATEGORY = True
diff --git a/AKSubmission/locale/de_DE/LC_MESSAGES/django.po b/AKSubmission/locale/de_DE/LC_MESSAGES/django.po
index da9687ad..43e07211 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-18 22:22+0000\n"
+"POT-Creation-Date: 2019-10-21 22: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"
@@ -28,6 +28,11 @@ msgstr ""
 msgid "AK Submission"
 msgstr "AK-Eintragung"
 
+#: templates/AKSubmission/ak_detail.html:27
+#: templates/AKSubmission/ak_list_table.html:30
+msgid "AK Wish"
+msgstr "AK-Wunsch"
+
 #: templates/AKSubmission/ak_detail.html:30
 #: templates/AKSubmission/ak_list_table.html:10
 msgid "Who?"
@@ -87,7 +92,9 @@ msgstr "Reso"
 #: templates/AKSubmission/submission_overview.html:17
 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."
+msgstr ""
+"Auf dieser Seite kannst du eine Liste von aktuellen AKs sehen, diese "
+"bearbeiten und neue hinzufügen."
 
 #: templates/AKSubmission/submission_overview.html:20
 msgid "Submit"
@@ -104,3 +111,13 @@ msgstr "Neuer AK-Wunsch"
 #: templates/AKSubmission/submission_overview.html:26
 msgid "Current AKs"
 msgstr "Aktuelle AKs"
+
+#: views.py:33
+msgid "Wishes"
+msgstr "Wünsche"
+
+#: views.py:33
+msgid "AKs one would like to have"
+msgstr ""
+"AKs die sich gewünscht wurden, aber bei denen noch nicht klar ist, wer sie "
+"macht. Falls du dir das vorstellen kannst, trag dich einfach ein"
diff --git a/AKSubmission/templates/AKSubmission/ak_detail.html b/AKSubmission/templates/AKSubmission/ak_detail.html
index d68f3fc7..e03d50dc 100644
--- a/AKSubmission/templates/AKSubmission/ak_detail.html
+++ b/AKSubmission/templates/AKSubmission/ak_detail.html
@@ -24,7 +24,7 @@
         <a href="#" class="btn btn-success">{%  fontawesome_icon 'pencil-alt' %}</a>
     </div>
 
-    <h2>{{ ak.name }}</h2>
+    <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>
diff --git a/AKSubmission/templates/AKSubmission/ak_list_table.html b/AKSubmission/templates/AKSubmission/ak_list_table.html
index 275bbc7c..4f5d25cf 100644
--- a/AKSubmission/templates/AKSubmission/ak_list_table.html
+++ b/AKSubmission/templates/AKSubmission/ak_list_table.html
@@ -25,7 +25,13 @@
                     <span class="badge badge-dark badge-pill" title="{% trans 'Reso' %}">{% fontawesome_icon "scroll" %}</span>
                 {% endif %}
             </td>
-            <td>{{ ak.owners_list }}</td>
+            <td>
+                {% if ak.wish %}
+                    <span class="badge badge-dark badge-pill">{% trans "AK Wish" %}</span>
+                {% else %}
+                    {{ ak.owners_list }}
+                {% endif %}
+            </td>
             <td>{% category_linked_badge ak.category event.slug %}</td>
             <td>{% tag_list ak.tags.all event.slug %}</td>
             <td class="text-right">
diff --git a/AKSubmission/templates/AKSubmission/submission_overview.html b/AKSubmission/templates/AKSubmission/submission_overview.html
index 608bee94..7f991d9d 100644
--- a/AKSubmission/templates/AKSubmission/submission_overview.html
+++ b/AKSubmission/templates/AKSubmission/submission_overview.html
@@ -32,7 +32,7 @@
     <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 }}</a>
+            <a class="nav-link {% if forloop.first %}active{% endif %}" data-toggle="tab" href="#category_{{ category.pk }}">{{ category.name }}</a>
           </li>
         {% endfor %}
     </ul>
@@ -40,7 +40,7 @@
     <div id="akListTabbed" class="tab-content">
         {% for category, AKs in categories %}
             <div class="tab-pane fade {% if forloop.first %}show active{% endif %}" id="category_{{ category.pk }}">
-                <p><b>{{ category }}:</b> {{ category.description }}</p>
+                <p><b>{{ category.name }}:</b> {{ category.description }}</p>
                 {% include "AKSubmission/ak_list_table.html" %}
             </div>
         {% endfor %}
diff --git a/AKSubmission/views.py b/AKSubmission/views.py
index a2b994fe..4be08a38 100644
--- a/AKSubmission/views.py
+++ b/AKSubmission/views.py
@@ -4,6 +4,7 @@ from django.views.generic import ListView, DetailView
 
 from AKModel.models import AK, AKCategory, AKTag
 from AKModel.views import FilterByEventSlugMixin
+from django.conf import settings
 
 
 class SubmissionOverviewView(FilterByEventSlugMixin, ListView):
@@ -18,13 +19,20 @@ class SubmissionOverviewView(FilterByEventSlugMixin, ListView):
         # Sort AKs into different lists (by their category)
         categories = []
         aks_for_category = []
+        ak_wishes = []
         current_category = None
         for ak in context["AKs"]:
             if ak.category != current_category:
                 current_category = ak.category
                 aks_for_category = []
                 categories.append((current_category, aks_for_category))
-            aks_for_category.append(ak)
+            if settings.WISHES_AS_CATEGORY and ak.wish:
+                ak_wishes.append(ak)
+            else:
+                aks_for_category.append(ak)
+
+        if settings.WISHES_AS_CATEGORY:
+            categories.append(({"name":_("Wishes"), "pk": "wish", "description": _("AKs one would like to have")}, ak_wishes))
         context["categories"] = categories
 
         return context
-- 
GitLab