Sha256: 17a83c427090e0cab67fd33bce2e4bb6c3cfc9fbe1e46d850df97dd1b908a135
Contents?: true
Size: 1.67 KB
Versions: 3
Compression:
Stored size: 1.67 KB
Contents
require 'sass' #require 'yui/compressor' require 'uglifier' module RbbtRESTHelpers def recorded_js_files @recorded_js_files ||= [] end def recorded_css_files @recorded_css_files ||= [] end def record_js(file) recorded_js_files << file end def record_css(file) recorded_css_files << file end def link_css(file) file += '.css' unless file =~ /.css$/ html_tag('link', nil, :rel => 'stylesheet', :type => 'text/css', :href => file) end def link_js(file) file += '.js' unless file =~ /.js$/ html_tag('script', " ", :src => file, :type => 'text/javascript') end def serve_js(compress = true) if production? and compress and not @debug_js md5 = Misc.digest(recorded_js_files * ",") filename = File.join(settings.file_dir, "all_js-#{md5}.js") if not File.exists?(filename) Log.debug("Regenerating JS Compressed file: #{ filename }") text = recorded_js_files.collect{|file| begin path = locate_javascript(file) rescue path = locate_javascript(File.basename(file)) end Open.read(path) } * "\n" FileUtils.mkdir_p File.dirname(filename) unless File.exists? File.dirname(filename) Open.write(filename, Uglifier.compile(text)) end res = "<script src='/files/#{File.basename(filename)}' type='text/javascript'></script>" else res = recorded_js_files.collect{|file| link_js(file) } * "\n" end recorded_js_files.clear res end def serve_css res = recorded_css_files.collect{|file| link_css(file) } * "\n" recorded_css_files.clear res end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rbbt-rest-1.1.4 | lib/rbbt/rest/common/resources.rb |
rbbt-rest-1.1.3 | lib/rbbt/rest/common/resources.rb |
rbbt-rest-1.1.2 | lib/rbbt/rest/common/resources.rb |