Sha256: a2dd0625de7b6f984f933864477b6587bf90a7a73ddeff90f2a755b4f03cf393

Contents?: true

Size: 847 Bytes

Versions: 15

Compression:

Stored size: 847 Bytes

Contents

module EnjuMessage
  module MessageUser
    def self.included(base)
      base.extend ClassMethods
    end

    module ClassMethods
      def enju_message_user_model
        include InstanceMethods
        has_many :sent_messages, :foreign_key => 'sender_id', :class_name => 'Message'
        has_many :received_messages, :foreign_key => 'receiver_id', :class_name => 'Message'
      end
    end

    module InstanceMethods
      def send_message(status, options = {})
        MessageRequest.transaction do
          request = MessageRequest.new
          request.sender = self.class.find(1)
          request.receiver = self
          request.message_template = MessageTemplate.localized_template(status, profile.locale)
          request.save_message_body(options)
          request.transition_to!(:sent)
        end
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
enju_message-0.1.16 lib/enju_message/user.rb
enju_message-0.1.15 lib/enju_message/user.rb
enju_message-0.1.14 lib/enju_message/user.rb
enju_message-0.1.14.pre26 lib/enju_message/user.rb
enju_message-0.1.14.pre25 lib/enju_message/user.rb
enju_message-0.1.14.pre24 lib/enju_message/user.rb
enju_message-0.1.14.pre23 lib/enju_message/user.rb
enju_message-0.1.14.pre22 lib/enju_message/user.rb
enju_message-0.1.14.pre21 lib/enju_message/user.rb
enju_message-0.1.14.pre20 lib/enju_message/user.rb
enju_message-0.1.14.pre19 lib/enju_message/user.rb
enju_message-0.1.14.pre18 lib/enju_message/user.rb
enju_message-0.1.14.pre17 lib/enju_message/user.rb
enju_message-0.1.14.pre16 lib/enju_message/user.rb
enju_message-0.1.14.pre15 lib/enju_message/user.rb