Hello,

Make sure that the success message in web UI is properly populated with actual
number of items that were successfully added/removed.

https://fedorahosted.org/freeipa/ticket/3708

-- 
Regards,

Ana Krivokapic
Associate Software Engineer
FreeIPA team
Red Hat Inc.

From be36b4f1794934ae468f56f2972a16d204339582 Mon Sep 17 00:00:00 2001
From: Ana Krivokapic <akriv...@redhat.com>
Date: Thu, 13 Jun 2013 16:10:33 +0200
Subject: [PATCH] Fix displaying of success message

Make sure that the success message is properly populated with actual number of
items that were successfully added/removed.

https://fedorahosted.org/freeipa/ticket/3708
---
 install/ui/src/freeipa/association.js | 42 +++++++++++++----------------------
 install/ui/src/freeipa/ipa.js         | 15 +++++++++++++
 2 files changed, 31 insertions(+), 26 deletions(-)

diff --git a/install/ui/src/freeipa/association.js b/install/ui/src/freeipa/association.js
index 15e164963e93faddc3e9ddfbc428c1c74df3bf95..c60c7b8afe9c16ae55e5147574664c60afc43d3e 100644
--- a/install/ui/src/freeipa/association.js
+++ b/install/ui/src/freeipa/association.js
@@ -609,10 +609,13 @@ IPA.association_table_widget = function (spec) {
         dialog.execute = function() {
             that.add(
                 dialog.get_selected_values(),
-                function() {
+                function(data) {
                     that.refresh();
                     dialog.close();
-                    IPA.notify_success('@i18n:association.added');
+
+                    var succeeded = IPA.get_succeeded(data);
+                    var msg = text.get('@i18n:association.added').replace('${count}', succeeded);
+                    IPA.notify_success(msg);
                 },
                 function() {
                     that.refresh();
@@ -671,9 +674,12 @@ IPA.association_table_widget = function (spec) {
         dialog.execute = function() {
             that.remove(
                 selected_values,
-                function() {
+                function(data) {
                     that.refresh();
-                    IPA.notify_success('@i18n:association.removed');
+
+                    var succeeded = IPA.get_succeeded(data);
+                    var msg = text.get('@i18n:association.removed').replace('${count}', succeeded);
+                    IPA.notify_success(msg);
                 },
                 function() {
                     that.refresh();
@@ -1084,17 +1090,8 @@ exp.association_facet = IPA.association_facet = function (spec, no_init) {
                 on_success: function(data) {
                     that.refresh();
                     dialog.close();
-                    var succeeded = data.result.completed;
-
-                    if (!succeeded) {
-                        succeeded = 0;
-                        for (var i = 0; i< data.result.results.length; i++) {
-                            if (data.result.results[i].completed === 1) {
-                                succeeded++;
-                            }
-                        }
-                    }
 
+                    var succeeded = IPA.get_succeeded(data);
                     var msg = text.get('@i18n:association.added').replace('${count}', succeeded);
                     IPA.notify_success(msg);
                 },
@@ -1148,17 +1145,7 @@ exp.association_facet = IPA.association_facet = function (spec, no_init) {
                 on_success: function(data) {
                     that.refresh();
 
-                    var succeeded = data.result.completed;
-
-                    if (!succeeded) {
-                        succeeded = 0;
-                        for (var i = 0; i< data.result.results.length; i++) {
-                            if (data.result.results[i].completed === 1) {
-                                succeeded++;
-                            }
-                        }
-                    }
-
+                    var succeeded = IPA.get_succeeded(data);
                     var msg = text.get('@i18n:association.removed').replace('${count}', succeeded);
                     IPA.notify_success(msg);
                 },
@@ -1417,7 +1404,10 @@ exp.attribute_facet = IPA.attribute_facet = function(spec, no_init) {
                 function(data) {
                     that.load(data);
                     that.show_content();
-                    IPA.notify_success('@i18n:association.removed');
+
+                    var succeeded = IPA.get_succeeded(data);
+                    var msg = text.get('@i18n:association.removed').replace('${count}', succeeded);
+                    IPA.notify_success(msg);
                 },
                 function() {
                     that.refresh();
diff --git a/install/ui/src/freeipa/ipa.js b/install/ui/src/freeipa/ipa.js
index 441a9052e9e73038ae7344f5cc042c64e6b44d94..a82d7c9704135e9633ebfbc12001e5834eeeaa73 100644
--- a/install/ui/src/freeipa/ipa.js
+++ b/install/ui/src/freeipa/ipa.js
@@ -1949,6 +1949,21 @@ IPA.notify_success = function(message, timeout) {
     }, timeout || IPA.config.message_timeout);
 };
 
+IPA.get_succeeded = function(data) {
+    var succeeded = data.result.completed;
+
+    if (!succeeded) {
+        succeeded = 0;
+        for (var i = 0; i< data.result.results.length; i++) {
+            if (data.result.results[i].completed === 1) {
+                succeeded++;
+            }
+        }
+    }
+
+    return succeeded;
+};
+
 IPA.config = {
     default_priority: 500,
     message_timeout: 3000, // [ms]
-- 
1.8.1.4

_______________________________________________
Freeipa-devel mailing list
Freeipa-devel@redhat.com
https://www.redhat.com/mailman/listinfo/freeipa-devel

Reply via email to