Sha256: 274d88a4c9f5bcf93be3e17b3e23a4ac4c56ae6930e90cd49eb8f6b97163f98d

Contents?: true

Size: 570 Bytes

Versions: 3

Compression:

Stored size: 570 Bytes

Contents

module Microby
  class Element
    def initialize(microformat)
      parse_elements(microformat)
    end
    
    def parse_elements(microformat)
      FormatClass.each do |letter|
        microformat.css(">*[class*=#{letter}-]").each do |a|
          self[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, value)
      self.send(key.to_s + "=", value) if self.respond_to?(key.to_s + "=")
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
microby-0.0.3 lib/microby/element.rb
microby-0.0.2 lib/microby/element.rb
microby-0.0.1 lib/microby/element.rb