Sha256: 2bf9b7e659aebc3e699a4ce18f17eeb13d22a3eaffb36343b493ff0c68aa7fb3

Contents?: true

Size: 826 Bytes

Versions: 3

Compression:

Stored size: 826 Bytes

Contents

class Unavailable < ActiveRecord::Base
  belongs_to :shift

  validates_presence_of :reason
  validates_presence_of :shift

  after_save :notify_to_managers

  def shift_detail
    "AS #{shift.job_name} from #{shift.start_time.strftime('%H:%M')} to #{shift.end_time.strftime('%H:%M')} on #{shift.formatted_due_date}"
  end
  def approve(manager, cancellation)
    self.approved_by = manager.id
    self.approved_date = Time.zone.now
    # self.notes = cancellation[:notes] if !cancellation[:notes].blank?
    self.status = 'approved'
    save
  end
  def deny(cancellation)
    self.status = 'denied'
    save
  end
  private
  def notify_to_managers
    if notify
      managers = shift.schedule.organization.get_managers
      managers.each do |manager|
        manager.notify_message(self)
      end
    end
  end





end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
pshq_engine-0.1.6 app/models/unavailable.rb
pshq_engine-0.1.5 app/models/unavailable.rb
pshq_engine-0.0.1 app/models/unavailable.rb