so that almost preps the project for being merged back into the flowerbox gem proper...

This commit is contained in:
John Bintz 2012-03-16 11:15:43 -04:00
parent 624e9007f3
commit 4b6c09c7bc
8 changed files with 0 additions and 153 deletions

View File

@ -1,11 +1,8 @@
module Flowerbox module Flowerbox
module Delivery module Delivery
autoload :Server, 'flowerbox/delivery/server' autoload :Server, 'flowerbox/delivery/server'
autoload :TemplateRenderer, 'flowerbox/delivery/template_renderer'
autoload :SprocketsHandler, 'flowerbox/delivery/sprockets_handler' autoload :SprocketsHandler, 'flowerbox/delivery/sprockets_handler'
autoload :UniqueAssetList, 'flowerbox/delivery/unique_asset_list' autoload :UniqueAssetList, 'flowerbox/delivery/unique_asset_list'
autoload :Tilt, 'flowerbox/delivery/tilt'
end end
end end

View File

@ -1,35 +0,0 @@
require 'erb'
module Flowerbox::Delivery
class TemplateRenderer
class FileTypeError < StandardError ; end
attr_reader :options
def initialize(options)
@options = options
end
def render
ERB.new(template).result(binding)
end
def template
File.read(options[:template])
end
def resource_tags
options[:files].collect do |file|
case File.extname(file)
when '.js'
%{<script src="#{file}" type="text/javascript"></script>}
when '.css'
%{<link rel="stylesheet" href="#{file}" type="text/css" />}
else
raise FileTypeError.new("Unknown file type: #{File.extname(file)} for #{file}")
end
end.join
end
end
end

View File

@ -1,12 +0,0 @@
require 'sprockets'
module Flowerbox::Delivery::Tilt
autoload :JSTemplate, 'flowerbox/delivery/tilt/js_template'
autoload :JSTTemplate, 'flowerbox/delivery/tilt/jst_template'
autoload :CSSTemplate, 'flowerbox/delivery/tilt/css_template'
autoload :TemplateThatSaves, 'flowerbox/delivery/tilt/template_that_saves'
autoload :EnsureSavedFile, 'flowerbox/delivery/tilt/ensure_saved_file'
end

View File

@ -1,11 +0,0 @@
require 'tilt'
class Flowerbox::Delivery::Tilt::CSSTemplate < Tilt::Template
self.default_mime_type = "text/css"
EXTENSION = "css"
include Flowerbox::Delivery::Tilt::TemplateThatSaves
end

View File

@ -1,22 +0,0 @@
require 'tilt'
module Flowerbox::Delivery::Tilt
class EnsureSavedFile < Tilt::Template
include TemplateThatSaves
def handle_evaluate
output = if File.file?(data)
data
else
save
end
output
end
def extension
"js"
end
end
end

View File

@ -1,14 +0,0 @@
require 'tilt'
class Flowerbox::Delivery::Tilt::JSTemplate < Tilt::Template
self.default_mime_type = "application/javascript"
EXTENSION = "js"
include Flowerbox::Delivery::Tilt::TemplateThatSaves
def evaluate(scope, locals, &block)
handle_evaluate
end
end

View File

@ -1,20 +0,0 @@
require 'tilt'
class Flowerbox::Delivery::Tilt::JSTTemplate < Sprockets::JstProcessor
EXTENSION = "jst"
include Flowerbox::Delivery::Tilt::TemplateThatSaves
def evaluate(scope, locals, &block)
@data = super
p @data
handle_evaluate
end
def data_to_save
@data || data
end
end

View File

@ -1,36 +0,0 @@
module Flowerbox::Delivery::Tilt::TemplateThatSaves
def prepare ; end
def handle_evaluate
case File.extname(file)
when '.js'
file
else
save
end
end
def save
FileUtils.mkdir_p File.dirname(temp_file)
File.open(temp_file, 'wb') { |fh| fh.print data_to_save }
temp_file
end
def data_to_save
data
end
def temp_file
File.join(Dir.pwd, ".tmp/sprockets", file.gsub(%r{(\.#{extension})(.*)$}, '\1'))
end
def extension
self.class::EXTENSION
end
def evaluate(scope, locals, &block)
handle_evaluate
end
end