from populous.thumbnail.processors import dynamic_import, get_valid_options register = Library() size_pat = re.compile(r'(\d+)x(\d+)$') quality_pat = re.compile(r'quality=([1-9]\d?|100)$') filesize_formats = ['k', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y'] filesize_long_formats = { 'k': 'kilo', 'M': 'mega', 'G': 'giga', 'T': 'tera', 'P': 'peta', 'E': 'exa', 'Z': 'zetta', 'Y': 'yotta' } try: PROCESSORS = dynamic_import(get_thumbnail_setting('PROCESSORS')) VALID_OPTIONS = get_valid_options(PROCESSORS) except: if get_thumbnail_setting('DEBUG'): raise else: PROCESSORS = [] VALID_OPTIONS = [] class ThumbnailNode(Node): def __init__(self, source_var, size_var, opts=None, context_name=None, **kwargs): self.source_var = source_var self.size_var = size_var self.opts = opts self.context_name = context_name self.kwargs = kwargs