class MailchimpTemplate
Constants
- VERSION
Public Class Methods
new(template)
click to toggle source
# File lib/mailchimp_template.rb, line 6 def initialize(template) @template = template end
Public Instance Methods
render(options = {})
click to toggle source
# File lib/mailchimp_template.rb, line 10 def render(options = {}) merge_tags = options.delete(:merge_tags) regions = options.delete(:regions) result = @template result = render_regions(result, regions) return render_merge_tags(result, merge_tags) end
render_regions(template, regions = {})
click to toggle source
# File lib/mailchimp_template.rb, line 22 def render_regions(template, regions = {}) html = Nokogiri::HTML::DocumentFragment.parse(template) html.css("*").select { |n| n.attr("mc:edit") }.each do |editable_region| editable_region.children = Nokogiri::HTML::DocumentFragment.parse(regions[editable_region.attr("mc:edit")]) editable_region.remove_attribute("mc:edit") end result = html.to_s end