mainApp.factory('Compute',[ '$http', 'Identity', function($http, Identity){ // Create data var data={}; data.machines={}; // Parser var parseGetMachinesAnswer=function(response, failedToSendRequest){ // Defined return object var requestParserResult={}; requestParserResult.status=1; requestParserResult.failReason=null; console.log(response.data.Images[Object.keys(response.data.Images)[0]]) if (typeof response.data.Servers !== 'undefined') { // Set status code requestParserResult.status=0; data.machines=response.data.Servers; } else if(failedToSendRequest){ requestParserResult.failReason="Failed to send request"; } else{ requestParserResult.failReason="Error"; } return requestParserResult; }; // Get Machine var pullMachines=function(callback){ var params={ "token" : Identity.getToken(), "task" : "compute", "action":"listImages" }; var result=$http.post('../server/index.php', $.param(params)); // Wait and handle the response result.then(function (response){ callback(parseGetMachinesAnswer(response, false)); },function(response){ alert(response.status); callback(parseGetMachinesAnswer(response, true)); }); }; var pullData=function(callback){ // TODO call getMachines etc... } var getData=function(){ return data; } // Return services objects return { pullMachines: pullMachines, pullData: pullData, getData: getData }; }]);