class Rack::PageSpeed::Filters::MinifyCSS
Public Instance Methods
execute!(document)
click to toggle source
# File lib/rack/pagespeed/filters/minify_css.rb, line 14 def execute! document nodes = document.css('link[rel="stylesheet"][href]') return false unless nodes.count > 0 nodes.each do |node| if match = %r(^/rack-pagespeed-(.*)).match(node['href']) store = @options[:store] store[match[1]] = Csso.optimize(store[match[1]]) else status, headers, body = content_for node next unless node.name == 'link' && status == 200 css = ""; body.each do |part| css << part end hash = Digest::MD5.hexdigest headers['Last-Modified'] + css @options[:store]["#{hash}.css"] = Csso.optimize(css) node['href'] = "/rack-pagespeed-#{hash}.css" end end end