lib/feed_tools/feed_item.rb in feedtools-0.2.24 vs lib/feed_tools/feed_item.rb in feedtools-0.2.25

- old
+ new

@@ -1271,10 +1271,25 @@ "@uri", "@href" ], :select_result_value => true) ) end + if @author.name.blank? && !@author.raw.blank? && + !@author.email.blank? + name_scan = @author.raw.scan( + /"?([^"]*)"? ?[\(<].*#{@author.email}.*[\)>].*/) + if name_scan.flatten.size == 1 + @author.name = name_scan.flatten[0].strip + end + if @author.name.blank? + name_scan = @author.raw.scan( + /.*#{@author.email} ?[\(<]"?([^"]*)"?[\)>].*/) + if name_scan.flatten.size == 1 + @author.name = name_scan.flatten[0].strip + end + end + end @author.name = nil if @author.name.blank? @author.raw = nil if @author.raw.blank? @author.email = nil if @author.email.blank? @author.url = nil if @author.url.blank? if @author.url != nil @@ -1837,13 +1852,17 @@ return xml_builder.item do unless self.title.blank? xml_builder.title(FeedTools::HtmlHelper.strip_html_tags(self.title)) end unless self.link.blank? - xml_builder.link(link) + xml_builder.link(self.link) end unless self.author.nil? || self.author.name.nil? xml_builder.tag!("dc:creator", self.author.name) + end + unless self.author.nil? || self.author.email.nil? || + self.author.name.nil? + xml_builder.author("#{self.author.email} (#{self.author.name})") end unless self.summary.blank? xml_builder.description(self.summary) end unless self.content.blank?