module Dugway::Filters::UrlFilters
Public Instance Methods
constrain(url = nil, width = '-', height = '-')
click to toggle source
# File lib/dugway/liquid/filters/url_filters.rb, line 11 def constrain(url = nil, width = '-', height = '-') return unless url uri = URI.parse(url) query = Rack::Utils.parse_nested_query uri.query query.update('w' => width, 'h' => height) query.delete_if { |k,v| v.nil? || v == '-' } uri.query = query.to_query uri.to_s end
link_to(item, *args)
click to toggle source
# File lib/dugway/liquid/filters/url_filters.rb, line 4 def link_to(item, *args) options = link_args_to_options(args) text = options.delete(:text) || h(item['name']) options = { :title => "View #{ text }", :href => item['url'] }.merge(options) content_tag :a, text, options end
product_image_url(image = nil, size = nil)
click to toggle source
# File lib/dugway/liquid/filters/url_filters.rb, line 21 def product_image_url(image = nil, size = nil) url = image ? image['url'] : 'http://images.bigcartel.com/missing.png' size = legacy_size_for(size) constrain url, size, size end
theme_css_url(theme)
click to toggle source
# File lib/dugway/liquid/filters/url_filters.rb, line 37 def theme_css_url(theme) '/theme.css' end
theme_font_url(filename)
click to toggle source
# File lib/dugway/liquid/filters/url_filters.rb, line 45 def theme_font_url(filename) "/fonts/#{ filename }" end
theme_image_url(filename)
click to toggle source
# File lib/dugway/liquid/filters/url_filters.rb, line 41 def theme_image_url(filename) "/images/#{ filename }" end
theme_js_url(name)
click to toggle source
# File lib/dugway/liquid/filters/url_filters.rb, line 27 def theme_js_url(name) if name.is_a?(Drops::ThemeDrop) '/theme.js' elsif name == 'api' 'http://cache0.bigcartel.com/api/5/api.usd.js' else name end end
Private Instance Methods
legacy_size_for(size)
click to toggle source
# File lib/dugway/liquid/filters/url_filters.rb, line 61 def legacy_size_for(size) case size when 'large' then 300 when 'medium' then 175 when 'thumb' then 75 else 1000 end end
link_args_to_options(args)
click to toggle source
# File lib/dugway/liquid/filters/url_filters.rb, line 51 def link_args_to_options(args) options = {} [:text, :title, :id, :class, :rel].zip(args) { |key, value| options[key] = h(value) unless value.nil? } options end