Module FeedTools::FeedToolsHelper
In: lib/feed_tools/helpers/feed_tools_helper.rb
ActiveRecord::Base DatabaseFeedCache StandardError FeedAccessError FeedItem Feed URI Cloud Link Author Image Enclosure TextInput Category lib/feed_tools/feed_item.rb lib/feed_tools/feed.rb lib/feed_tools.rb lib/feed_tools/vendor/uri.rb lib/feed_tools/database_feed_cache.rb lib/feed_tools/feed_structures.rb FeedToolsHelper FeedItemHelper HtmlHelper FeedHelper DebugHelper XmlHelper UriHelper RetrievalHelper GenericHelper FEED_TOOLS_VERSION FeedTools dot/m_79_0.png

Methods

Public Class methods

Returns the default path to load local files from

[Source]

    # File lib/feed_tools/helpers/feed_tools_helper.rb, line 38
38:     def self.default_local_path
39:       @@default_local_path
40:     end

Sets the default path to load local files from

[Source]

    # File lib/feed_tools/helpers/feed_tools_helper.rb, line 43
43:     def self.default_local_path=(new_default_local_path)
44:       @@default_local_path = new_default_local_path
45:     end

Protected Instance methods

Loads a feed within a block for more consistent syntax and control over the FeedTools environment.

[Source]

    # File lib/feed_tools/helpers/feed_tools_helper.rb, line 50
50:     def with_feed(options={})
51:       FeedTools::GenericHelper.validate_options([ :from_file,
52:                                                   :from_url,
53:                                                   :from_data,
54:                                                   :feed_cache ],
55:                        options.keys)
56:       options = { :feed_cache =>
57:         FeedTools.configurations[:feed_cache] }.merge(options)
58:       if options[:from_file]
59:         file_path = File.expand_path(@@default_local_path + '/' +
60:           options[:from_file])
61:         if !File.exists?(file_path)
62:           file_path = File.expand_path(options[:from_file])
63:         end
64:         if !File.exists?(file_path)
65:           raise "No such file - #{file_path}"
66:         end
67:         feed = FeedTools::Feed.open("file://#{file_path}")
68:       elsif options[:from_url]
69:         feed = FeedTools::Feed.open(options[:from_url])
70:       elsif options[:from_data]
71:         feed = FeedTools::Feed.new
72:         feed.feed_data = options[:from_data]
73:       else
74:         raise "No data source specified"
75:       end
76:       @@save_cache = FeedTools.configurations[:feed_cache].to_s
77:       FeedTools.configurations[:feed_cache] = options[:feed_cache].to_s
78:       yield feed
79:       FeedTools.configurations[:feed_cache] = @@save_cache
80:       feed = nil
81:     end

[Validate]