summaryrefslogtreecommitdiff
path: root/app/models/tenant_membership.rb
blob: 122f7020f4b92711bb057b12310b9449c5644eec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
class TenantMembership < ActiveRecord::Base
  belongs_to :tenant
  belongs_to :user
    
  validates_presence_of :tenant
  validates_presence_of :user
  
  after_create :set_current_tenant_if_necessary

  # State Machine stuff
  default_scope where(:state => 'active')
  state_machine :initial => :active do
  end

  private
  # The first TenantMembership becomes the current_tenant by default.
  #
  def set_current_tenant_if_necessary
    if !self.user.current_tenant
      self.user.current_tenant = self.tenant
      self.user.save
    end
  end

end