Module: MuckUsers::Models::MuckAccessCode
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/muck-users/models/access_code.rb
Defined Under Namespace
Modules: ClassMethods
Instance Method Summary collapse
- #bulk_valid? ⇒ Boolean
- #expired? ⇒ Boolean
- #invalid? ⇒ Boolean
- #overused? ⇒ Boolean
- #use_code ⇒ Object
Instance Method Details
#bulk_valid? ⇒ Boolean
49 50 51 52 53 54 |
# File 'lib/muck-users/models/access_code.rb', line 49 def bulk_valid? errors.add(:emails, I18n.translate('muck.users.validation_are_required')) if self.emails.blank? && !self.send_requests errors.add(:subject, I18n.translate('muck.users.validation_is_required')) if self.subject.blank? errors.add(:message, I18n.translate('muck.users.validation_is_required')) if self..blank? raise ActiveRecord::RecordInvalid.new(self) if !errors.empty? end |
#expired? ⇒ Boolean
68 69 70 |
# File 'lib/muck-users/models/access_code.rb', line 68 def expired? self.expires_at? && self.expires_at < Time.now end |
#invalid? ⇒ Boolean
60 61 62 |
# File 'lib/muck-users/models/access_code.rb', line 60 def invalid? expired? || overused? end |
#overused? ⇒ Boolean
64 65 66 |
# File 'lib/muck-users/models/access_code.rb', line 64 def overused? (self.uses >= self.use_limit) && !self.unlimited end |
#use_code ⇒ Object
56 57 58 |
# File 'lib/muck-users/models/access_code.rb', line 56 def use_code self.update_attribute(:uses, self.uses + 1) end |