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'- KIND_AUTORESPOND_TMPL =
Deprecated.
2026-04-02, use email_filter_action::
'autorespond-template'- KIND_AUTORESPOND_EACT =
'autorespond-email-action'- KIND_REMOVE_TAG =
'remove-tag'- KIND_ADD_TAG =
'add-tag'- KIND_DESTROY_SCHS =
'destroy-schs'- KIND_OAT =
'office-action'- KIND_AUTORESPOND =
Deprecated.
'autorespond'- KIND_DELETE =
@deprecated, DO NOT USE!
'delete'- KIND_SKIP_INBOX =
@deprecated, use add-tag
'skip-inbox'- KINDS =
@deprecated, use remove-tag
[ nil, KIND_OAT, KIND_AUTORESPOND_TMPL, KIND_AUTORESPOND_EACT, KIND_ADD_TAG, KIND_REMOVE_TAG, KIND_DESTROY_SCHS ]
Class Method Summary collapse
Instance Method Summary collapse
-
#email_template ⇒ Object
@deprecated, use email_filter.email_action.aject.
-
#from_regex ⇒ Object
@deprecated, use email_filter_conditions.
-
#kind ⇒ Object
@deprecated, use filter.action.aject.kind 2026-04-02.
-
#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
#email_template ⇒ Object
@deprecated, use email_filter.email_action.aject
103 |
# File 'app/models/wco_email/email_filter.rb', line 103 belongs_to :email_template, class_name: '::WcoEmail::EmailTemplate', optional: true |
#from_regex ⇒ Object
@deprecated, use email_filter_conditions
75 |
# File 'app/models/wco_email/email_filter.rb', line 75 field :from_regex |
#kind ⇒ Object
@deprecated, use filter.action.aject.kind 2026-04-02
100 |
# File 'app/models/wco_email/email_filter.rb', line 100 field :kind |
#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: #{from_regex} #{from_exact} #{conditions.map { |c| c.to_s }.join }" end |
#to_s_full ⇒ Object
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'app/models/wco_email/email_filter.rb', line 46 def to_s_full attrs = '' if from_regex || from_exact attrs = "#{attrs} from=#{from_regex}#{from_exact}" end 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 |