Browse Source

Another pass over admin lists

rafalp 6 years ago
parent
commit
fc6cea4d30

+ 2 - 3
misago/categories/views/permsadmin.py

@@ -138,10 +138,9 @@ class CategoryPermissions(CategoryAdmin, generic.ModelFormView):
 
 
 CategoriesList.add_item_action(
-    name=_("Category permissions"),
-    icon="fa fa-adjust",
+    name=_("Change permissions"),
     link="misago:admin:categories:nodes:permissions",
-    style="success",
+    icon="",
 )
 
 

+ 25 - 26
misago/templates/misago/admin/agreements/list.html

@@ -20,8 +20,6 @@
 <th style="width: 250px;">{% trans "Created" %}</th>
 <th style="width: 250px;">{% trans "Modified" %}</th>
 <th style="width: 1%;">&nbsp;</th>
-<th style="width: 1%;">&nbsp;</th>
-<th style="width: 1%;">&nbsp;</th>
 {% endblock table-header %}
 
 
@@ -40,7 +38,7 @@
 </td>
 <td class="badges-list">
   {% if item.is_active %}
-    <span class="badge badge-success">
+    <span class="badge badge-success" data-tooltip="top" title="{% trans 'Users are required to accept this agreement to use the site' %}">
       {% trans "Active" %}
     </span>
   {% endif %}
@@ -85,35 +83,36 @@
   {% endif %}
 </td>
 <td>
-  {% if not item.is_active %}
-    <form action="{% url 'misago:admin:users:agreements:set-as-active' pk=item.pk %}" method="post" class="set-as-active-prompt">
-      <button class="btn btn-primary" data-tooltip="top" title="{% trans 'Set as active' %}">
-        {% csrf_token %}
-        <span class="fa fa-check-square"></span>
-      </button>
-    </form>
-  {% else %}
-    &nbsp;
-  {% endif %}
-</td>
-<td>
-  <a href="{% url 'misago:admin:users:agreements:edit' pk=item.pk %}" class="btn btn-light btn-sm">
-    {% trans "Edit" %}
-  </a>
-</td>
-<td>
-  <form action="{% url 'misago:admin:users:agreements:delete' pk=item.pk %}" method="post" class="delete-prompt">
-    {% csrf_token %}
-    <button class="btn btn-light btn-sm">
-      {% trans "Remove" %}
+  <div class="dropdown">
+    <button class="btn btn-light btn-sm dropdown-toggle" type="button" id="item-optioms-{{ item.pk }}" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
+      <i class="fas fa-ellipsis-h"></i>
     </button>
-  </form>
+    <div class="dropdown-menu dropdown-menu-right" aria-labelledby="item-optioms-{{ item.pk }}">
+      {% if not item.is_active %}
+        <form action="{% url 'misago:admin:users:agreements:set-as-active' pk=item.pk %}" method="post" class="set-as-active-prompt">
+          {% csrf_token %}
+          <button class="dropdown-item">
+            {% trans "Set as active" %}
+          </button>
+        </form>
+      {% endif %}
+      <a class="dropdown-item" href="{% url 'misago:admin:users:agreements:edit' pk=item.pk %}">
+        {% trans "Edit agreement" %}
+      </a>
+      <form action="{% url 'misago:admin:users:agreements:delete' pk=item.pk %}" method="post" class="delete-prompt">
+        {% csrf_token %}
+        <button class="dropdown-item">
+          {% trans "Remove agreement" %}
+        </button>
+      </form>
+    </div>
+  </div>
 </td>
 {% endblock %}
 
 
 {% block blankslate %}
-<td colspan="10">
+<td colspan="8">
   {% if active_filters %}
     {% trans "No agreements matching criteria exist." %}
   {% else %}

+ 2 - 2
misago/templates/misago/admin/bans/list.html

@@ -55,12 +55,12 @@
     </button>
     <div class="dropdown-menu dropdown-menu-right" aria-labelledby="item-optioms-{{ item.pk }}">
       <a class="dropdown-item" href="{% url 'misago:admin:users:bans:edit' pk=item.pk %}">
-        {% trans "Edit" %}
+        {% trans "Edit ban" %}
       </a>
       <form action="{% url 'misago:admin:users:bans:delete' pk=item.pk %}" method="post" class="delete-prompt">
         {% csrf_token %}
         <button class="dropdown-item">
-          {% trans "Remove" %}
+          {% trans "Remove ban" %}
         </button>
       </form>
     </div>

+ 36 - 23
misago/templates/misago/admin/categories/list.html

@@ -13,29 +13,33 @@
 
 
 {% block table-header %}
+<th style="width: 1%;">&nbsp;</th>
 <th>{% trans "Category" %}</th>
-{% for action in extra_actions %}
-  <th style="width: 1%;">&nbsp;</th>
-{% endfor %}
-<th>&nbsp;</th>
-<th>&nbsp;</th>
-<th>&nbsp;</th>
-<th>&nbsp;</th>
+<th style="width: 1%;">&nbsp;</th>
+<th style="width: 1%;">&nbsp;</th>
+<th style="width: 1%;">&nbsp;</th>
 {% endblock table-header %}
 
 
 {% block table-row %}
-<td class="item-name">
+<td class="pr-0">
+  <a href="{{ item.get_absolute_url }}" class="btn btn-light btn-sm">
+    <span class="fas fa-external-link-alt"></span>
+  </a>
+</td>
+<td>
   {% for i in item.level_range %}
     &nbsp;&nbsp;&nbsp;&nbsp;
   {% endfor %}
-  {{ item }}
+  <a href="{% url 'misago:admin:categories:nodes:edit' pk=item.pk %}" class="item-name small">
+    {{ item }}
+  </a>
 </td>
 <td>
   {% if not item.last %}
     <form action="{% url 'misago:admin:categories:nodes:down' pk=item.pk %}" method="post">
-      <button class="btn btn-light" data-tooltip="top" title="{% trans 'Move down' %}">
-        {% csrf_token %}
+      {% csrf_token %}
+      <button class="btn btn-light btn-sm" data-tooltip="top" title="{% trans 'Move down' %}">
         <span class="fa fa-chevron-down"></span>
       </button>
     </form>
@@ -46,8 +50,8 @@
 <td>
   {% if not item.first %}
     <form action="{% url 'misago:admin:categories:nodes:up' pk=item.pk %}" method="post">
-      <button class="btn btn-light" data-tooltip="top" title="{% trans 'Move up' %}">
-        {% csrf_token %}
+      {% csrf_token %}
+      <button class="btn btn-light btn-sm" data-tooltip="top" title="{% trans 'Move up' %}">
         <span class="fa fa-chevron-up"></span>
       </button>
     </form>
@@ -55,22 +59,31 @@
     &nbsp;
   {% endif %}
 </td>
-{% include "misago/admin/generic/list_extra_actions.html" %}
 <td>
-  <a href="{% url 'misago:admin:categories:nodes:edit' pk=item.pk %}" class="btn btn-primary" data-tooltip="top" title="{% trans 'Edit' %}">
-    <span class="fa fa-pencil"></span>
-  </a>
-</td>
-<td>
-  <a href="{% url 'misago:admin:categories:nodes:delete' pk=item.pk %}" class="btn btn-danger" data-tooltip="top" title="{% trans 'Delete' %}">
-    <span class="fa fa-times"></span>
-  </a>
+  <div class="dropdown">
+    <button class="btn btn-light btn-sm dropdown-toggle" type="button" id="item-optioms-{{ item.pk }}" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
+      <i class="fas fa-ellipsis-h"></i>
+    </button>
+    <div class="dropdown-menu dropdown-menu-right" aria-labelledby="item-optioms-{{ item.pk }}">
+      {% for action in extra_actions %}
+        <a href="{% url action.link pk=item.pk %}" class="dropdown-item">
+          {{ action.name }}
+        </a>
+      {% endfor %}
+      <a class="dropdown-item" href="{% url 'misago:admin:categories:nodes:edit' pk=item.pk %}">
+        {% trans "Edit category" %}
+      </a>
+      <a class="dropdown-item" href="{% url 'misago:admin:categories:nodes:delete' pk=item.pk %}">
+        {% trans "Delete category" %}
+      </a>
+    </div>
+  </div>
 </td>
 {% endblock %}
 
 
 {% block blankslate %}
-<td colspan="{{ 5|add:extra_actions_len }}">
+<td colspan="{{ 5 }}">
   {% trans "No categories are set." %}
 </td>
 {% endblock blankslate %}

+ 18 - 12
misago/templates/misago/admin/categoryroles/list.html

@@ -15,32 +15,38 @@
 {% block table-header %}
 <th>{% trans "Category role" %}</th>
 <th style="width: 1%;">&nbsp;</th>
-<th style="width: 1%;">&nbsp;</th>
 {% endblock table-header %}
 
 
 {% block table-row %}
-<td class="item-name">
-  {{ item }}
-</td>
 <td>
-  <a href="{% url 'misago:admin:permissions:categories:edit' pk=item.pk %}" class="btn btn-primary" data-tooltip="top" title="{% trans 'Edit' %}">
-    <span class="fa fa-pencil"></span>
+  <a href="{% url 'misago:admin:permissions:categories:edit' pk=item.pk %}" class="item-name small">
+    {{ item }}
   </a>
 </td>
 <td>
-  <form action="{% url 'misago:admin:permissions:categories:delete' pk=item.pk %}" method="post" class="delete-prompt">
-    <button class="btn btn-danger" data-tooltip="top" title="{% trans 'Delete' %}">
-      {% csrf_token %}
-      <span class="fa fa-times"></span>
+  <div class="dropdown">
+    <button class="btn btn-light btn-sm dropdown-toggle" type="button" id="item-optioms-{{ item.pk }}" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
+      <i class="fas fa-ellipsis-h"></i>
     </button>
-  </form>
+    <div class="dropdown-menu dropdown-menu-right" aria-labelledby="item-optioms-{{ item.pk }}">
+      <a class="dropdown-item" href="{% url 'misago:admin:permissions:categories:edit' pk=item.pk %}">
+        {% trans "Edit role" %}
+      </a>
+      <form action="{% url 'misago:admin:permissions:categories:delete' pk=item.pk %}" method="post" class="delete-prompt">
+        {% csrf_token %}
+        <button class="dropdown-item">
+          {% trans "Delete role" %}
+        </button>
+      </form>
+    </div>
+  </div>
 </td>
 {% endblock %}
 
 
 {% block blankslate %}
-<td colspan="3">
+<td colspan="2">
   {% trans "No category roles are set." %}
 </td>
 {% endblock blankslate %}

+ 4 - 4
misago/templates/misago/admin/ranks/list.html

@@ -102,23 +102,23 @@
     </button>
     <div class="dropdown-menu dropdown-menu-right" aria-labelledby="item-optioms-{{ item.pk }}">
       <a class="dropdown-item" href="{% url 'misago:admin:users:ranks:users' pk=item.pk %}">
-        {% trans "See users with this rank" %}
+        {% trans "List users" %}
       </a>
       {% if not item.is_default %}
         <form action="{% url 'misago:admin:users:ranks:default' pk=item.pk %}" method="post">
           {% csrf_token %}
           <button class="dropdown-item">
-            {% trans "Set as default for new users" %}
+            {% trans "Set as default" %}
           </button>
         </form>
       {% endif %}
       <a class="dropdown-item" href="{% url 'misago:admin:users:ranks:edit' pk=item.pk %}">
-        {% trans "Edit" %}
+        {% trans "Edit rank" %}
       </a>
       <form action="{% url 'misago:admin:users:ranks:delete' pk=item.pk %}" method="post" class="delete-prompt">
         {% csrf_token %}
         <button class="dropdown-item">
-          {% trans "Delete" %}
+          {% trans "Delete rank" %}
         </button>
       </form>
     </div>

+ 26 - 22
misago/templates/misago/admin/roles/list.html

@@ -14,43 +14,47 @@
 
 {% block table-header %}
 <th>{% trans "Role" %}</th>
-{% for action in extra_actions %}
-  <th style="width: 1%;">&nbsp;</th>
-{% endfor %}
-<th style="width: 1%;">&nbsp;</th>
-<th style="width: 1%;">&nbsp;</th>
 <th style="width: 1%;">&nbsp;</th>
 {% endblock table-header %}
 
 
 {% block table-row %}
-<td class="item-name">
-  {{ item }}
-</td>
-{% include "misago/admin/generic/list_extra_actions.html" %}
-<td>
-  <a href="{% url 'misago:admin:permissions:users:users' pk=item.pk %}" class="btn btn-primary" data-tooltip="top" title="{% trans 'Users with role' %}">
-    <span class="fa fa-users"></span>
-  </a>
-</td>
 <td>
-  <a href="{% url 'misago:admin:permissions:users:edit' pk=item.pk %}" class="btn btn-primary" data-tooltip="top" title="{% trans 'Edit' %}">
-    <span class="fa fa-pencil"></span>
+  <a href="{% url 'misago:admin:permissions:users:edit' pk=item.pk %}" class="item-name small">
+    {{ item }}
   </a>
 </td>
 <td>
-  <form action="{% url 'misago:admin:permissions:users:delete' pk=item.pk %}" method="post" class="delete-prompt">
-    <button class="btn btn-danger" data-tooltip="top" title="{% trans 'Delete' %}">
-      {% csrf_token %}
-      <span class="fa fa-times"></span>
+  <div class="dropdown">
+    <button class="btn btn-light btn-sm dropdown-toggle" type="button" id="item-optioms-{{ item.pk }}" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
+      <i class="fas fa-ellipsis-h"></i>
     </button>
-  </form>
+    <div class="dropdown-menu dropdown-menu-right" aria-labelledby="item-optioms-{{ item.pk }}">
+      {% for action in extra_actions %}
+        <a href="{% url action.link pk=item.pk %}" class="dropdown-item">
+          {{ action.name }}
+        </a>
+      {% endfor %}
+      <a class="dropdown-item" href="{% url 'misago:admin:permissions:users:users' pk=item.pk %}">
+        {% trans "Users with role" %}
+      </a>
+      <a class="dropdown-item" href="{% url 'misago:admin:permissions:users:edit' pk=item.pk %}">
+        {% trans "Edit role" %}
+      </a>
+      <form action="{% url 'misago:admin:permissions:users:delete' pk=item.pk %}" method="post" class="delete-prompt">
+        {% csrf_token %}
+        <button class="dropdown-item">
+          {% trans "Delete role" %}
+        </button>
+      </form>
+    </div>
+  </div>
 </td>
 {% endblock %}
 
 
 {% block blankslate %}
-<td colspan="{{ 4|add:extra_actions_len }}">
+<td colspan="{{ 2">
   {% trans "No user roles are set." %}
 </td>
 {% endblock blankslate %}

+ 63 - 85
misago/templates/misago/admin/themes/list.html

@@ -20,105 +20,83 @@
 
 {% block table-header %}
 <th>{% trans "Theme" %}</th>
-<th>&nbsp;</th>
-<th>&nbsp;</th>
-<th>&nbsp;</th>
-<th>&nbsp;</th>
-<th>&nbsp;</th>
-<th>&nbsp;</th>
-<th>&nbsp;</th>
+<th style="width: 1%;">&nbsp;</th>
+<th style="width: 1%;">&nbsp;</th>
 {% endblock table-header %}
 
 
 {% block table-row %}
-<td class="item-name">
-  {% for i in item.level_range %}
-    &nbsp;&nbsp;&nbsp;&nbsp;
-  {% endfor %}
-  {{ item }}
-  {% if item.version %}
-    <span class="text-muted">
-      {{ item.version }}
+<td class="pr-0">
+  {% if item.is_default %}
+    <span class="item-name small">
+      {{ item }}
     </span>
+  {% else %}
+    {% for i in item.level_range %}
+      &nbsp;&nbsp;&nbsp;&nbsp;
+    {% endfor %}
+    <a href="{% url 'misago:admin:appearance:themes:edit' pk=item.pk %}" class="item-name small">
+      {{ item }}
+    </a>
+    {% if item.version %}
+      <span class="text-muted  small">
+        {{ item.version }}
+      </span>
+    {% endif %}
   {% endif %}
 </td>
-<td class="item-name">
+<td class="badges-list">
   {% if item.is_active %}
-    <span class="label label-success pull-right" style="margin: 0px;">
+    <span class="badge badge-success">
       {% trans "Active" %}
     </span>
-  {% else %}
-    &nbsp;
-  {% endif %}
-</td>
-<td>
-  {% if not item.is_default %}
-    <a href="{% url 'misago:admin:appearance:themes:assets' pk=item.pk %}" class="btn btn-primary" data-tooltip="top" title="{% trans 'Assets (CSS, images and fonts)' %}">
-      <span class="fa fa-pencil-square-o"></span>
-    </a>
-  {% else %}
-    <button class="btn" type="button" disabled>
-      <span class="fa fa-pencil-square-o"></span>
-    </button>
-  {% endif %}
-</td>
-<td>
-  {% if not item.is_default %}
-    <a href="{% url 'misago:admin:appearance:themes:edit' pk=item.pk %}" class="btn btn-primary" data-tooltip="top" title="{% trans 'Edit information' %}">
-      <span class="fa fa-pencil"></span>
-    </a>
-  {% else %}
-    <button class="btn" type="button" disabled>
-      <span class="fa fa-pencil"></span>
-    </button>
   {% endif %}
 </td>
 <td>
-  <a href="{% url 'misago:admin:appearance:themes:new' %}?parent={{ item.pk }}" class="btn btn-primary" data-tooltip="top" title="{% trans 'Create child theme' %}">
-    <span class="fa fa-file-o"></span>
-  </a>
-</td>
-<td>
-  {% if not item.is_active %}
-    <form action="{% url 'misago:admin:appearance:themes:activate' pk=item.pk %}" method="post">
-      <button class="btn btn-light" data-tooltip="top" title="{% trans 'Activate' %}">
-        {% csrf_token %}
-        <span class="fa fa-check-square"></span>
-      </button>
-    </form>
-  {% else %}
-    <button class="btn" type="button" disabled>
-      <span class="fa fa-check-square"></span>
+  <div class="dropdown">
+    <button class="btn btn-light btn-sm dropdown-toggle" type="button" id="item-optioms-{{ item.pk }}" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
+      <i class="fas fa-ellipsis-h"></i>
     </button>
-  {% endif %}
-</td>
-<td>
-  {% if not item.is_default %}
-    <form action="{% url 'misago:admin:appearance:themes:export' pk=item.pk %}" method="POST">
-      {% csrf_token %}
-      <button class="btn btn-primary" data-tooltip="top" title="{% trans 'Export' %}">
-        <span class="fa fa-download"></span>
-      </button>
-    </form>
-  {% else %}
-    <button class="btn" type="button" disabled>
-      <span class="fa fa-download"></span>
-    </button>
-  {% endif %}
-</td>
-<td>
-  {% if not item.is_active and not item.is_default %}
-    <form action="{% url 'misago:admin:appearance:themes:delete' pk=item.pk %}" method="POST" class="delete-prompt">
-      {% csrf_token %}
-      <button class="btn btn-danger" data-tooltip="top" title="{% trans 'Delete' %}">
-        <span class="fa fa-times"></span>
-      </button>
-    </form>
-  {% else %}
-    <button class="btn" type="button" disabled>
-      <span class="fa fa-times"></span>
-    </button>
-  {% endif %}
+    <div class="dropdown-menu dropdown-menu-right" aria-labelledby="item-optioms-{{ item.pk }}">
+      {% if not item.is_default %}
+        <a class="dropdown-item" href="{% url 'misago:admin:appearance:themes:assets' pk=item.pk %}">
+          {% trans "Edit assets" %}
+        </a>
+      {% endif %}
+      {% if not item.is_default %}
+        <a class="dropdown-item" href="{% url 'misago:admin:appearance:themes:edit' pk=item.pk %}">
+          {% trans "Edit information" %}
+        </a>
+      {% endif %}
+      <a class="dropdown-item" href="{% url 'misago:admin:appearance:themes:new' %}?parent={{ item.pk }}">
+        {% trans "Create child theme" %}
+      </a>
+      {% if not item.is_active %}
+        <form action="{% url 'misago:admin:appearance:themes:activate' pk=item.pk %}" method="post">
+          {% csrf_token %}
+          <button class="dropdown-item">
+            {% trans "Set as active" %}
+          </button>
+        </form>
+      {% endif %}
+      {% if not item.is_default %}
+        <form action="{% url 'misago:admin:appearance:themes:export' pk=item.pk %}" method="POST">
+          {% csrf_token %}
+          <button class="dropdown-item">
+            {% trans "Export theme" %}
+          </button>
+        </form>
+      {% endif %}
+      {% if not item.is_active and not item.is_default %}
+        <form action="{% url 'misago:admin:appearance:themes:delete' pk=item.pk %}" method="POST" class="delete-prompt">
+          {% csrf_token %}
+          <button class="dropdown-item">
+            {% trans "Delete theme" %}
+          </button>
+        </form>
+      {% endif %}
+    </div>
+  </div>
 </td>
 {% endblock %}