Class: EasyEsi

Inherits:
Object
  • Object
show all
Defined in:
lib/easy_esi.rb

Constant Summary collapse

VERSION =
File.read( File.join(File.dirname(__FILE__),'..','VERSION') ).strip

Class Method Summary collapse

Class Method Details

.include_for(data) ⇒ Object



4
5
6
# File 'lib/easy_esi.rb', line 4

def self.include_for(data)
  %{<esi:include src="#{serialize(data)}"/>}.html_safe
end

.replace_includes(text) ⇒ Object



8
9
10
11
12
13
# File 'lib/easy_esi.rb', line 8

def self.replace_includes(text)
  text.gsub(%r{<esi:include src="[^"]*"/>}) do |match|
    match =~ /"(.*)"/
    yield unserialize($1)
  end
end

.serialize(data) ⇒ Object



19
20
21
# File 'lib/easy_esi.rb', line 19

def self.serialize(data)
  Base64.encode64(data.to_yaml).gsub("\n",'')
end

.unserialize(data) ⇒ Object



15
16
17
# File 'lib/easy_esi.rb', line 15

def self.unserialize(data)
  YAML.load Base64.decode64(data)
end