diff --git a/awx/ui/client/src/notifications/notification-templates-list/list.controller.js b/awx/ui/client/src/notifications/notification-templates-list/list.controller.js index 0167b32d3f..c62050cdb4 100644 --- a/awx/ui/client/src/notifications/notification-templates-list/list.controller.js +++ b/awx/ui/client/src/notifications/notification-templates-list/list.controller.js @@ -1,4 +1,4 @@ -/************************************************* + /************************************************* * Copyright (c) 2015 Ansible, Inc. * * All Rights Reserved @@ -150,11 +150,40 @@ export default var name = this.notification_template.name; Rest.setUrl(defaultUrl + this.notification_template.id +'/test/'); Rest.post({}) - .then(function () { - ngToast.success({ - content: ` ${name}: Notification Succeeded.`, - }); - + .then(function (data) { + if(data && data.data && data.data.notification){ + Wait('start'); + // Using a setTimeout here to wait for the + // notification to be processed and for a status + // to be returned from the API. + setTimeout(function(){ + var id = data.data.notification, + url = GetBasePath('notifications') + id; + Rest.setUrl(url); + Rest.get() + .then(function (res) { + Wait('stop'); + if(res && res.data && res.data.status && res.data.status === "successful"){ + ngToast.success({ + content: ` ${name}: Notification sent.` + }); + } + else if(res && res.data && res.data.status && res.data.status === "failed"){ + ngToast.danger({ + content: ` ${name}: Notification failed.` + }); + } + else { + ProcessErrors(scope, data, status, null, { hdr: 'Error!', + msg: 'Call to ' + url + ' failed. Notification returned status: ' + status }); + } + }); + } , 5000); + } + else { + ProcessErrors(scope, data, status, null, { hdr: 'Error!', + msg: 'Call to notifcatin templates failed. Notification returned status: ' + status }); + } }) .catch(function () { ngToast.danger({ diff --git a/awx/ui/client/src/notifications/notifications.block.less b/awx/ui/client/src/notifications/notifications.block.less index d3ebf96651..eb767b5230 100644 --- a/awx/ui/client/src/notifications/notifications.block.less +++ b/awx/ui/client/src/notifications/notifications.block.less @@ -13,6 +13,11 @@ color: @default-bg; } +.alert-danger{ + background-color: @default-err; + color: @default-bg; +} + .Toast-successIcon{ font-size: x-large; vertical-align: middle;