Sha256: 6d1efc87652d6699a916d2e29bb14e4e1a7d8d0521d5e9c945e633f0061996fe
Contents?: true
Size: 816 Bytes
Versions: 7
Compression:
Stored size: 816 Bytes
Contents
class RailsViewComponent::RailsViewComponentBuilder def initialize @count = 0 @components = [] end def destribute name, erb_params={}, ajax_params = {} @count += 1 klass = Module.const_get("#{name.to_s.camelize}::#{name.to_s.camelize}Model") obj = klass.new @count @components.push obj obj.html(erb_params, ajax_params).html_safe end def all_javascripts @components.inject([]){|acc,c|acc + c.javascripts}.uniq end def all_stylesheets @components.inject([]){|acc,c|acc + c.stylesheets}.uniq end def refer_to_javascripts all_javascripts.map{|js| "<script type='text/javascript' src='#{js}'></script>" }.join end def refer_to_stylesheets all_stylesheets.map{|css| "<link rel='stylesheet' type='text/css' href='#{css}'>" }.join end end
Version data entries
7 entries across 5 versions & 1 rubygems