The dialog box for resetting user password has been modified to use
the standard layout.

--
Endi S. Dewata
From d1c3958f1f0e5a2b5cdc3a45e03bcf5c009a2268 Mon Sep 17 00:00:00 2001
From: Endi S. Dewata <edew...@redhat.com>
Date: Wed, 10 Aug 2011 22:47:39 -0500
Subject: [PATCH] Removed custom layout for password reset.

The dialog box for resetting user password has been modified to use
the standard layout.
---
 install/ui/user.js |   94 +++++++++++++++++++++++++--------------------------
 1 files changed, 46 insertions(+), 48 deletions(-)

diff --git a/install/ui/user.js b/install/ui/user.js
index 7247035dbd8e0a2e798cfbf0670f0a084a30d7a3..58d33cdba39606054a108d895117ee0f60523ed4 100644
--- a/install/ui/user.js
+++ b/install/ui/user.js
@@ -310,68 +310,43 @@ IPA.user_password_widget = function(spec) {
             width: 400
         });
 
-        dialog.create = function() {
-
-            var dl = $('<dl/>', {
-                'class': 'modal'
-            }).appendTo(dialog.container);
-
-            $('<dt/>', {
-                html: IPA.messages.objects.user.new_password
-            }).appendTo(dl);
-
-            var dd = $('<dd/>').appendTo(dl);
-
-            dialog.password1 = $('<input/>', {
-                type: 'password'
-            }).appendTo(dd);
-
-            $('<dt/>', {
-                html: IPA.messages.objects.user.repeat_password
-            }).appendTo(dl);
-
-            dd = $('<dd/>').appendTo(dl);
-
-            dialog.password2 = $('<input/>', {
-                type: 'password'
-            }).appendTo(dd);
-        };
+        var password1 = dialog.add_field(IPA.text_widget({
+            name: 'password1',
+            label: IPA.messages.objects.user.new_password,
+            type: 'password',
+            undo: false
+        }));
+
+        var password2 = dialog.add_field(IPA.text_widget({
+            name: 'password2',
+            label: IPA.messages.objects.user.repeat_password,
+            type: 'password',
+            undo: false
+        }));
 
         dialog.add_button(IPA.messages.objects.user.reset_password, function() {
 
-            var new_password = dialog.password1.val();
-            var repeat_password = dialog.password2.val();
+            var record = {};
+            dialog.save(record);
+
+            var new_password = record.password1;
+            var repeat_password = record.password2;
 
             if (new_password != repeat_password) {
                 alert(IPA.messages.objects.user.password_must_match);
                 return;
             }
 
-            var user_pkey = IPA.nav.get_state('user-pkey');
-
-            var args;
-            if (user_pkey === IPA.whoami.uid[0]) {
-                args = [];
-            } else {
-                args = [user_pkey];
-            }
-
-            var command = IPA.command({
-                method: 'passwd',
-                args: args,
-                options: {
-                    password: new_password
-                },
-                on_success: function(data, text_status, xhr) {
+            that.set_password(
+                new_password,
+                function(data, text_status, xhr) {
                     alert(IPA.messages.objects.user.password_change_complete);
                     dialog.close();
                 },
-                on_error: function(xhr, text_status, error_thrown) {
+                function(xhr, text_status, error_thrown) {
                     dialog.close();
                 }
-            });
-
-            command.execute();
+            );
         });
 
         dialog.add_button(IPA.messages.buttons.cancel, function() {
@@ -381,5 +356,28 @@ IPA.user_password_widget = function(spec) {
         dialog.open(that.container);
     };
 
+    that.set_password = function(password, on_success, on_error) {
+        var user_pkey = IPA.nav.get_state('user-pkey');
+
+        var args;
+        if (user_pkey === IPA.whoami.uid[0]) {
+            args = [];
+        } else {
+            args = [user_pkey];
+        }
+
+        var command = IPA.command({
+            method: 'passwd',
+            args: args,
+            options: {
+                password: password
+            },
+            on_success: on_success,
+            on_error: on_error
+        });
+
+        command.execute();
+    };
+
     return that;
 };
-- 
1.7.5.1

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

Reply via email to