]> git.ozlabs.org Git - patchwork/blobdiff - patchwork/templatetags/patch.py
Add patch tag infrastructure
[patchwork] / patchwork / templatetags / patch.py
index bec0cabcdfca69258473b94524a1721bad41aedc..ea23ebd7aa7ce4bcf60e40236e58ade6a73d6f92 100644 (file)
@@ -18,6 +18,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
 from django import template
+from django.utils.safestring import mark_safe
 import re
 
 register = template.Library()
@@ -63,3 +64,15 @@ class EditablePatchNode(template.Node):
             return self.nodelist_false.render(context)
 
         return self.nodelist_true.render(context)
+
+@register.filter(name='patch_tags')
+def patch_tags(patch):
+    counts = []
+    titles = []
+    for tag in patch.project.tags:
+        count = getattr(patch, tag.attr_name)
+        titles.append('%d %s' % (count, tag.name))
+        counts.append(str(count))
+    return mark_safe('<span title="%s">%s</span>' % (
+            ' / '.join(titles),
+            ' '.join(counts)))