Author: tyrell
Date: Sat Mar 1 09:54:49 2008
New Revision: 14395
Log:
MASHUP-639
Modified:
trunk/mashup/java/modules/core/conf/server.xml
trunk/mashup/java/modules/www/signin.jsp
Modified: trunk/mashup/java/modules/core/conf/server.xml
==============================================================================
--- trunk/mashup/java/modules/core/conf/server.xml (original)
+++ trunk/mashup/java/modules/core/conf/server.xml Sat Mar 1 09:54:49 2008
@@ -176,8 +176,7 @@
<!--Used to configure session management attributes-->
<SessionManagement>
- <!--The time period (in days) to remember a user session, when one
selects 'Remember Me' in the UI.
- Setting to -1 means remember indefinetely.
+ <!--The time period (in days) to remember a user session, when one
selects 'Remember Me' in the UI.
-->
<RememberMePeriod>14</RememberMePeriod>
</SessionManagement>
Modified: trunk/mashup/java/modules/www/signin.jsp
==============================================================================
--- trunk/mashup/java/modules/www/signin.jsp (original)
+++ trunk/mashup/java/modules/www/signin.jsp Sat Mar 1 09:54:49 2008
@@ -80,6 +80,7 @@
String nameProvided = request.getParameter("userName");
String passwordProvided = request.getParameter("password");
String rememberMe = request.getParameter("rememberme");
+ String rememberMeForever = request.getParameter("remembermeforever");
if (firsttime != null) {
// Prevent login using default profiles.
@@ -94,7 +95,8 @@
JDBCRegistry jdbcRegistry = (JDBCRegistry)
context.getAttribute(
RegistryConstants.REGISTRY);
- UserRealm realm = (UserRealm)
context.getAttribute(RegistryConstants.REGISTRY_REALM);
+ UserRealm realm =
+ (UserRealm)
context.getAttribute(RegistryConstants.REGISTRY_REALM);
MashupUtils.login(nameProvided, passwordProvided,
session.getId());
SecureRegistry secureRegistry =
@@ -105,20 +107,26 @@
request.getSession()
.setAttribute(MashupConstants.USER_REGISTRY,
secureRegistry);
- ServerConfiguration serverConfig =
ServerConfiguration.getInstance();
- String rememberPeriod =
-
serverConfig.getFirstProperty(MashupConstants.SESSION_MANAGEMENT + "." +
- MashupConstants.REMEMBER_ME_PERIOD);
- if (rememberPeriod != null) {
- int numDays = 0;
- try {
- numDays = Integer.parseInt(rememberPeriod);
- } catch (NumberFormatException e) {
- }
- int expireIn = 60 * 60 * 24 * numDays;
+ //Checking whether the user has opted to remember the
session
+ if (rememberMe.equalsIgnoreCase("true")) {
+
+ ServerConfiguration serverConfig =
ServerConfiguration.getInstance();
+ String rememberPeriod =
+ serverConfig
+
.getFirstProperty(MashupConstants.SESSION_MANAGEMENT + "." +
+
MashupConstants.REMEMBER_ME_PERIOD);
+ if (rememberPeriod != null) {
+ int numDays = 0;
+ try {
+ numDays = Integer.parseInt(rememberPeriod);
+ } catch (NumberFormatException e) {
+ }
+ int expireIn = 60 * 60 * 24 * numDays;
+ int longerExpDays = 60 * 60 * 24 * 365 * 2; //2
years
+ if((rememberMeForever.equalsIgnoreCase("true")) &&
(numDays <= longerExpDays)){
+ expireIn = longerExpDays;
+ }
- //Checking whether the user has opted to remember the
session
- if (rememberMe.equalsIgnoreCase("true")) {
//Saving the remember me option
Cookie rememberMeCookie = new Cookie("rememberMe",
rememberMe);
rememberMeCookie.setMaxAge(expireIn);
@@ -173,6 +181,22 @@
remMe.value = "true";
} else {
remMe.value = "false";
+ document.getElementById("chkRememberForever").checked = false;
+ document.getElementById("remembermeforever").value = false;
+ }
+ }
+
+ function setRememberMeForever() {
+ document.getElementById("chkRemember").checked = true;
+ document.getElementById("rememberme").value = true;
+
+ var val = document.getElementById("chkRememberForever").checked;
+ var remMeForever = document.getElementById("remembermeforever");
+
+ if (val) {
+ remMeForever.value = "true";
+ } else {
+ remMeForever.value = "false";
}
}
@@ -192,17 +216,23 @@
<input type="hidden" name="firsttime" value="false"/>
<input type="hidden" name="bounceback"
value="<%=bounceback%>"/>
<input type="hidden" id="rememberme" name="rememberme"
value="false"/>
+ <input type="hidden" id="remembermeforever"
name="remembermeforever"
+ value="false"/>
<br/>
<table width="675" border="0" cellpadding="3"
cellspacing="0"
class="box" align="center">
<tr>
- <th>Sign-in to <%=
bundle.getString("main.title")%></th>
- <th width="50%">Use InfoCard to enter <%=
bundle.getString("main.title")%></th>
+ <th>Sign-in to <%=
bundle.getString("main.title")%>
+ </th>
+ <th width="50%">Use InfoCard to enter <%=
bundle
+ .getString("main.title")%>
+ </th>
</tr>
<tr>
<td height="175">
<% if (!success) { %>
- <div class="error">Invalid user or
password. Please try again.</div>
+ <div class="error">Invalid user or
password. Please try again.
+ </div>
<% } %>
<label style="margin-right:2px;
"><strong>User
Name:</strong></label><input
@@ -222,6 +252,32 @@
onclick="setRememberMe();"><label
style="text-align: left; ">
Remember me on this
computer</label><br><br></div>
+ <%
+ ServerConfiguration serverConfig =
+
ServerConfiguration.getInstance();
+ String rememberPeriod =
serverConfig.getFirstProperty(
+
MashupConstants.SESSION_MANAGEMENT + "." +
+
MashupConstants.REMEMBER_ME_PERIOD);
+ int numDays = 0;
+ int longerExpDays = 60 * 60 * 24 * 365
* 2; //2 years
+ try {
+ numDays =
Integer.parseInt(rememberPeriod);
+ } catch (NumberFormatException e) {
+ }
+ if
((MashupUtils.isFromLocalHost(request)) &&
+ (numDays <= longerExpDays)) {
+ %>
+ <div style="width:100%;"><input
+ type="checkbox"
id="chkRememberForever"
+
onclick="setRememberMeForever();"><label
+ style="text-align: left; ">
+ If you chose to remember your login
information, it will be
+ stored for <%=numDays%> days. However,
since you are signing
+ in from local host, you can choose to
remember your login
+ indefinetely by checking this box.
</label><br><br></div>
+ <%
+ }
+ %>
<div><input
type="submit"
id="signin"
@@ -242,10 +298,11 @@
</tr>
<tr>
<td>
- <a
href="reset_password.jsp?firstcall=true&bounceback=<%=URLEncoder.encode(bounceback,"UTF-8")%>">Forgot
Password?</a>
+ <a
href="reset_password.jsp?firstcall=true&bounceback=<%=URLEncoder.encode(bounceback,"UTF-8")%>">Forgot
+ Password?</a>
</td>
</tr>
- </table>
+ </table>
<br/>
<br/>
</form>
_______________________________________________
Mashup-dev mailing list
[email protected]
http://www.wso2.org/cgi-bin/mailman/listinfo/mashup-dev