Sha256: f482478c33d97ef3f4c26766be5aac5dacd5db40283f8da8bccb89bc3049e796
Contents?: true
Size: 1 KB
Versions: 4
Compression:
Stored size: 1 KB
Contents
module HentryConsumer class Element attr_accessor :element def initialize(microformat) @element = microformat parse_elements end def to_html @element.to_html end def to_xml @element.to_xml end def parse_elements FormatClass.each do |letter| @element.css(">*[class*=#{letter}-]").each do |a| assign_value(symbolize_class(a["class"]), a.text.gsub('\n', " ").strip) end end end def symbolize_class(klass) klass.to_s.downcase.split.first.gsub(/\w{1,2}-/, "").to_sym end def [](key) self.send(key) end def []=(key, value) self.send(key.to_s + "=", value) end def assign_value(symbolized_class, value) return unless self.respond_to?(symbolized_class) if FormatRules.can_have_many?(symbolized_class) self[symbolized_class] ||= [] self[symbolized_class] << value else self[symbolized_class] = value end end end end
Version data entries
4 entries across 4 versions & 1 rubygems