Hi,
I have requriement where user should get alert or popup when his session is going to expire.He should warn before two minutes that his session is going to expire and if he does not respond he should be redirected to other page.Main requirement is his session time should start when he is idle or when there is no activity in the website.
But with code below confirm box for sesson expiration comes even when I am working on the page
private void CheckSessionTimeout()
{
string msgSession = 'Warning: Within next 3 minutes, if you do not do anything, '+
' our system will redirect to the login page. Please save changed data.';
int int_MilliSecondsTimeReminder = (this.Session.Timeout * 60000) - 3 * 60000;
int int_MilliSecondsTimeOut = (this.Session.Timeout * 60000) - 5;
string str_Script = @"
var myTimeReminder, myTimeOut;
clearTimeout(myTimeReminder);
clearTimeout(myTimeOut); " +
"var sessionTimeReminder = " +
int_MilliSecondsTimeReminder.ToString() + "; " +
"var sessionTimeout = " + int_MilliSecondsTimeOut.ToString() + ";" +
"function doReminder(){ alert('" + msgSession + "'); }" +
"function doRedirect(){ window.location.href='login.aspx'; }" + @"
myTimeReminder=setTimeout('doReminder()', sessionTimeReminder);
myTimeOut=setTimeout('doRedirect()', sessionTimeout); ";
ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(),
"CheckSessionOut", str_Script, true);
}
With above code confirm box comes even when I am working on the screen.My requirement is it should only show up if I am idle.