67 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
			
		
		
	
	
			67 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
| /*
 | |
| Copyright 2014 OpenMarket Ltd
 | |
| 
 | |
| Licensed under the Apache License, Version 2.0 (the "License");
 | |
| you may not use this file except in compliance with the License.
 | |
| You may obtain a copy of the License at
 | |
| 
 | |
|     http://www.apache.org/licenses/LICENSE-2.0
 | |
| 
 | |
| Unless required by applicable law or agreed to in writing, software
 | |
| distributed under the License is distributed on an "AS IS" BASIS,
 | |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | |
| See the License for the specific language governing permissions and
 | |
| limitations under the License.
 | |
| */
 | |
| 
 | |
| 'use strict';
 | |
| 
 | |
| angular.module('UserController', ['matrixService'])
 | |
| .controller('UserController', ['$scope', '$routeParams', 'matrixService',
 | |
|                               function($scope, $routeParams, matrixService) {                 
 | |
|     $scope.user = {
 | |
|         id: $routeParams.user_matrix_id,
 | |
|         displayname: "",
 | |
|         avatar_url: undefined
 | |
|     };
 | |
|     
 | |
|     $scope.user_id = matrixService.config().user_id;
 | |
|     
 | |
|     matrixService.getDisplayName($scope.user.id).then(
 | |
|         function(response) {
 | |
|             $scope.user.displayname = response.data.displayname;
 | |
|         }
 | |
|     ); 
 | |
|     
 | |
|     matrixService.getProfilePictureUrl($scope.user.id).then(
 | |
|         function(response) {
 | |
|             $scope.user.avatar_url = response.data.avatar_url;
 | |
|         }
 | |
|     );
 | |
| 
 | |
|     // FIXME: factor this out between user-controller and home-controller etc.
 | |
|     $scope.messageUser = function() {    
 | |
|         
 | |
|         // FIXME: create a new room every time, for now
 | |
|         
 | |
|         matrixService.create(null, 'private').then(
 | |
|             function(response) { 
 | |
|                 // This room has been created. Refresh the rooms list
 | |
|                 var room_id = response.data.room_id;
 | |
|                 console.log("Created room with id: "+ room_id);
 | |
|                 
 | |
|                 matrixService.invite(room_id, $scope.user.id).then(
 | |
|                     function() {
 | |
|                         $scope.feedback = "Invite sent successfully";
 | |
|                         $scope.$parent.goToPage("/room/" + room_id);
 | |
|                     },
 | |
|                     function(reason) {
 | |
|                         $scope.feedback = "Failure: " + JSON.stringify(reason);
 | |
|                     });
 | |
|             },
 | |
|             function(error) {
 | |
|                 $scope.feedback = "Failure: " + JSON.stringify(error.data);
 | |
|             });                
 | |
|     };
 | |
|     
 | |
| }]); |