class FrontEndTasks::Documents::CssDocument
Public Class Methods
find_and_update_url_references(css_root, new_root, content)
click to toggle source
# File lib/front_end_tasks/documents/css_document.rb, line 16 def self.find_and_update_url_references(css_root, new_root, content) assets = [] updated_content = content url_references = content.scan(/url\(\s?['"](.*?)['"]\s?\)/) url_references.each do |url_reference| url = url_reference[0].strip filename = File.basename(url).split("?")[0].split("#")[0] local_file_path = File.join(css_root, File.dirname(url), filename) new_path = File.join(new_root, filename) # flatten url to down to just basename (including ? and # junk) updated_content.sub!(url, File.basename(url)) # get asset contents asset = AssetDocument.new(css_root, File.read(local_file_path)) asset.compiled_path = new_path assets << asset end [updated_content, assets] end
Public Instance Methods
compile(opts = {})
click to toggle source
# File lib/front_end_tasks/documents/css_document.rb, line 9 def compile(opts = {}) compressor = YUI::CssCompressor.new compiled_content = compressor.compress(@content) { @compiled_path => compiled_content } end