From 80815305c5c14022eaa59990a116f590b61849b1 Mon Sep 17 00:00:00 2001 From: Jared Tabor Date: Tue, 14 Jun 2016 00:00:41 -0700 Subject: [PATCH] Check status of test notifications. The response from the PUT call to the notifications_templates//test endpoint contains an ID to be used to perform a lookup off of the notifications endpoint in order to obtain the status. --- .../list.controller.js | 32 ++++++++++++++++--- 1 file changed, 27 insertions(+), 5 deletions(-) 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..ec6574afb7 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,33 @@ 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'); + setTimeout(function(){ + console.log('in set timeout'); + 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 Succeeded.`, + dismissOnTimeout: false + }); + } + else if(res && res.data && res.data.status && res.data.status === "failed"){ + ngToast.danger({ + content: ` ${name}: Notification Failed.`, + dismissOnTimeout: false + }); + } + }); + } , 5000); + } }) .catch(function () { ngToast.danger({