Module: Deface::TemplateHelper
- Included in:
- Precompiler, Sources::Partial, Sources::Template
- Defined in:
- lib/deface/template_helper.rb
Instance Method Summary collapse
-
#element_source(template_source, selector) ⇒ Object
gets source erb for an element.
-
#load_template_source(virtual_path, partial, apply_overrides = true) ⇒ Object
used to find source for a partial or template using virtual_path.
Instance Method Details
#element_source(template_source, selector) ⇒ Object
gets source erb for an element
33 34 35 36 37 38 39 |
# File 'lib/deface/template_helper.rb', line 33 def element_source(template_source, selector) doc = Deface::Parser.convert(template_source) doc.css(selector).inject([]) do |result, match| result << Deface::Parser.undo_erb_markup!(match.to_s.dup) end end |
#load_template_source(virtual_path, partial, apply_overrides = true) ⇒ Object
used to find source for a partial or template using virtual_path
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/deface/template_helper.rb', line 5 def load_template_source(virtual_path, partial, apply_overrides=true) parts = virtual_path.split("/") prefix = [] if parts.size == 2 prefix << "" name = virtual_path else prefix << parts.shift name = parts.join("/") end #this needs to be reviewed for production mode, overrides not present Rails.application.config.deface.enabled = apply_overrides @lookup_context ||= ActionView::LookupContext.new(ActionController::Base.view_paths, {:formats => [:html]}) view = @lookup_context.disable_cache do @lookup_context.find(name, prefix, partial) end if view.handler.to_s == "Haml::Plugin" Deface::HamlConverter.new(view.source).result elsif view.handler.class.to_s == "Slim::RailsTemplate" Slim::ERBConverter.new.call(view.source) else view.source end end |