class HTML::FullSanitizer

def process_node(node, result, options)

def process_node(node, result, options)
  result << node.to_s if node.class == HTML::Text
end

def sanitize(text, options = {})

def sanitize(text, options = {})
  result = super
  # strip any comments, and if they have a newline at the end (ie. line with
  # only a comment) strip that too
  result.gsub!(/<!--(.*?)-->[\n]?/m, "") if result
  # Recurse - handle all dirty nested tags
  result == text ? result : sanitize(result, options)
end