Browse Source

Add call and chat functionality.

pull/119/head
Evan Theurer 12 years ago
parent
commit
f03514c5e7
  1. 19
      static/js/directives/buddycondensed.js
  2. 8
      static/partials/buddycondensed.html

19
static/js/directives/buddycondensed.js

@ -23,8 +23,16 @@ define(['angular', 'text!partials/buddycondensed.html'], function(angular, templ
// buddycondensed // buddycondensed
return [function() { return [function() {
var controller = ['$scope', 'mediaStream', 'contacts', function($scope, mediaStream, contacts) { var controller = ['$scope', 'mediaStream', 'contacts', 'buddyData', function($scope, mediaStream, contacts, buddyData) {
var buddycondensed = []; var buddycondensed = [];
var getContactSessionId = function(userid) {
var session = null;
var scope = buddyData.lookup(userid, false, false);
if (scope) {
session = scope.session.get();
}
return session && session.Id ? session.Id : null;
};
var empty = function(x) { var empty = function(x) {
return x === null || x === undefined || isNaN(x) || x === ""; return x === null || x === undefined || isNaN(x) || x === "";
}; };
@ -77,6 +85,15 @@ define(['angular', 'text!partials/buddycondensed.html'], function(angular, templ
} }
$scope.$apply(); $scope.$apply();
}; };
$scope.call = function(userid) {
mediaStream.webrtc.doCall(getContactSessionId(userid));
};
$scope.chat = function(userid) {
$scope.$emit("startchat", getContactSessionId(userid), {
autofocus: true,
restore: true
});
};
$scope.listDefault = function() { $scope.listDefault = function() {
if(buddycondensed.length >= $scope.maxBuddiesToShow) { if(buddycondensed.length >= $scope.maxBuddiesToShow) {
return buddycondensed.slice(0, $scope.maxBuddiesToShow); return buddycondensed.slice(0, $scope.maxBuddiesToShow);

8
static/partials/buddycondensed.html

@ -9,8 +9,8 @@
<span class="actions"> <span class="actions">
<span class="displayName">{{buddy.Userid|displayName}}</span> <span class="displayName">{{buddy.Userid|displayName}}</span>
<div class="btn-group"> <div class="btn-group">
<a class="btn btn-primary" data-action="call" title="Start video call"><i class="fa fa-phone"></i></a> <a class="btn btn-primary" ng-click="call(buddy.Userid)" title="Start video call"><i class="fa fa-phone"></i></a>
<a class="btn btn-primary" data-action="chat" title="Start chat"><i class="fa fa-comments-o"></i></a> <a class="btn btn-primary" ng-click="chat(buddy.Userid)" title="Start chat"><i class="fa fa-comments-o"></i></a>
</div> </div>
</span> </span>
</span> </span>
@ -24,8 +24,8 @@
<span class="actions"> <span class="actions">
<span class="displayName">{{buddy.Userid|displayName}}</span> <span class="displayName">{{buddy.Userid|displayName}}</span>
<div class="btn-group"> <div class="btn-group">
<a class="btn btn-primary" data-action="call" title="Start video call"><i class="fa fa-phone"></i></a> <a class="btn btn-primary" ng-click="call(buddy.Userid)" title="Start video call"><i class="fa fa-phone"></i></a>
<a class="btn btn-primary" data-action="chat" title="Start chat"><i class="fa fa-comments-o"></i></a> <a class="btn btn-primary" ng-click="chat(buddy.Userid)" title="Start chat"><i class="fa fa-comments-o"></i></a>
</div> </div>
</span> </span>
</span> </span>

Loading…
Cancel
Save