class ODFWriter::Text
Text: replace text items
Constants
- DELIMITERS
constants
Public Instance Methods
replace!(content, item = nil)
click to toggle source
replace!
# File lib/odf_writer/text.rb, line 43 def replace!(content, item = nil) return unless node = find_text_node(content) text = value(item) @parser = Parser::Default.new(text, node, :doc => content, :remove_classes => @remove_classes, :remove_class_prefix => @remove_class_prefix, :remove_class_suffix => @remove_class_suffix ) @parser.paragraphs.each do |p| node.before(p) end node.remove end
Private Instance Methods
find_text_node(doc)
click to toggle source
# File lib/odf_writer/text.rb, line 74 def find_text_node(doc) texts = doc.xpath(".//text:p[text()='#{placeholder}']") if texts.empty? texts = doc.xpath(".//text:p/text:span[text()='#{placeholder}']") if texts.empty? texts = nil else texts = texts.first.parent end else texts = texts.first end texts end
placeholder()
click to toggle source
placeholder
# File lib/odf_writer/text.rb, line 93 def placeholder "#{DELIMITERS[0]}#{@name.to_s.upcase}#{DELIMITERS[1]}" end