Sha256: e5958c0d8c6a1e999b59242ba9c96d706d7e9ee47df0648c63839032a0b50388
Contents?: true
Size: 882 Bytes
Versions: 4
Compression:
Stored size: 882 Bytes
Contents
module Droom class GroupInvitation < ActiveRecord::Base attr_accessible :event_id, :group_id belongs_to :created_by, :class_name => "User" belongs_to :group belongs_to :event has_many :invitations, :dependent => :destroy after_save :create_personal_invitations validates_uniqueness_of :group_id, :scope => :event_id scope :to_event, lambda { |event| where("droom_group_invitations.event_id = ?", event.id) } scope :for_group, lambda { |group| where("droom_group_invitations.group_id = ?", group.id) } def create_personal_invitations group.people.each do |person| create_personal_invitation_for(person) end end def create_personal_invitation_for(person) event.invitations.find_or_create_by_person_id(person.id) if person.member_of?(group) end end end
Version data entries
4 entries across 4 versions & 1 rubygems