Skip to content

Instantly share code, notes, and snippets.

@kristianhellquist
Created June 22, 2011 07:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kristianhellquist/1039638 to your computer and use it in GitHub Desktop.
Save kristianhellquist/1039638 to your computer and use it in GitHub Desktop.
579c013f (Richard Johansson 2008-02-25 15:11:35 +0000 1) class MediaAlert < Alert
00000000 (Not Committed Yet 2011-06-22 09:28:52 +0200 2) delegate :email, :to => :media
cc953fd1 (Richard Johansson 2008-03-06 12:26:08 +0000 3) validates_presence_of :media
cc953fd1 (Richard Johansson 2008-03-06 12:26:08 +0000 4)
94dbbc2b (Richard Johansson 2008-02-28 12:15:41 +0000 5) def validate
00000000 (Not Committed Yet 2011-06-22 09:28:52 +0200 6) self.errors.add_to_base(I18n.t(:'media_alert.errors.media_email_presence')) if email.blank?
94dbbc2b (Richard Johansson 2008-02-28 12:15:41 +0000 7) end
94dbbc2b (Richard Johansson 2008-02-28 12:15:41 +0000 8)
579c013f (Richard Johansson 2008-02-25 15:11:35 +0000 9) belongs_to :media
579c013f (Richard Johansson 2008-02-25 15:11:35 +0000 10)
dd21f0e3 (Richard Johansson 2008-02-27 15:13:50 +0000 11) has_many :distributions, :as => :sent_by
dd21f0e3 (Richard Johansson 2008-02-27 15:13:50 +0000 12)
dd21f0e3 (Richard Johansson 2008-02-27 15:13:50 +0000 13) def self.find_all_media_alerts
dd21f0e3 (Richard Johansson 2008-02-27 15:13:50 +0000 14) find(:all, :order => "name ASC, created_at ASC")
dd21f0e3 (Richard Johansson 2008-02-27 15:13:50 +0000 15) end
dd21f0e3 (Richard Johansson 2008-02-27 15:13:50 +0000 16)
276e8ea3 (Richard Johansson 2009-04-07 17:23:03 +0200 17) def belongs_to
276e8ea3 (Richard Johansson 2009-04-07 17:23:03 +0200 18) media
c51b4109 (David Wennergren 2008-06-27 12:13:05 +0200 19) end
c51b4109 (David Wennergren 2008-06-27 12:13:05 +0200 20)
affc3207 (Richard Johansson 2010-03-17 17:45:18 +0100 21) def locale_from_subclass
00000000 (Not Committed Yet 2011-06-22 09:28:52 +0200 22) if media
00000000 (Not Committed Yet 2011-06-22 09:28:52 +0200 23) media.site.try(:default_locale)
00000000 (Not Committed Yet 2011-06-22 09:28:52 +0200 24) end || :en
c51b4109 (David Wennergren 2008-06-27 12:13:05 +0200 25) end
c51b4109 (David Wennergren 2008-06-27 12:13:05 +0200 26)
dd21f0e3 (Richard Johansson 2008-02-27 15:13:50 +0000 27) def log_distribution items
6fb8fe97 (David Wennergren 2008-12-15 13:50:52 +0100 28) items.each do |type_of_media,items|
6fb8fe97 (David Wennergren 2008-12-15 13:50:52 +0100 29) for item in items
5315128c (Richard Johansson 2011-05-13 14:48:43 +0200 30) DistributionTemp.create(
5315128c (Richard Johansson 2011-05-13 14:48:43 +0200 31) :sti_type => "DistributionMediaAlert",
5315128c (Richard Johansson 2011-05-13 14:48:43 +0200 32) :sent_by => self,
5315128c (Richard Johansson 2011-05-13 14:48:43 +0200 33) :distributable => item,
5315128c (Richard Johansson 2011-05-13 14:48:43 +0200 34) :media_id => self.media_id
5315128c (Richard Johansson 2011-05-13 14:48:43 +0200 35) )
6fb8fe97 (David Wennergren 2008-12-15 13:50:52 +0100 36) end
dd21f0e3 (Richard Johansson 2008-02-27 15:13:50 +0000 37) end
dd21f0e3 (Richard Johansson 2008-02-27 15:13:50 +0000 38) end
dd21f0e3 (Richard Johansson 2008-02-27 15:13:50 +0000 39)
8efb290e (Richard Johansson 2008-04-28 12:40:24 +0200 40) def is_administrated?
8efb290e (Richard Johansson 2008-04-28 12:40:24 +0200 41) return false if media.journalists.empty?
8efb290e (Richard Johansson 2008-04-28 12:40:24 +0200 42) return true
8efb290e (Richard Johansson 2008-04-28 12:40:24 +0200 43) end
8efb290e (Richard Johansson 2008-04-28 12:40:24 +0200 44)
00000000 (Not Committed Yet 2011-06-22 09:28:52 +0200 45) end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment