Sha256: 032564f811d03c0e1f9879fcecc1fea36a6f197d8cb82c5d17f7595b2c84fc4a

Contents?: true

Size: 1.56 KB

Versions: 3

Compression:

Stored size: 1.56 KB

Contents

logman.factory('$user',['$resource',function($resource){
	var User = $resource('/api/users/:id',{id:'@id'},{
		save:{method:'PUT'},
		create:{method:'POST'}
	});
	var collection = User.query();
	
	return{
		Class: User,
		collection: collection,
		reload: function(){
			User.query({},function(ls){
				collection.length = 0;
				for (var i=0; i < ls.length; i++)collection.push(ls[i]); 
			});
		},
		byId: function(id){
			for (var i=0; i < this.collection.length; i++) {
			 if(this.collection[i].id == id) return this.collection[i];
			};	
		}
	}
}]);

var UsersListCtl = function($scope, $user, $modal){
	$scope.users = $user.collection;
	$scope.is_admin = user.admin;
	
	$scope.remove = function(user){
		if(confirm('Are you sure?')){
			user.$delete($user.reload);
		}
	}
	
	$scope.addEdit = function(user){

		var modalInstance = $modal.open({
	      templateUrl: '/app/user/user-modal.html',
	      controller: UserModalCtl,
	      resolve: {active_user: function(){return user; }}
	    });
	}
	
	$scope.userProfile = function(){
		var me = $user.Class.get({id: window.user.id});
		$scope.addEdit(me);
	}
}

var UserModalCtl = function($scope, $modalInstance, $user, active_user){
	 $scope.user = active_user;
	 if(!$scope.user)$scope.user = new $user.Class();
	 $scope.is_admin = window.user.admin;
	 
	 $scope.addEdit = function(){
	 	function success(){
	 		$user.reload();
	 		$modalInstance.dismiss();
	 	}
	 	
	 	if($scope.user.id)$scope.user.$save(success);
	 	else $scope.user.$create(success)
	 }
	 
	 	
	 $scope.cancel = function () {
	    $modalInstance.dismiss('cancel');
	  };
}

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
logman-0.1.0 lib/console/static/app/user/user.js
logman-0.1.0.alpha lib/console/static/app/user/user.js
logman-0.0.2 lib/console/static/app/user/user.js