summaryrefslogtreecommitdiff
path: root/app/models/switchboard_entry.rb
diff options
context:
space:
mode:
authorStefan Wintermeyer <stefan.wintermeyer@amooma.de>2013-04-03 22:08:19 +0200
committerStefan Wintermeyer <stefan.wintermeyer@amooma.de>2013-04-03 22:09:33 +0200
commitcea2cc3c1cc1e48fc4600c698d52dfda2bde4505 (patch)
treee216a9634c31047e8908a882aed9ff2545ed99e6 /app/models/switchboard_entry.rb
parent64653a9149eca977c16233abb0a472730b94a464 (diff)
Massive changes to the switchboard.
Diffstat (limited to 'app/models/switchboard_entry.rb')
-rw-r--r--app/models/switchboard_entry.rb33
1 files changed, 33 insertions, 0 deletions
diff --git a/app/models/switchboard_entry.rb b/app/models/switchboard_entry.rb
index faeba8c..44de7fd 100644
--- a/app/models/switchboard_entry.rb
+++ b/app/models/switchboard_entry.rb
@@ -30,4 +30,37 @@ class SwitchboardEntry < ActiveRecord::Base
self.name.to_s
end
end
+
+ def avatar_src
+ if self.sip_account.sip_accountable.class == User
+ if self.sip_account.sip_accountable.image?
+ self.sip_account.sip_accountable.image_url(:profile)
+ else
+ if self.sip_account.sip_accountable.male?
+ '/assets/icons/user-male-16x.png'
+ else
+ '/assets/icons/user-female-16x.png'
+ end
+ end
+ else
+ nil
+ end
+ end
+
+ def callstate
+ if self.sip_account.call_legs.where(callstate: 'ACTIVE').any? || self.sip_account.b_call_legs.where(b_callstate: 'ACTIVE').any?
+ 'ACTIVE'
+ else
+ if self.sip_account.call_legs.where(callstate: 'EARLY').any?
+ 'EARLY'
+ else
+ if self.sip_account.call_legs.where(callstate: 'RINGING').any?
+ 'RINGING'
+ else
+ nil
+ end
+ end
+ end
+ end
+
end