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)
