2014-08-12 14:10:52 +00:00
|
|
|
<!doctype html>
|
|
|
|
<html xmlns:ng="http://angularjs.org" ng-app="matrixWebClient" ng-controller="MatrixWebClientController">
|
|
|
|
<head>
|
|
|
|
<title>[matrix]</title>
|
2014-08-23 19:45:00 +00:00
|
|
|
|
2014-08-12 14:10:52 +00:00
|
|
|
<link rel="stylesheet" href="app.css">
|
2014-08-30 23:40:42 +00:00
|
|
|
<link rel="stylesheet" href="mobile.css">
|
|
|
|
|
2014-08-12 14:10:52 +00:00
|
|
|
<link rel="icon" href="favicon.ico">
|
2014-08-15 16:42:02 +00:00
|
|
|
|
2014-08-23 19:45:00 +00:00
|
|
|
<meta name="viewport" content="width=device-width">
|
|
|
|
|
2014-09-05 20:31:47 +00:00
|
|
|
<script type='text/javascript' src='js/jquery-1.8.3.min.js'></script>
|
2014-09-06 16:47:30 +00:00
|
|
|
<script type="text/javascript" src="https://www.google.com/recaptcha/api/js/recaptcha_ajax.js"></script>
|
2014-08-16 21:09:42 +00:00
|
|
|
<script src="js/angular.min.js"></script>
|
|
|
|
<script src="js/angular-route.min.js"></script>
|
2014-08-16 21:21:52 +00:00
|
|
|
<script src="js/angular-sanitize.min.js"></script>
|
2014-09-10 14:45:09 +00:00
|
|
|
<script src="js/angular-animate.min.js"></script>
|
2014-08-15 16:42:02 +00:00
|
|
|
<script type='text/javascript' src='js/ng-infinite-scroll-matrix.js'></script>
|
2014-09-11 13:07:44 +00:00
|
|
|
<script type='text/javascript' src='js/autofill-event.js'></script>
|
2014-08-12 14:10:52 +00:00
|
|
|
<script src="app.js"></script>
|
2014-09-06 00:36:09 +00:00
|
|
|
<script src="config.js"></script>
|
2014-08-12 14:10:52 +00:00
|
|
|
<script src="app-controller.js"></script>
|
2014-08-20 09:28:36 +00:00
|
|
|
<script src="app-directive.js"></script>
|
|
|
|
<script src="app-filter.js"></script>
|
2014-08-22 16:08:03 +00:00
|
|
|
<script src="home/home-controller.js"></script>
|
2014-08-12 14:10:52 +00:00
|
|
|
<script src="login/login-controller.js"></script>
|
2014-08-30 23:40:42 +00:00
|
|
|
<script src="login/register-controller.js"></script>
|
2014-08-27 13:09:16 +00:00
|
|
|
<script src="recents/recents-controller.js"></script>
|
2014-08-27 13:50:07 +00:00
|
|
|
<script src="recents/recents-filter.js"></script>
|
2014-08-12 14:10:52 +00:00
|
|
|
<script src="room/room-controller.js"></script>
|
2014-08-20 09:28:36 +00:00
|
|
|
<script src="room/room-directive.js"></script>
|
2014-08-22 15:11:39 +00:00
|
|
|
<script src="settings/settings-controller.js"></script>
|
2014-08-18 16:05:42 +00:00
|
|
|
<script src="user/user-controller.js"></script>
|
2014-08-12 14:10:52 +00:00
|
|
|
<script src="components/matrix/matrix-service.js"></script>
|
2014-09-04 09:19:28 +00:00
|
|
|
<script src="components/matrix/matrix-filter.js"></script>
|
2014-08-27 17:57:54 +00:00
|
|
|
<script src="components/matrix/matrix-call.js"></script>
|
|
|
|
<script src="components/matrix/matrix-phone-service.js"></script>
|
2014-08-15 09:20:14 +00:00
|
|
|
<script src="components/matrix/event-stream-service.js"></script>
|
2014-08-15 10:31:13 +00:00
|
|
|
<script src="components/matrix/event-handler-service.js"></script>
|
2014-08-26 14:25:27 +00:00
|
|
|
<script src="components/matrix/presence-service.js"></script>
|
2014-08-14 09:36:11 +00:00
|
|
|
<script src="components/fileInput/file-input-directive.js"></script>
|
2014-08-14 16:39:23 +00:00
|
|
|
<script src="components/fileUpload/file-upload-service.js"></script>
|
2014-08-20 14:18:50 +00:00
|
|
|
<script src="components/utilities/utilities-service.js"></script>
|
2014-08-12 14:10:52 +00:00
|
|
|
</head>
|
|
|
|
|
|
|
|
<body>
|
|
|
|
|
2014-08-30 23:40:42 +00:00
|
|
|
<div id="header">
|
2014-08-12 14:10:52 +00:00
|
|
|
<!-- Do not show buttons on the login page -->
|
2014-08-30 23:40:42 +00:00
|
|
|
<div id="headerContent" ng-hide="'/login' == location || '/register' == location">
|
2014-09-05 23:14:02 +00:00
|
|
|
<div id="callBar" ng-show="currentCall">
|
|
|
|
<img id="callPeerImage" ng-show="currentCall.userProfile.avatar_url" ngSrc="{{ currentCall.userProfile.avatar_url }}" />
|
|
|
|
<img class="callIcon" src="img/green_phone.png" ng-show="currentCall.state != 'ended'" />
|
|
|
|
<img class="callIcon" id="callEndedIcon" src="img/red_phone.png" ng-show="currentCall.state == 'ended'" />
|
|
|
|
<div id="callPeerNameAndState">
|
|
|
|
<span id="callPeerName">{{ currentCall.userProfile.displayname }}</span>
|
|
|
|
<br />
|
|
|
|
<span id="callState">
|
|
|
|
<span ng-show="currentCall.state == 'invite_sent'">Calling...</span>
|
2014-09-17 15:26:35 +00:00
|
|
|
<span ng-show="currentCall.state == 'ringing' && currentCall.type == 'video'">Incoming Video Call</span>
|
|
|
|
<span ng-show="currentCall.state == 'ringing' && currentCall.type == 'voice'">Incoming Voice Call</span>
|
2014-09-05 23:14:02 +00:00
|
|
|
<span ng-show="currentCall.state == 'connecting'">Call Connecting...</span>
|
|
|
|
<span ng-show="currentCall.state == 'connected'">Call Connected</span>
|
2014-09-09 16:52:01 +00:00
|
|
|
<span ng-show="currentCall.state == 'ended' && !currentCall.didConnect && currentCall.direction == 'outbound' && currentCall.hangupParty == 'remote'">Call Rejected</span>
|
2014-09-16 13:46:13 +00:00
|
|
|
<span ng-show="currentCall.state == 'ended' && !currentCall.didConnect && currentCall.direction == 'outbound' && currentCall.hangupParty == 'local' && currentCall.hangupReason == undefined">Call Canceled</span>
|
|
|
|
<span ng-show="currentCall.state == 'ended' && !currentCall.didConnect && currentCall.direction == 'outbound' && currentCall.hangupParty == 'local' && currentCall.hangupReason == 'invite_timeout'">User Not Responding</span>
|
2014-09-05 23:14:02 +00:00
|
|
|
<span ng-show="currentCall.state == 'ended' && currentCall.didConnect && currentCall.direction == 'outbound'">Call Ended</span>
|
|
|
|
<span ng-show="currentCall.state == 'ended' && !currentCall.didConnect && currentCall.direction == 'inbound'">Call Canceled</span>
|
|
|
|
<span ng-show="currentCall.state == 'ended' && currentCall.didConnect && currentCall.direction == 'inbound'">Call Ended</span>
|
|
|
|
<span ng-show="currentCall.state == 'wait_local_media'">Waiting for media permission...</span>
|
|
|
|
</span>
|
2014-09-01 16:15:26 +00:00
|
|
|
</div>
|
2014-09-05 23:14:02 +00:00
|
|
|
<span ng-show="currentCall.state == 'ringing'">
|
2014-09-17 15:26:35 +00:00
|
|
|
<button ng-click="answerCall()">Answer {{ currentCall.type }} call</button>
|
2014-09-05 23:14:02 +00:00
|
|
|
<button ng-click="hangupCall()">Reject</button>
|
|
|
|
</span>
|
2014-09-01 16:15:26 +00:00
|
|
|
<button ng-click="hangupCall()" ng-show="currentCall && currentCall.state != 'ringing' && currentCall.state != 'ended' && currentCall.state != 'fledgling'">Hang up</button>
|
2014-09-08 15:10:36 +00:00
|
|
|
<audio id="ringAudio" loop>
|
|
|
|
<source src="media/ring.ogg" type="audio/ogg" />
|
|
|
|
<source src="media/ring.mp3" type="audio/mpeg" />
|
|
|
|
</audio>
|
|
|
|
<audio id="ringbackAudio" loop>
|
|
|
|
<source src="media/ringback.ogg" type="audio/ogg" />
|
|
|
|
<source src="media/ringback.mp3" type="audio/mpeg" />
|
|
|
|
</audio>
|
|
|
|
<audio id="callendAudio">
|
|
|
|
<source src="media/callend.ogg" type="audio/ogg" />
|
|
|
|
<source src="media/callend.mp3" type="audio/mpeg" />
|
|
|
|
</audio>
|
|
|
|
<audio id="busyAudio">
|
|
|
|
<source src="media/busy.ogg" type="audio/ogg" />
|
|
|
|
<source src="media/busy.mp3" type="audio/mpeg" />
|
|
|
|
</audio>
|
2014-09-01 16:15:26 +00:00
|
|
|
</div>
|
2014-09-17 15:26:35 +00:00
|
|
|
<video id="localVideo" ng-show="currentCall && currentCall.type == 'video' && (currentCall.state == 'connected' || currentCall.state == 'connecting' || currentCall.state == 'invite_sent')"></video>
|
|
|
|
<video id="remoteVideo" ng-show="currentCall && currentCall.type == 'video' && currentCall.state == 'connected'"></video>
|
|
|
|
|
2014-08-30 23:40:42 +00:00
|
|
|
<a href id="headerUserId" ng-click='goToUserPage(user_id)'>{{ user_id }}</a>
|
|
|
|
|
2014-08-29 23:44:56 +00:00
|
|
|
<button ng-click='goToPage("/")'>Home</button>
|
2014-08-27 08:25:27 +00:00
|
|
|
<button ng-click='goToPage("settings")'>Settings</button>
|
2014-08-12 14:10:52 +00:00
|
|
|
<button ng-click="logout()">Log out</button>
|
|
|
|
</div>
|
2014-08-30 23:40:42 +00:00
|
|
|
</div>
|
2014-08-12 14:10:52 +00:00
|
|
|
|
2014-08-30 23:40:42 +00:00
|
|
|
<div id="page" ng-view></div>
|
2014-08-12 14:10:52 +00:00
|
|
|
|
2014-08-30 23:40:42 +00:00
|
|
|
<div id="footer" ng-hide="location.indexOf('/room') == 0">
|
|
|
|
<div id="footerContent">
|
2014-09-01 15:22:57 +00:00
|
|
|
© 2014 Matrix.org
|
2014-08-30 23:40:42 +00:00
|
|
|
</div>
|
|
|
|
</div>
|
2014-08-12 14:10:52 +00:00
|
|
|
</body>
|
|
|
|
</html>
|