mainApp.factory('Image',[ '$http', 'Identity', function($http, Identity){ var data={}; data.images=null; var parseUploadImageAnswer=function(response, failedToSendRequest){ // Defined return object var requestParserResult={}; requestParserResult.status=1; requestParserResult.failReason=null; if (typeof response.data.Images !== 'undefined') { // Set status code requestParserResult.status=0; data.images=response.data.Images; } else if(failedToSendRequest){ requestParserResult.failReason="Failed to send request"; } else{ requestParserResult.failReason="Error"; } return requestParserResult; }; var getImages=function(callback){ var result=$http.post('../server/index.php', $.param({"token" : Identity.getToken(), "task" : "image", 'action':'listImage'})); // Wait and handle the response result.then(function (response){ callback(parseUploadImageAnswer(response, false)); },function(response){ callback(parseUploadImageAnswer(response, true)); }); }; var uploadImage=function(fileToUpload, callback) { var result=$http.post('../server/index.php', $.param({"token" : Identity.getToken(), "task" : "image", 'action':'uploadImage', 'filename':fileToUpload, 'id':'6564'})); // Wait and handle the response result.then(function (response){ callback(parseUploadImageAnswer(response, false)); },function(response){ callback(parseUploadImageAnswer(response, true)); }); } var getData=function(response){ return data; }; // Return services objects return { getImages:getImages, getData:getData, uploadImage:uploadImage }; }]);