<link rel="StyleSheet" href="{% themeitem %} default.css {%
endthemeitem %}" />
Which generates:
<link rel="StyleSheet" href="Liquid error: undefined method
`to_liquid' for #<ActionController::CgiRequest:0x320ab2c>" />
I'm not sure how/where to add the to_liquid method to CgiRequest (or
if that's even the solution).
This is the "themeitem" code:
# A Liquid Tag for retrieving path information for theme specific
media
#
# Returns the path based on the file extension
#
class Themeitem < Liquid::Block
@@image_exts = %w( .png .jpg .jpeg .jpe .gif )
@@stylesheet_exts = %w( .css )
@@javascript_exts = %w( .js .htc )
def render(context)
# Which, if either, of these are correct?
base_url = context['request'].relative_url_root ||
ActionController::Base.asset_host.to_s
theme_name = @theme_name || context['active_theme']
filename = @nodelist.join('').strip
ext = File.extname( filename )
if @@image_exts.include?( ext )
"#{base_url}/themes/#{theme_name}/images/#{filename}"
elsif @@stylesheet_exts.include?( ext )
"#{base_url}/themes/#{theme_name}/stylesheets/#{filename}"
elsif @@javascript_exts.include?( ext )
"#{base_url}/themes/#{theme_name}/javascript/#{filename}"
end
end
end
Liquid::Template.register_tag( 'themeitem', Themeitem )