First draft image gallery
[sommitrealweird.git] / sommitrealweird / generic / templatetags / thumbnail.py
diff --git a/sommitrealweird/generic/templatetags/thumbnail.py b/sommitrealweird/generic/templatetags/thumbnail.py
new file mode 100644 (file)
index 0000000..4e20cef
--- /dev/null
@@ -0,0 +1,37 @@
+from django import template
+from django.conf import settings
+from generic import helpers
+import sys
+
+register = template.Library()
+
+def thumbnail(image_url, args=''):
+    options = {}
+
+    if ',' not in args:
+        args = "%s," %(args,)
+
+    for arg in args.split(','):
+        arg = arg.strip()
+        try:
+            (kw,val) = arg.split('=', 1)
+            try:
+                options[kw] = int(val)
+            except:
+                pass
+        except:
+            pass
+
+    if options.has_key("height") or options.has_key("width"):
+        if options.has_key("width") and options.has_key("height"):
+            return helpers.make_thumbnail(image_url[len(settings.MEDIA_URL):], width=options["width"], height=options["height"])
+        elif options.has_key("width"):
+            return helpers.make_thumbnail(image_url[len(settings.MEDIA_URL):], width=options["width"])
+        else:
+            return helpers.make_thumbnail(image_url[len(settings.MEDIA_URL):], height=options["height"])
+    else:
+        pass
+
+    return "%s" %(image_url)
+
+register.filter(thumbnail)