Class: Wovnrb::HtmlReplaceMarker

Inherits:
Object
  • Object
show all
Defined in:
lib/wovnrb/services/html_replace_marker.rb

Constant Summary collapse

KEY_PREFIX =
'__wovn-backend-ignored-key-'.freeze

Instance Method Summary collapse

Constructor Details

#initializeHtmlReplaceMarker

Returns a new instance of HtmlReplaceMarker.



5
6
7
8
# File 'lib/wovnrb/services/html_replace_marker.rb', line 5

def initialize
  @current_key_number = 0
  @mapped_values = []
end

Instance Method Details

#add_comment_value(value) ⇒ Object

Add argument’s value to mapping information with comment style key



11
12
13
14
15
16
# File 'lib/wovnrb/services/html_replace_marker.rb', line 11

def add_comment_value(value)
  key = "<!-- #{generate_key} -->"
  @mapped_values << [key, value]

  key
end

#add_value(value) ⇒ Object



18
19
20
21
22
23
# File 'lib/wovnrb/services/html_replace_marker.rb', line 18

def add_value(value)
  key = generate_key
  @mapped_values << [key, value]

  key
end

#keysObject



35
36
37
# File 'lib/wovnrb/services/html_replace_marker.rb', line 35

def keys
  @mapped_values.map { |v| v[0] }
end

#revert(marked_html) ⇒ Object



25
26
27
28
29
30
31
32
33
# File 'lib/wovnrb/services/html_replace_marker.rb', line 25

def revert(marked_html)
  i = @mapped_values.size
  while i > 0
    i -= 1
    key, value = @mapped_values[i]
    marked_html = marked_html.sub(key, value)
  end
  marked_html
end