From 3a337afd346d3849137938f5e6f790c42b0a9fe0 Mon Sep 17 00:00:00 2001
From: Jonathan Weth <git@jonathanweth.de>
Date: Sat, 6 Feb 2021 12:41:44 +0100
Subject: [PATCH] [Group roles] Restructure templates by adding a partials
 folder

---
 .../alsijil/group_role/assigned_list.html     | 55 +------------------
 .../group_role/partials/assigned_roles.html   | 46 ++++++++++++++++
 .../group_role/partials/assignment.html       |  8 +++
 .../{ => partials}/assignment_options.html    |  0
 4 files changed, 56 insertions(+), 53 deletions(-)
 create mode 100644 aleksis/apps/alsijil/templates/alsijil/group_role/partials/assigned_roles.html
 create mode 100644 aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment.html
 rename aleksis/apps/alsijil/templates/alsijil/group_role/{ => partials}/assignment_options.html (100%)

diff --git a/aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html b/aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html
index 123bc4c2e..087dffaaf 100644
--- a/aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html
+++ b/aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html
@@ -51,58 +51,7 @@
     </div>
 
     <div id="current" class="col s12">
-      <div class="collection">
-        {% for role in roles %}
-          <div class="collection-item">
-            <div class="row no-margin">
-              <div class="col s12 m5 l4 xl3 no-padding">
-                {% if can_assign_group_role %}
-                  <a class="btn waves-effect waves-light right hide-on-med-and-up"
-                     href="{% url "assign_group_role" object.pk role.pk %}">
-                    <i class="material-icons center">add</i>
-                  </a>
-                {% endif %}
-
-                <div class="btn-margin">
-                  {% include "alsijil/group_role/chip.html" with role=role %}
-                </div>
-              </div>
-
-              <div class="col s12 m7 l8 xl9 no-padding">
-                {% if can_assign_group_role %}
-                  <a class="btn waves-effect waves-light right hide-on-small-only"
-                     href="{% url "assign_group_role" object.pk role.pk %}">
-                    <i class="material-icons center">add</i>
-                  </a>
-                {% endif %}
-
-                {% for assignment in role.assignments.all %}
-                  <a class="chip dropdown-trigger" href="#"
-                     data-target="dropdown-{{ assignment.pk }}" title="{{ assignment }}">{{ assignment.person }}
-                    {% if object not in assignment.groups.all %}
-                      <small>({{ assignment.group_names }})</small>
-                    {% endif %}
-                  </a>
-
-                  {% include "alsijil/group_role/assignment_options.html" with assignment=assignment back_url=back_url %}
-                  {% empty %}
-                  <div class="grey-text darken-3">{% trans "No one assigned." %}</div>
-                {% endfor %}
-              </div>
-            </div>
-          </div>
-        {% endfor %}
-      </div>
-
-      <div class="alert primary">
-        <div>
-          <i class="material-icons left">info</i>
-          {% blocktrans %}
-            You can get some additional actions for each group role assignment if you click on the name of the
-            corresponding person.
-          {% endblocktrans %}
-        </div>
-      </div>
+      {% include "alsijil/group_role/partials/assigned_roles.html" with roles=roles group=object back_url=back_url %}
     </div>
 
 
@@ -133,7 +82,7 @@
                 <i class="material-icons left">list</i>
                 {% trans "Actions" %}
               </a>
-              {% include "alsijil/group_role/assignment_options.html" with assignment=assignment back_url=back_url suffix="-d2" %}
+              {% include "alsijil/group_role/partials/assignment_options.html" with assignment=assignment back_url=back_url suffix="-d2" %}
             </td>
           </tr>
         {% endfor %}
diff --git a/aleksis/apps/alsijil/templates/alsijil/group_role/partials/assigned_roles.html b/aleksis/apps/alsijil/templates/alsijil/group_role/partials/assigned_roles.html
new file mode 100644
index 000000000..01edd746d
--- /dev/null
+++ b/aleksis/apps/alsijil/templates/alsijil/group_role/partials/assigned_roles.html
@@ -0,0 +1,46 @@
+{% load i18n %}
+<div class="collection">
+  {% for role in roles %}
+    <div class="collection-item">
+      <div class="row no-margin">
+        <div class="col s12 m5 l4 xl3 no-padding">
+          {% if can_assign_group_role %}
+            <a class="btn waves-effect waves-light right hide-on-med-and-up"
+               href="{% url "assign_group_role" group.pk role.pk %}">
+              <i class="material-icons center">add</i>
+            </a>
+          {% endif %}
+
+          <div class="btn-margin">
+            {% include "alsijil/group_role/chip.html" with role=role %}
+          </div>
+        </div>
+
+        <div class="col s12 m7 l8 xl9 no-padding">
+          {% if can_assign_group_role %}
+            <a class="btn waves-effect waves-light right hide-on-small-only"
+               href="{% url "assign_group_role" group.pk role.pk %}">
+              <i class="material-icons center">add</i>
+            </a>
+          {% endif %}
+
+          {% for assignment in role.assignments.all %}
+            {% include "alsijil/group_role/partials/assignment.html" with assignment=assignment group=group back_url=back_url %}
+            {% empty %}
+            <div class="grey-text darken-3">{% trans "No one assigned." %}</div>
+          {% endfor %}
+        </div>
+      </div>
+    </div>
+  {% endfor %}
+</div>
+
+<div class="alert primary">
+  <div>
+    <i class="material-icons left">info</i>
+    {% blocktrans %}
+      You can get some additional actions for each group role assignment if you click on the name of the
+      corresponding person.
+    {% endblocktrans %}
+  </div>
+</div>
\ No newline at end of file
diff --git a/aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment.html b/aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment.html
new file mode 100644
index 000000000..673e05f2c
--- /dev/null
+++ b/aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment.html
@@ -0,0 +1,8 @@
+<a class="chip dropdown-trigger" href="#"
+   data-target="dropdown-{{ assignment.pk }}" title="{{ assignment }}">{{ assignment.person }}
+  {% if group not in assignment.groups.all %}
+    <small>({{ assignment.group_names }})</small>
+  {% endif %}
+</a>
+
+{% include "alsijil/group_role/partials/assignment_options.html" with assignment=assignment back_url=back_url %}
\ No newline at end of file
diff --git a/aleksis/apps/alsijil/templates/alsijil/group_role/assignment_options.html b/aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment_options.html
similarity index 100%
rename from aleksis/apps/alsijil/templates/alsijil/group_role/assignment_options.html
rename to aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment_options.html
-- 
GitLab