Use different types of labels for different patch statuses
authorTomas Vondra <tv@fuzzy.cz>
Sat, 21 Feb 2015 18:05:45 +0000 (13:05 -0500)
committerMagnus Hagander <magnus@hagander.net>
Sat, 21 Feb 2015 18:05:45 +0000 (13:05 -0500)
This highlights the different statuses better in a long list.

pgcommitfest/commitfest/models.py
pgcommitfest/commitfest/templates/commitfest.html
pgcommitfest/commitfest/templatetags/commitfest.py

index 0aa66dc178e3c14c2a5cf5bcd39808b759acc9f3..60350277c718d60c30db2128fb8428d5a37ca332 100644 (file)
@@ -155,6 +155,14 @@ class PatchOnCommitFest(models.Model):
                (STATUS_RETURNED, 'Returned with Feedback'),
                (STATUS_REJECTED, 'Rejected'),
        )
+       _STATUS_LABELS=(
+               (STATUS_REVIEW, 'default'),
+               (STATUS_AUTHOR, 'primary'),
+               (STATUS_COMMITTER, 'info'),
+               (STATUS_COMMITTED, 'success'),
+               (STATUS_RETURNED, 'warning'),
+               (STATUS_REJECTED, 'danger'),
+       )
        OPEN_STATUSES=(STATUS_REVIEW, STATUS_AUTHOR, STATUS_COMMITTER)
        OPEN_STATUS_CHOICES=[x for x in _STATUS_CHOICES if x[0] in OPEN_STATUSES]
 
index 056808f22bcb192aa9c5c8a44f30edea68470ddd..04cf111bcda18f22a4567b960602c9d41104a986 100644 (file)
@@ -74,7 +74,7 @@
 {%endif%}
   <tr>
    <td><a href="{{p.id}}/">{{p}}</a></td>
-   <td><span class="label label-default">{{p.status|patchstatusstring}}</span></td>
+   <td><span class="label label-{{p.status|patchstatuslabel}}">{{p.status|patchstatusstring}}</span></td>
    <td>{{p.author_names|default:''}}</td>
    <td>{{p.reviewer_names|default:''}}</td>
    <td>{{p.committer|default:''}}</p>
index 07b5ea4efe93712639f623d6f941a8a52e7b08d0..b8f68e469445f9b7350b1502a423e5a9d435ac4f 100644 (file)
@@ -11,6 +11,12 @@ def patchstatusstring(value):
        i = int(value)
        return [v for k,v in PatchOnCommitFest._STATUS_CHOICES if k==i][0]
 
+@register.filter(name='patchstatuslabel')
+@stringfilter
+def patchstatuslabel(value):
+       i = int(value)
+       return [v for k,v in PatchOnCommitFest._STATUS_LABELS if k==i][0]
+
 @register.filter(is_safe=True)
 def label_class(value, arg):
        return value.label_tag(attrs={'class': arg})