Yep. On Oct 31, 2007, at 5:32 AM, Jacques Le Roux wrote:
Hi Andy, Just for my information, it is intended to add an UI later ? JacquesAuthor: jaz Date: Tue Oct 30 21:33:50 2007 New Revision: 590554 URL: http://svn.apache.org/viewvc?rev=590554&view=rev Log:added code which uses "rememberMe" parameter to store a cookie with the user's login IDModified:ofbiz/trunk/applications/securityext/src/org/ofbiz/securityext/ login/LoginEvents.javaModified: ofbiz/trunk/applications/securityext/src/org/ofbiz/ securityext/login/LoginEvents.javaURL:http://svn.apache.org/viewvc/ofbiz/trunk/applications/securityext/src/org/ofbiz/securityext/login/LoginEvents.java?rev=590554&r1=590553&r2=590554&view=diff= = = = = = = = = ===================================================================== --- ofbiz/trunk/applications/securityext/src/org/ofbiz/securityext/ login/LoginEvents.java (original) +++ ofbiz/trunk/applications/securityext/src/org/ofbiz/securityext/ login/LoginEvents.java Tue Oct 30 21:33:50 2007@@ -22,6 +22,7 @@ import java.util.Iterator; import java.util.Map; +import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; @@ -53,6 +54,7 @@ public static final String module = LoginEvents.class.getName(); public static final String resource = "SecurityextUiLabels";+ public static final String usernameCookieName = "OFBiz.Username";/*** Save USERNAME and PASSWORD for use by auth pages even if we start in non-auth pages.@@ -342,7 +344,41 @@ if (!"success".equals(responseString)) { return responseString; } + if ("Y".equals(request.getParameter("rememberMe"))) { + setUsername(request, response); + } // if we logged in okay, do the check store customer rolereturn ProductEvents.checkStoreCustomerRole(request, response);} -} + + public static String getUsername(HttpServletRequest request) { + String cookieUsername = null; + Cookie[] cookies = request.getCookies();+ if (Debug.verboseOn()) Debug.logVerbose("Cookies:" + cookies, module);+ if (cookies != null) { + for (int i = 0; i < cookies.length; i++) {+ if (cookies[i].getName().equals(usernameCookieName)) {+ cookieUsername = cookies[i].getValue(); + break; + } + } + } + return cookieUsername; + } ++ public static void setUsername(HttpServletRequest request, HttpServletResponse response) {+ HttpSession session = request.getSession();+ String domain = UtilProperties.getPropertyValue("url.properties", "cookie.domain");+ // first try to get the username from the cookie + synchronized (session) { + if (UtilValidate.isEmpty(getUsername(request))) { + // create the cookie and send it back+ Cookie cookie = new Cookie(usernameCookieName, request.getParameter("USERNAME"));+ cookie.setMaxAge(60 * 60 * 24 * 365); + cookie.setPath("/"); + cookie.setDomain(domain); + response.addCookie(cookie); + } + } + } +} \ No newline at end of file
smime.p7s
Description: S/MIME cryptographic signature
