Class: Reelagram::Mail::Parsers::ShippingParser
- Inherits:
-
Object
- Object
- Reelagram::Mail::Parsers::ShippingParser
- Defined in:
- lib/reelagram/mail/parsers/shipping_parser.rb
Instance Attribute Summary collapse
-
#doc ⇒ Object
readonly
Returns the value of attribute doc.
Instance Method Summary collapse
- #carrier ⇒ Object
- #order_number ⇒ Object
- #reset! ⇒ Object
- #run(string) ⇒ Object
- #tracking_link ⇒ Object
- #tracking_number ⇒ Object
Instance Attribute Details
#doc ⇒ Object (readonly)
Returns the value of attribute doc.
7 8 9 |
# File 'lib/reelagram/mail/parsers/shipping_parser.rb', line 7 def doc @doc end |
Instance Method Details
#carrier ⇒ Object
14 15 16 17 18 19 20 |
# File 'lib/reelagram/mail/parsers/shipping_parser.rb', line 14 def carrier if shipping_info_row @row.children[1].text else "Unavailable" end end |
#order_number ⇒ Object
36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/reelagram/mail/parsers/shipping_parser.rb', line 36 def order_number table = doc.css("table")[2] if table table.css("tr") .children.css("td") .children .text .gsub(/\\n+/, " ") .scan(/\w*/) .reject(&:empty?) .last end end |
#reset! ⇒ Object
50 51 52 |
# File 'lib/reelagram/mail/parsers/shipping_parser.rb', line 50 def reset! @shipping_info_table, @row = nil, nil end |
#run(string) ⇒ Object
9 10 11 12 |
# File 'lib/reelagram/mail/parsers/shipping_parser.rb', line 9 def run(string) @doc = Nokogiri::HTML(string) self end |
#tracking_link ⇒ Object
30 31 32 33 34 |
# File 'lib/reelagram/mail/parsers/shipping_parser.rb', line 30 def tracking_link if shipping_info_row @row.children[3].css("a").attr("href").value end end |
#tracking_number ⇒ Object
22 23 24 25 26 27 28 |
# File 'lib/reelagram/mail/parsers/shipping_parser.rb', line 22 def tracking_number if shipping_info_row @row.children[3].css("a").text else "Unavailable" end end |