From 5b92e3a2d72a7a63f43560f0719505d23c2c9670 Mon Sep 17 00:00:00 2001 From: Elaine Tan Date: Wed, 3 Oct 2012 12:33:03 +0800 Subject: [PATCH] IDEMPIERE-373 Implement User Locking - fix locking error message when involving multi-clients user --- org.adempiere.base/src/org/compiere/util/Login.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/org.adempiere.base/src/org/compiere/util/Login.java b/org.adempiere.base/src/org/compiere/util/Login.java index 43145f803e..8f6d76db09 100644 --- a/org.adempiere.base/src/org/compiere/util/Login.java +++ b/org.adempiere.base/src/org/compiere/util/Login.java @@ -1372,6 +1372,7 @@ public class Login } } + boolean validButLocked = false; for (MUser user : users) { if (clientsValidated.contains(user.getAD_Client_ID())) { log.severe("Two users with password with the same name/email combination on same tenant: " + app_user); @@ -1387,7 +1388,10 @@ public class Login } if (valid ) { if (user.isLocked()) + { + validButLocked = true; continue; + } if (user.isExpired()) isPasswordExpired = true; @@ -1462,7 +1466,12 @@ public class Login log.severe("Failed to update user record with date last login"); } } - else + else if (validButLocked) + { + // User account ({0}) is locked, please contact the system administrator + loginErrMsg = Msg.getMsg(m_ctx, "UserAccountLocked", new Object[] {app_user}); + } + else { boolean foundLockedAccount = false; for (MUser user : users)