Class: WcoEmail::EmailFilter
- Inherits:
-
Object
- Object
- WcoEmail::EmailFilter
- Includes:
- Mongoid::Document, Mongoid::Paranoia, Mongoid::Timestamps
- Defined in:
- app/models/wco_email/email_filter.rb
Constant Summary collapse
- PAGE_PARAM_NAME =
:filters_page- STATUS_ACTIVE =
'active'- STATUS_INACTIVE =
'inactive'
Class Method Summary collapse
Instance Method Summary collapse
-
#office_email_filters ⇒ Object
'wco_email_email_filters'.
- #to_s ⇒ Object
- #to_s_full ⇒ Object
- #validate_actions ⇒ Object
- #validate_conditions ⇒ Object
Class Method Details
.active ⇒ Object
15 |
# File 'app/models/wco_email/email_filter.rb', line 15 def self.active; where( :status.in => [ nil, STATUS_ACTIVE ] ); end |
Instance Method Details
#office_email_filters ⇒ Object
'wco_email_email_filters'
6 |
# File 'app/models/wco_email/email_filter.rb', line 6 store_in collection: 'office_email_filters' |
#to_s ⇒ Object
43 44 45 |
# File 'app/models/wco_email/email_filter.rb', line 43 def to_s "EmailFilter (#{conditions.length}) `#{slug}`" end |
#to_s_full ⇒ Object
46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'app/models/wco_email/email_filter.rb', line 46 def to_s_full attrs = '' out =<<-AOL <EmailFilter#{attrs} > #{conditions.map { |c| c.to_s_full( indent: 2) }.join } #{skip_conditions.map { |c| c.to_s_full( indent: 2) }.join } #{actions.map { |c| c.to_s_full( indent: 2) }.join } </EmailFilter> AOL while out.match(/\n\n/) do out = out.gsub(/\n\n/, "\n") end out end |
#validate_actions ⇒ Object
20 21 22 23 24 |
# File 'app/models/wco_email/email_filter.rb', line 20 def validate_actions if actions.length == 0 errors.add(:actions, 'must be present') end end |
#validate_conditions ⇒ Object
29 30 31 32 33 |
# File 'app/models/wco_email/email_filter.rb', line 29 def validate_conditions if conditions.length == 0 errors.add(:condition, 'must be present') end end |