class Object

Public Instance Methods

prepare() click to toggle source
# File lib/rss2mail/app.rb, line 78
def prepare
  user = request.env['REMOTE_USER'] or error(400)

  @feeds = RSS2Mail::Util.load_feeds(
    File.join(settings.root, 'feeds.d', "#{user}.yaml"))

  @tos = []

  @feeds.transaction(true) {
    @targets = @feeds.roots.sort_by(&:to_s).each { |target|
      @feeds[target].each { |feed| @tos.concat(Array(feed[:to])) } } }

  @tos.uniq!
end
update(create = false) { |feeds, feed| ... } click to toggle source
# File lib/rss2mail/app.rb, line 93
def update(create = false)
  feeds = @feeds.get(@target)

  feed = feeds.find { |f| f[:url] == @feed_url }
  error(404) unless feed || create

  yield feeds, feed

  RSS2Mail::Util.dump_feeds(@feeds, @target, feeds)
  @title, @to = feed.values_at(:title, :to) unless create
end