2007-11-17 19:55:26 +00:00
|
|
|
unless defined?(Sass::MERB_LOADED)
|
|
|
|
Sass::MERB_LOADED = true
|
|
|
|
|
2008-01-10 23:16:12 +00:00
|
|
|
version = Merb::VERSION.split('.').map { |n| n.to_i }
|
|
|
|
if version[0] <= 0 && version[1] < 5
|
|
|
|
root = MERB_ROOT
|
|
|
|
env = MERB_ENV
|
|
|
|
else
|
|
|
|
root = Merb.root
|
|
|
|
env = Merb.environment
|
|
|
|
end
|
|
|
|
|
|
|
|
Sass::Plugin.options.merge!(:template_location => root + '/public/stylesheets/sass',
|
|
|
|
:css_location => root + '/public/stylesheets',
|
|
|
|
:always_check => env != "production",
|
|
|
|
:full_exception => env != "production")
|
2007-11-17 19:55:26 +00:00
|
|
|
config = Merb::Plugins.config[:sass] || Merb::Plugins.config["sass"] || {}
|
2008-04-08 06:09:17 +00:00
|
|
|
|
2008-03-13 12:24:48 +00:00
|
|
|
if defined? config.symbolize_keys!
|
|
|
|
config.symbolize_keys!
|
|
|
|
end
|
|
|
|
|
2007-11-17 19:55:26 +00:00
|
|
|
Sass::Plugin.options.merge!(config)
|
2008-04-08 06:09:17 +00:00
|
|
|
|
2008-02-13 21:40:24 +00:00
|
|
|
if version[0] > 0 || version[1] >= 9
|
|
|
|
|
|
|
|
class Merb::Rack::Application # :nodoc:
|
|
|
|
def call_with_sass(env)
|
|
|
|
if !Sass::Plugin.checked_for_updates ||
|
|
|
|
Sass::Plugin.options[:always_update] || Sass::Plugin.options[:always_check]
|
|
|
|
Sass::Plugin.update_stylesheets
|
|
|
|
end
|
|
|
|
|
|
|
|
call_without_sass(env)
|
2008-02-12 03:49:16 +00:00
|
|
|
end
|
2008-02-13 21:40:24 +00:00
|
|
|
alias_method :call_without_sass, :call
|
|
|
|
alias_method :call, :call_with_sass
|
|
|
|
end
|
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
class MerbHandler # :nodoc:
|
|
|
|
def process_with_sass(request, response)
|
|
|
|
if !Sass::Plugin.checked_for_updates ||
|
|
|
|
Sass::Plugin.options[:always_update] || Sass::Plugin.options[:always_check]
|
|
|
|
Sass::Plugin.update_stylesheets
|
|
|
|
end
|
2008-02-12 03:49:16 +00:00
|
|
|
|
2008-02-13 21:40:24 +00:00
|
|
|
process_without_sass(request, response)
|
|
|
|
end
|
|
|
|
alias_method :process_without_sass, :process
|
|
|
|
alias_method :process, :process_with_sass
|
2007-11-17 19:55:26 +00:00
|
|
|
end
|
2008-02-13 21:40:24 +00:00
|
|
|
|
2007-11-17 19:55:26 +00:00
|
|
|
end
|
|
|
|
end
|