From e903608001dda875364d3e5f871adc79ffca4be4 Mon Sep 17 00:00:00 2001 From: xevidos Date: Tue, 24 Jul 2018 09:39:12 -0400 Subject: [PATCH 1/2] Fixes issue where collaborative sessions would get deleted when checking for duplicate sessions. --- components/user/class.user.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/components/user/class.user.php b/components/user/class.user.php index 92a0be3..9f48b6d 100755 --- a/components/user/class.user.php +++ b/components/user/class.user.php @@ -112,8 +112,9 @@ class User session_id( $session ); session_start(); //echo var_dump( $_SESSION ) . "\n\n"; - - if ( ( isset( $_SESSION["user"] ) && $_SESSION["user"] == $username ) || empty( $_SESSION ) ) { + $_SESSION['lang'] = $this->lang; + $_SESSION['theme'] = $this->theme; + if ( ( isset( $_SESSION["user"] ) && $_SESSION["user"] == $username && ( isset( $_SESSION['lang'] ) && isset( $_SESSION['theme'] ) ) ) || empty( $_SESSION ) ) { session_unset(); session_destroy(); From 6da112e8a9e0a4259c76a3a31c22aa30af1b4a96 Mon Sep 17 00:00:00 2001 From: xevidos Date: Tue, 24 Jul 2018 09:45:36 -0400 Subject: [PATCH 2/2] Added extra check to session delete. --- components/user/class.user.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/components/user/class.user.php b/components/user/class.user.php index 9f48b6d..5d940c2 100755 --- a/components/user/class.user.php +++ b/components/user/class.user.php @@ -57,6 +57,7 @@ class User $_SESSION['user'] = $this->username; $_SESSION['lang'] = $this->lang; $_SESSION['theme'] = $this->theme; + $_SESSION['login_session'] = true; if ($user['project']!='') { $_SESSION['project'] = $user['project']; } @@ -114,7 +115,7 @@ class User //echo var_dump( $_SESSION ) . "\n\n"; $_SESSION['lang'] = $this->lang; $_SESSION['theme'] = $this->theme; - if ( ( isset( $_SESSION["user"] ) && $_SESSION["user"] == $username && ( isset( $_SESSION['lang'] ) && isset( $_SESSION['theme'] ) ) ) || empty( $_SESSION ) ) { + if ( ( isset( $_SESSION["user"] ) && $_SESSION["user"] == $username && ( isset( $_SESSION['lang'] ) && isset( $_SESSION['theme'] ) ) && isset( $_SESSION['login_session'] ) && $_SESSION['login_session'] == true ) || empty( $_SESSION ) ) { session_unset(); session_destroy();