[gatein-commits] gatein SVN: r1307 - portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/account.

do-not-reply at jboss.org do-not-reply at jboss.org
Thu Jan 14 22:41:05 EST 2010


Author: truong.le
Date: 2010-01-14 22:41:05 -0500 (Thu, 14 Jan 2010)
New Revision: 1307

Modified:
   portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/account/UIAccountProfiles.java
Log:
GTNPORTAL-246: Error occur when changing an existing email
Fixed in account setting as well.

Modified: portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/account/UIAccountProfiles.java
===================================================================
--- portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/account/UIAccountProfiles.java	2010-01-15 01:49:36 UTC (rev 1306)
+++ portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/account/UIAccountProfiles.java	2010-01-15 03:41:05 UTC (rev 1307)
@@ -22,6 +22,7 @@
 import org.exoplatform.portal.pom.config.Utils;
 import org.exoplatform.portal.webui.util.Util;
 import org.exoplatform.services.organization.OrganizationService;
+import org.exoplatform.services.organization.Query;
 import org.exoplatform.services.organization.User;
 import org.exoplatform.web.application.ApplicationMessage;
 import org.exoplatform.webui.application.WebuiRequestContext;
@@ -101,9 +102,23 @@
 
          String userName = uiForm.getUIStringInput("userName").getValue();
          User user = service.getUserHandler().findUserByName(userName);
+         String oldEmail = user.getEmail();
+         String newEmail = uiForm.getUIStringInput("email").getValue();
+         
+         // Check if mail address is already used
+         Query query = new Query();
+         query.setEmail(newEmail);
+         if (service.getUserHandler().findUsers(query).getAll().size() > 0 && !oldEmail.equals(newEmail))
+         {
+            //Be sure it keep old value
+            user.setEmail(oldEmail);
+            Object[] args = {userName};
+            uiApp.addMessage(new ApplicationMessage("UIAccountInputSet.msg.email-exist", args));
+            return;
+         }
          user.setFirstName(uiForm.getUIStringInput("firstName").getValue());
          user.setLastName(uiForm.getUIStringInput("lastName").getValue());
-         user.setEmail(uiForm.getUIStringInput("email").getValue());
+         user.setEmail(newEmail);
          uiApp.addMessage(new ApplicationMessage("UIAccountProfiles.msg.update.success", null));
          service.getUserHandler().saveUser(user, true);
          return;



More information about the gatein-commits mailing list