From b36de98fa364eb3c7506dc1920a903d4d03c7c42 Mon Sep 17 00:00:00 2001 From: Harpreet Kataria Date: Tue, 28 Feb 2017 10:16:25 -0500 Subject: [PATCH] made changes to code to handle API Failure. --- .../javascripts/services/miq_service.js | 2 +- .../javascripts/services/post_service.js | 50 +++++++------------ 2 files changed, 19 insertions(+), 33 deletions(-) diff --git a/app/assets/javascripts/services/miq_service.js b/app/assets/javascripts/services/miq_service.js index d9197ccf0b24..bd9ed8de5ec4 100644 --- a/app/assets/javascripts/services/miq_service.js +++ b/app/assets/javascripts/services/miq_service.js @@ -124,7 +124,7 @@ ManageIQ.angular.app.service('miqService', ['$timeout', '$document', '$q', '$log return serializedObj; }; - + this.handleFailure = function(e) { miqSparkleOff(); if (e.message) { diff --git a/app/assets/javascripts/services/post_service.js b/app/assets/javascripts/services/post_service.js index 9ef1824f599c..68a4763529da 100644 --- a/app/assets/javascripts/services/post_service.js +++ b/app/assets/javascripts/services/post_service.js @@ -6,26 +6,19 @@ ManageIQ.angular.app.service('postService', ["miqService", "$timeout", "$window" angular.toJson({ action: "edit", resource: updateObject - })).then(function(response) { + })).then(handleSuccess) + .catch(miqService.handleFailure); + + function handleSuccess(response) { + $timeout(function () { if (response.error) { - handleFailure(response); + var msg = __(response.error.klass + ': ' + response.error.message); + miqService.miqFlash('error', msg); + miqService.sparkleOff(); } else { - handleSuccess; + $window.location.href = redirectURL + '&flash_msg=' + successMsg; } }); - - function handleSuccess() { - $timeout(function () { - $window.location.href = redirectURL + '&flash_msg=' + successMsg; - }); - } - - function handleFailure(response) { - var msg = sprintf(__('Error during Save: [%s - %s]'), response.error.klass, response.error.message); - $timeout(function() { - miqService.sparkleOff(); - miqService.miqFlash('error', __(msg)); - }); } }; @@ -35,26 +28,19 @@ ManageIQ.angular.app.service('postService', ["miqService", "$timeout", "$window" angular.toJson({ action: "create", resource: createObject - })).then(function(response) { + })).then(handleSuccess) + .catch(miqService.handleFailure); + + function handleSuccess(response) { + $timeout(function () { if (response.error) { - handleFailure(response); + var msg = __(response.error.klass + ': ' + response.error.message); + miqService.miqFlash('error', msg); + miqService.sparkleOff(); } else { - handleSuccess; + $window.location.href = redirectURL + '&flash_msg=' + successMsg; } }); - - function handleSuccess() { - $timeout(function () { - $window.location.href = redirectURL + '&flash_msg=' + successMsg; - }); - } - - function handleFailure(response) { - var msg = sprintf(__('Error during Add: [%s - %s]'), response.error.klass, response.error.message); - $timeout(function() { - miqService.sparkleOff(); - miqService.miqFlash('error', __(msg)); - }); } };