Author: jonathan
Date: Thu Aug  7 15:47:28 2008
New Revision: 20558
URL: http://wso2.org/svn/browse/wso2?view=rev&revision=20558

Log:
MASHUP-1082: Fixed Ajax returns to indicate whether password change was 
successful or not.
Improved UI, e.g. error message text and styling, clearing fields on reentry or 
retry.  Minor code simplifications too.

Modified:
   branches/mashup/java/1.5/java/modules/www/ajax_profile.jsp
   branches/mashup/java/1.5/java/modules/www/user.jsp

Modified: branches/mashup/java/1.5/java/modules/www/ajax_profile.jsp
URL: 
http://wso2.org/svn/browse/wso2/branches/mashup/java/1.5/java/modules/www/ajax_profile.jsp?rev=20558&r1=20557&r2=20558&view=diff
==============================================================================
--- branches/mashup/java/1.5/java/modules/www/ajax_profile.jsp  (original)
+++ branches/mashup/java/1.5/java/modules/www/ajax_profile.jsp  Thu Aug  7 
15:47:28 2008
@@ -23,12 +23,13 @@
 <%@ page import="org.wso2.registry.users.UserRealm" %>
 <%@ page import="org.wso2.registry.users.UserStoreAdmin" %>
 <%@ page import="java.util.Map" %>
+<%@ page import="org.wso2.mashup.MashupFault" %>
 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
 
-<!--Required to keep a user logged in if 'Remember Me' option is selected-->
+<%--Required to keep a user logged in if 'Remember Me' option is selected--%>
 <%@ include file="validate_login.jsp" %>
 
-<%    
+<%
     boolean success = false;
     String usernameParam;
     String fieldParam;
@@ -58,7 +59,10 @@
                     success = true;
                 }
             } else if (fieldParam.equals(MashupConstants.PASSWORD)) {
-                RegistryUtils.changeUserPassword(userStoreAdmin, currentUser, 
value);
+                try {
+                    RegistryUtils.changeUserPassword(userStoreAdmin, 
currentUser, value);
+                    success = true;
+                } catch (MashupFault e) {}
             } else {
                 UserRealm realm = (UserRealm) 
request.getSession().getServletContext().
                         getAttribute(RegistryConstants.REGISTRY_REALM);

Modified: branches/mashup/java/1.5/java/modules/www/user.jsp
URL: 
http://wso2.org/svn/browse/wso2/branches/mashup/java/1.5/java/modules/www/user.jsp?rev=20558&r1=20557&r2=20558&view=diff
==============================================================================
--- branches/mashup/java/1.5/java/modules/www/user.jsp  (original)
+++ branches/mashup/java/1.5/java/modules/www/user.jsp  Thu Aug  7 15:47:28 2008
@@ -140,30 +140,33 @@
         }
 
         function showControls(field) {
+            $("passwordMessages_value").update('');
+            $("oldPassword_input_text").value = "";
+            $("newPassword_input_text").value = "";
+            $("newPasswordConf_input_text").value = "";
             $(field + "_input").show();
             $(field).hide();
-            $("passwordMessages_value").update('');
         }
 
-        function updatePassword(field, fieldtype, user) {
+        function updatePassword(field, user) {
             var oldPassword = $("oldPassword_input_text").value;
             var newPassword = $("newPassword_input_text").value;
             var newPasswordConf = $("newPasswordConf_input_text").value;
 
             if (newPassword != newPasswordConf) {
-                $("passwordMessages_value").update("New passwords do not 
match!");
+                $("passwordMessages_value").update("New passwords do not 
match.  Please enter them again.");
             } else if (newPassword.length < <%= 
MashupConstants.MIN_PASSWORD_LENGTH %>) {
                 $("passwordMessages_value").update("New password length must 
exceed <%=
                     MashupConstants.MIN_PASSWORD_LENGTH %> characters!");
             } else if (newPassword.indexOf("<%= 
MashupConstants.PASSWORD_SEPARATOR %>") > -1) {
-                $("passwordMessages_value").update("New password uses 
restricted string!");
+                $("passwordMessages_value").update("New password uses 
restricted string.  Please choose a different one.");
             } else if (user == "<%= MashupConstants.RESTRICTED_PASSWORD %>" && 
newPassword ==
                             "<%= MashupConstants.RESTRICTED_PASSWORD %>") {
-                $("passwordMessages_value").update("Password not allowed!");
+                $("passwordMessages_value").update("Restricted password.  
Please choose a different one.");
             } else {
                 var changeDetails = encodeURI(oldPassword) + "<%= 
MashupConstants.PASSWORD_SEPARATOR
                 %>" + encodeURI(newPassword);
-                new Ajax.Request("ajax_profile.jsp?name=" + user + "&field=" + 
fieldtype, {
+                new Ajax.Request("ajax_profile.jsp?name=" + user + 
"&field=password", {
                     method: "post",
                     contentType: "text/html",
                     postBody: changeDetails,
@@ -171,7 +174,14 @@
                         alert("Trouble contacting WSO2 Mashup Server ajax 
service.  Please try again later.");
                     },
                     onSuccess: function (transport) {
-                        cancelEditable(field);
+                        if (transport.responseText.indexOf("<failure/>") > 0) {
+                            $("passwordMessages_value").update("Password 
change unsuccessful.  Check that you entered the old password correctly.");
+                            $("oldPassword_input_text").value = "";
+                            $("newPassword_input_text").value = "";
+                            $("newPasswordConf_input_text").value = "";
+                        } else {
+                            cancelEditable(field);
+                        }
                     }
                 });
             }
@@ -314,7 +324,7 @@
             <% if 
(RegistryUtils.getCurrentUser(userRegistry).equals(memberName)) { %>
             <tr>
                 <td class="profile_label">
-                    <nobr>Password:</nobr>
+                    <nobr>password:</nobr>
                 </td>
                 <td>
                     <div class="profile_password">
@@ -325,19 +335,19 @@
                             <span id="editPassword_input" style="display:none">
                                 <table style="width: 95%;">
                                     <tr><td class="profile_label">
-                                Old Password: </td><td><input type="password" 
id="oldPassword_input_text">
+                                old: </td><td><input type="password" 
id="oldPassword_input_text">
                                      </td></tr>
                                     <tr><td class="profile_label">
-                                New Password: </td><td><input type="password" 
id="newPassword_input_text">
+                                new: </td><td><input type="password" 
id="newPassword_input_text">
                                          </td></tr>
                                     <tr><td class="profile_label">
-                                Confirmation: </td><td><input type="password" 
id="newPasswordConf_input_text">
+                                confirm&nbsp;new: </td><td><input 
type="password" id="newPasswordConf_input_text">
                                 </td></tr></table>
-                                <span id="passwordMessages_value"></span>
+                                <span id="passwordMessages_value" 
class="error"></span>
                                 <span class="edit-link">[<a href="#"
                                                             
onclick="cancelEditable('editPassword')">cancel</a>]</span>
                                 <span class="edit-link">[<a href="#"
-                                                            
onclick="updatePassword('editPassword', 'password', 
'<%=RegistryUtils.getCurrentUser(userRegistry)%>')">update</a>]</span>
+                                                            
onclick="updatePassword('editPassword', 
'<%=RegistryUtils.getCurrentUser(userRegistry)%>')">update</a>]</span>
                             </span>
                     </div>
                 </td>

_______________________________________________
Mashup-dev mailing list
[email protected]
http://mailman.wso2.org/cgi-bin/mailman/listinfo/mashup-dev

Reply via email to