def get_thumbnail(file_, geometry_string, **options): if helpers.is_valid_geometry(geometry_string): geom_opts = dict(helpers.clean_opts( helpers.get_geom_opts(geometry_string))) geometry_string = helpers.clean_geom( helpers.get_geom_string(geometry_string)) options.update(geom_opts) return sorl_get_thumbnail(file_, geometry_string, **options)
def __init__(self, parser, token, use_strict=USE_STRICT): super(DefinedThumbnailNode, self).__init__(parser, token) if helpers.is_valid_geometry_and_opts(self.geometry, self.options): geom_name = helpers.get_geom_name(self.geometry) geom_str = helpers.get_geom_string(geom_name) geom_opts = helpers.get_geom_opts(geom_name) self.geometry = parser.compile_filter(geom_str) base_options = self.options or [] self.options = base_options + [(k, parser.compile_filter(v)) for k, v in geom_opts] else: msg = helpers.get_invalid_msg(self.geometry, self.options) if use_strict: logger.warning(msg) raise TemplateSyntaxError(msg)
def margin(file_, geom_string): if IS_ENABLED and geom_string in helpers.get_named_sizes(): geom_string = helpers.clean_geom(helpers.get_geom_string(geom_string)) return sorl_margin(file_, geom_string)