From 22b7d7e7d952d5c4928bfcc4b3d88fec9a1cdd31 Mon Sep 17 00:00:00 2001 From: Petr Vobornik Date: Wed, 5 Sep 2012 16:55:57 +0200 Subject: Fixed problem while deleting entry with unsaved changes While deleting an entry it now resets a facet if there are unsaved changes. It prevents pop up of various error dialogs when UI tries to redirect to search page after successful delete. https://fedorahosted.org/freeipa/ticket/3047 --- install/ui/details.js | 9 +++++++++ install/ui/ipa.js | 2 ++ 2 files changed, 11 insertions(+) diff --git a/install/ui/details.js b/install/ui/details.js index cdb6a82b..f038daa6 100644 --- a/install/ui/details.js +++ b/install/ui/details.js @@ -1160,6 +1160,8 @@ IPA.object_action = function(spec) { return IPA.confirm(msg); }; + that.object_execute_action = that.execute_action; + return that; }; @@ -1201,6 +1203,13 @@ IPA.delete_action = function(spec) { var that = IPA.object_action(spec); + that.execute_action = function(facet, on_success, on_error) { + + if (facet.is_dirty()) facet.reset(); + + that.object_execute_action(facet, on_success, on_error); + }; + that.on_success = function(facet, data, text_status, xhr) { IPA.notify_success(data.result.summary); diff --git a/install/ui/ipa.js b/install/ui/ipa.js index 7df4deed..23c9933d 100644 --- a/install/ui/ipa.js +++ b/install/ui/ipa.js @@ -2042,6 +2042,8 @@ IPA.confirm = function(msg) { IPA.notify_success = function(message) { + if (!message) return; // don't show undefined, null and such + function destroy_timeout() { if (IPA.notify_success.timeout) window.clearTimeout(IPA.notify_success.timeout); } -- cgit