Module: Feedzirra::FeedEntryUtilities
- Included in:
- Parser::AtomEntry, Parser::AtomFeedBurnerEntry, Parser::ITunesRSSItem, Parser::RSSEntry
- Defined in:
- lib/feedzirra/parser/feed_entry_utilities.rb
Instance Method Summary collapse
-
#id ⇒ Object
Returns the id of the entry or its url if not id is present, as some formats don’t support it.
- #mark_new! ⇒ Object
- #mark_old! ⇒ Object
- #new_entry? ⇒ Boolean
- #parse_datetime(string) ⇒ Object
- #published ⇒ Object (also: #last_modified)
-
#published=(val) ⇒ Object
Writter for published.
- #sanitize! ⇒ Object
-
#updated=(val) ⇒ Object
Writter for updated.
Instance Method Details
#id ⇒ Object
Returns the id of the entry or its url if not id is present, as some formats don’t support it
18 19 20 |
# File 'lib/feedzirra/parser/feed_entry_utilities.rb', line 18 def id @id || @url end |
#mark_new! ⇒ Object
30 31 32 |
# File 'lib/feedzirra/parser/feed_entry_utilities.rb', line 30 def mark_new! @_new_entry = true end |
#mark_old! ⇒ Object
26 27 28 |
# File 'lib/feedzirra/parser/feed_entry_utilities.rb', line 26 def mark_old! @_new_entry = false end |
#new_entry? ⇒ Boolean
22 23 24 |
# File 'lib/feedzirra/parser/feed_entry_utilities.rb', line 22 def new_entry? @_new_entry.nil? ? true : @_new_entry end |
#parse_datetime(string) ⇒ Object
7 8 9 10 11 12 13 14 |
# File 'lib/feedzirra/parser/feed_entry_utilities.rb', line 7 def parse_datetime(string) begin DateTime.parse(string).feed_utils_to_gm_time rescue puts "DATE CAN'T BE PARSED: #{string}" nil end end |
#published ⇒ Object Also known as: last_modified
3 4 5 |
# File 'lib/feedzirra/parser/feed_entry_utilities.rb', line 3 def published @published || @updated end |
#published=(val) ⇒ Object
Writter for published. By default, we keep the “oldest” publish time found.
36 37 38 39 |
# File 'lib/feedzirra/parser/feed_entry_utilities.rb', line 36 def published=(val) parsed = parse_datetime(val) @published = parsed if !@published || parsed < @published end |
#sanitize! ⇒ Object
48 49 50 51 52 53 |
# File 'lib/feedzirra/parser/feed_entry_utilities.rb', line 48 def sanitize! self.title.sanitize! if self.title self..sanitize! if self. self.summary.sanitize! if self.summary self.content.sanitize! if self.content end |
#updated=(val) ⇒ Object
Writter for updated. By default, we keep the most recent update time found.
43 44 45 46 |
# File 'lib/feedzirra/parser/feed_entry_utilities.rb', line 43 def updated=(val) parsed = parse_datetime(val) @updated = parsed if !@updated || parsed > @updated end |