Class: MessageRequest
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- MessageRequest
- Includes:
- Statesman::Adapters::ActiveRecordQueries
- Defined in:
- app/models/message_request.rb
Class Method Summary collapse
Instance Method Summary collapse
- #save_message_body(options = {}) ⇒ Object
- #send_message ⇒ Object
- #state_machine ⇒ Object
- #subject ⇒ Object
Class Method Details
.send_messages ⇒ Object
60 61 62 63 64 65 66 |
# File 'app/models/message_request.rb', line 60 def self. count = MessageRequest.not_sent.size MessageRequest.not_sent.each do |request| request.transition_to!(:sent) end logger.info "#{Time.zone.now} sent #{count} messages!" end |
Instance Method Details
#save_message_body(options = {}) ⇒ Object
52 53 54 55 56 57 58 |
# File 'app/models/message_request.rb', line 52 def ( = {}) = { receiver: receiver, locale: receiver.profile.locale }.merge() update_attributes!({body: .()}) end |
#send_message ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'app/models/message_request.rb', line 26 def = nil MessageRequest.transaction do = Message.new .sender = sender .recipient = receiver.username .subject = subject .body = body .body = 'test' .save! self.sent_at = Time.zone.now save(validate: false) if ['reservation_expired_for_patron', 'reservation_expired_for_patron'].include?(.status) self.receiver.reserves.each do |reserve| reserve.expiration_notice_to_patron = true reserve.save(validate: false) end end end return end |
#state_machine ⇒ Object
19 20 21 |
# File 'app/models/message_request.rb', line 19 def state_machine @state_machine ||= MessageRequestStateMachine.new(self, transition_class: MessageRequestTransition) end |
#subject ⇒ Object
48 49 50 |
# File 'app/models/message_request.rb', line 48 def subject .title end |