summaryrefslogtreecommitdiff
path: root/app/models
diff options
context:
space:
mode:
Diffstat (limited to 'app/models')
-rw-r--r--app/models/call_forward.rb27
-rw-r--r--app/models/hunt_group.rb2
-rw-r--r--app/models/voicemail_account.rb8
3 files changed, 31 insertions, 6 deletions
diff --git a/app/models/call_forward.rb b/app/models/call_forward.rb
index a4bfbb5..0df2a35 100644
--- a/app/models/call_forward.rb
+++ b/app/models/call_forward.rb
@@ -7,7 +7,8 @@ class CallForward < ActiveRecord::Base
:hunt_group_id,
:call_forwardable_type, :call_forwardable_id,
:call_forwarding_destination, :position, :uuid,
- :destinationable_type, :destinationable_id
+ :destinationable_type, :destinationable_id,
+ :destination_phone_number, :destination_greeting
belongs_to :call_forwardable, :polymorphic => true
belongs_to :destinationable, :polymorphic => true
@@ -88,6 +89,30 @@ class CallForward < ActiveRecord::Base
self.destinationable_id, delimeter, self.destinationable_type = destination_record.to_s.partition(':')
end
+ def destination_phone_number
+ if self.destinationable_type.to_s.downcase == 'phonenumber'
+ return self.destination
+ end
+ end
+
+ def destination_phone_number=(destination_number)
+ if self.destinationable_type.to_s.downcase == 'phonenumber'
+ self.destination = destination_number
+ end
+ end
+
+ def destination_greeting
+ if self.destinationable_type.to_s.downcase == 'voicemailaccount'
+ return self.destination
+ end
+ end
+
+ def destination_greeting=(destination_file)
+ if self.destinationable_type.to_s.downcase == 'voicemailaccount'
+ self.destination = destination_file
+ end
+ end
+
def toggle
self.active = ! self.active
return self.save
diff --git a/app/models/hunt_group.rb b/app/models/hunt_group.rb
index 93279ae..fac0cc5 100644
--- a/app/models/hunt_group.rb
+++ b/app/models/hunt_group.rb
@@ -2,7 +2,7 @@ class HuntGroup < ActiveRecord::Base
attr_accessible :name, :strategy, :seconds_between_jumps, :phone_numbers_attributes
belongs_to :tenant, :touch => true
- has_many :destrination_call_forwards, :as => :destinationable, :dependent => :destroy
+ has_many :destrination_call_forwards, :class_name => 'CallForward', :as => :destinationable, :dependent => :destroy
has_many :call_forwards, :as => :call_forwardable, :dependent => :destroy
validates_uniqueness_of :name, :scope => :tenant_id,
diff --git a/app/models/voicemail_account.rb b/app/models/voicemail_account.rb
index 8ec181f..298516e 100644
--- a/app/models/voicemail_account.rb
+++ b/app/models/voicemail_account.rb
@@ -21,9 +21,9 @@ class VoicemailAccount < ActiveRecord::Base
def notify_to
send_notification = nil
- if self.voicemail_settings.where(:name => 'notify', :value => true).first
+ if self.voicemail_settings.where(:name => 'notify', :value => 'true').first
send_notification = true
- elsif self.voicemail_settings.where(:name => 'notify', :value => false).first
+ elsif self.voicemail_settings.where(:name => 'notify', :value => 'false').first
send_notification = false
end
@@ -49,9 +49,9 @@ class VoicemailAccount < ActiveRecord::Base
def notification_setting(name)
setting = nil
- if self.voicemail_settings.where(:name => name, :value => true).first
+ if self.voicemail_settings.where(:name => name, :value => 'true').first
setting = true
- elsif self.voicemail_settings.where(:name => name, :value => false).first
+ elsif self.voicemail_settings.where(:name => name, :value => 'false').first
setting = false
end