diff options
Diffstat (limited to 'app/serializers/switchboard_entry_serializer.rb')
-rw-r--r-- | app/serializers/switchboard_entry_serializer.rb | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/app/serializers/switchboard_entry_serializer.rb b/app/serializers/switchboard_entry_serializer.rb new file mode 100644 index 0000000..1b6c761 --- /dev/null +++ b/app/serializers/switchboard_entry_serializer.rb @@ -0,0 +1,14 @@ +class SwitchboardEntrySerializer < ActiveModel::Serializer + attributes :id, :name, :path_to_user, :avatar_src, :callstate + + has_one :sip_account, embed: :ids + has_one :switchboard, embed: :ids + + def path_to_user + if object.sip_account && object.sip_account.sip_accountable_type == 'User' + "/tenants/#{object.sip_account.sip_accountable.current_tenant.id}/users/#{object.sip_account.sip_accountable.id}" + else + nil + end + end +end |