From 300813de8100f7b876cdadb04cdc04aea74e1be7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Mart=C3=ADn?= Date: Fri, 28 Aug 2015 18:11:21 +0200 Subject: [PATCH] Backlog #3925: Add confirmation dialog to a couple actions --- .../public/app/tabs/vms-tab/panels/network.js | 16 +++++++++++++++- .../public/app/tabs/vms-tab/panels/storage.js | 15 ++++++++++++++- .../public/app/tabs/vnets-tab/panels/ar.js | 18 +++++++++++++++--- 3 files changed, 44 insertions(+), 5 deletions(-) diff --git a/src/sunstone/public/app/tabs/vms-tab/panels/network.js b/src/sunstone/public/app/tabs/vms-tab/panels/network.js index 5f1f814cd2..10bb61b43e 100644 --- a/src/sunstone/public/app/tabs/vms-tab/panels/network.js +++ b/src/sunstone/public/app/tabs/vms-tab/panels/network.js @@ -20,6 +20,7 @@ define(function(require) { var TAB_ID = require('../tabId'); var PANEL_ID = require('./network/panelId'); var ATTACH_NIC_DIALOG_ID = require('../dialogs/attach-nic/dialogId'); + var CONFIRM_DIALOG_ID = require('utils/dialogs/generic-confirm/dialogId'); var RESOURCE = "VM" var XML_ROOT = "VM" @@ -352,7 +353,20 @@ define(function(require) { context.off('click', '.detachnic'); context.on('click', '.detachnic', function() { var nic_id = $(this).parents('tr').attr('nic_id'); - Sunstone.runAction('VM.detachnic', that.element.ID, nic_id); + + Sunstone.getDialog(CONFIRM_DIALOG_ID).setParams({ + //header : + body : Locale.tr("This will detach the nic inmediately"), + //question : + submit : function(){ + Sunstone.runAction('VM.detachnic', that.element.ID, nic_id); + return false; + } + }); + + Sunstone.getDialog(CONFIRM_DIALOG_ID).reset(); + Sunstone.getDialog(CONFIRM_DIALOG_ID).show(); + return false; }); } diff --git a/src/sunstone/public/app/tabs/vms-tab/panels/storage.js b/src/sunstone/public/app/tabs/vms-tab/panels/storage.js index b2893fb319..ef66e98c3d 100644 --- a/src/sunstone/public/app/tabs/vms-tab/panels/storage.js +++ b/src/sunstone/public/app/tabs/vms-tab/panels/storage.js @@ -300,7 +300,20 @@ define(function(require) { context.off('click', '.detachdisk'); context.on('click', '.detachdisk', function() { var disk_id = $(this).parents('tr').attr('disk_id'); - Sunstone.runAction('VM.detachdisk', that.element.ID, disk_id); + + Sunstone.getDialog(CONFIRM_DIALOG_ID).setParams({ + //header : + body : Locale.tr("This will detach the disk inmediately"), + //question : + submit : function(){ + Sunstone.runAction('VM.detachdisk', that.element.ID, disk_id); + return false; + } + }); + + Sunstone.getDialog(CONFIRM_DIALOG_ID).reset(); + Sunstone.getDialog(CONFIRM_DIALOG_ID).show(); + return false; }); } diff --git a/src/sunstone/public/app/tabs/vnets-tab/panels/ar.js b/src/sunstone/public/app/tabs/vnets-tab/panels/ar.js index 8a0a906239..4db1778631 100644 --- a/src/sunstone/public/app/tabs/vnets-tab/panels/ar.js +++ b/src/sunstone/public/app/tabs/vnets-tab/panels/ar.js @@ -26,6 +26,7 @@ define(function(require) { var ADD_AR_DIALOG_ID = require('../dialogs/add-ar/dialogId'); var UPDATE_AR_DIALOG_ID = require('../dialogs/update-ar/dialogId'); + var CONFIRM_DIALOG_ID = require('utils/dialogs/generic-confirm/dialogId'); /* CONSTRUCTOR @@ -152,11 +153,22 @@ define(function(require) { if (Config.isTabActionEnabled("vnets-tab", "Network.remove_ar")) { context.off("click", 'button#rm_ar_button'); context.on("click", 'button#rm_ar_button', function(){ - // TODO: confirm? var ar_id = $(this).attr('ar_id'); - var obj = {ar_id: ar_id}; - Sunstone.runAction('Network.rm_ar',that.element.ID,obj); + Sunstone.getDialog(CONFIRM_DIALOG_ID).setParams({ + //header : + body : Locale.tr("This will delete all the addresses in this range"), + //question : + submit : function(){ + var obj = {ar_id: ar_id}; + Sunstone.runAction('Network.rm_ar',that.element.ID,obj); + + return false; + } + }); + + Sunstone.getDialog(CONFIRM_DIALOG_ID).reset(); + Sunstone.getDialog(CONFIRM_DIALOG_ID).show(); return false; });