[FIX/ENHANCE] Session management

@herrkauwer appreciate the code review and help
@xisi initial code pr
@add1ct3dd reporting the issue
This commit is contained in:
Neozonz 2014-01-23 16:52:29 -08:00
parent 207a8719fd
commit 2d607cca97

View File

@ -36,14 +36,15 @@ $master_template = 'master.tpl';
// Start a session
session_set_cookie_params(time()+$config['cookie']['duration'], $config['cookie']['path'], $config['cookie']['domain'], $config['cookie']['secure'], $config['cookie']['httponly']);
$session_start = @session_start();
if (!$session_start) {
session_regenerate_id(true);
session_start();
if (!@session_start()) {
$user->logoutUser();
if (!@session_regenerate_id(true)) {
$user->logoutUser();
}
if(!@setcookie(session_name(), session_id(), time()+$config['cookie']['duration'], $config['cookie']['path'], $config['cookie']['domain'], $config['cookie']['secure'], $config['cookie']['httponly'])) {
@setcookie(session_name(),session_id(), time()-$config['cookie']['duration'], $config['cookie']['path'], $config['cookie']['domain'], $config['cookie']['secure'], $config['cookie']['httponly']);
}
}
setcookie(session_name(),session_id(),time()+$config['cookie']['duration'], $config['cookie']['path'], $config['cookie']['domain'], $config['cookie']['secure'], $config['cookie']['httponly']);
$session_id = session_id();
// Load Classes, they name defines the $ variable used
// We include all needed files here, even though our templates could load them themself
require_once(INCLUDE_DIR . '/autoloader.inc.php');