Everybody gets a session.

This commit is contained in:
JT Smith 2002-11-30 17:09:09 +00:00
parent 4bd546b81d
commit 0e9531c0b5
2 changed files with 18 additions and 8 deletions

View file

@ -208,6 +208,13 @@ sub close {
$ENV{PATH_INFO} = "/"; #work around to fix a bug in mod_perl (win32)
}
#-------------------------------------------------------------------
sub convertVisitorToUser {
WebGUI::SQL->write("update userSession set userId=$_[1] where sessionId=".quote($_[0]));
$session{var}{userId} = $_[1];
refreshUserInfo($_[1]);
}
#-------------------------------------------------------------------
sub end {
WebGUI::SQL->write("delete from userSession where sessionId='$_[0]'",$session{dbh});
@ -319,7 +326,11 @@ sub open {
}
###----------------------------
### session variables
_setupSessionVars($session{cookie}{wgSession},$session{setting}{sessionTimeout});
if ($session{cookie}{wgSession} eq "") {
start(1); #setting up a visitor session
} else {
_setupSessionVars($session{cookie}{wgSession},$session{setting}{sessionTimeout});
}
###----------------------------
### current user's account and profile information (from users and userProfileData tables)
_setupUserInfo($session{var}{userId});
@ -403,8 +414,7 @@ sub start {
my ($sessionId);
$sessionId = _generateSessionId();
WebGUI::SQL->write("insert into userSession values ('$sessionId', ".
(time()+$session{setting}{sessionTimeout}).", ".
time().", 0, '$ENV{REMOTE_ADDR}', $_[0])",$session{dbh});
(time()+$session{setting}{sessionTimeout}).", ".time().", 0, '$ENV{REMOTE_ADDR}', $_[0])");
setCookie("wgSession",$sessionId);
refreshSessionVars($sessionId);
}