]> gitweb.fluxo.info Git - semanticscuttle.git/commitdiff
Bug fix: correct problem with mutual logins for several installations on the same...
authormensonge <mensonge@b3834d28-1941-0410-a4f8-b48e95affb8f>
Fri, 18 Apr 2008 09:57:32 +0000 (09:57 +0000)
committermensonge <mensonge@b3834d28-1941-0410-a4f8-b48e95affb8f>
Fri, 18 Apr 2008 09:57:32 +0000 (09:57 +0000)
git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@114 b3834d28-1941-0410-a4f8-b48e95affb8f

constants.inc.php [new file with mode: 0644]
header.inc.php
services/userservice.php

diff --git a/constants.inc.php b/constants.inc.php
new file mode 100644 (file)
index 0000000..e64db43
--- /dev/null
@@ -0,0 +1,14 @@
+<?php
+
+// Error codes
+define('GENERAL_MESSAGE', 200);
+define('GENERAL_ERROR', 202);
+define('CRITICAL_MESSAGE', 203);
+define('CRITICAL_ERROR', 204);
+
+// Miscellanous
+
+# INSTALLATION_ID is based on directory  path and used as prefix (in session and cookie) to prevent mutual login for different installations on the same host server
+define('INSTALLATION_ID', md5(dirname(realpath('.'))));
+
+?>
index 6b4e76b51c9006efdc024cf6d2548c36d7c0cf35..55defdb93b254768ff8ee1dc2b1799c440e6f020 100644 (file)
@@ -9,6 +9,7 @@ session_start();
 
 require_once(dirname(__FILE__) .'/services/servicefactory.php');
 require_once(dirname(__FILE__) .'/config.inc.php');
+require_once(dirname(__FILE__) .'/constants.inc.php');
 require_once(dirname(__FILE__) .'/functions.inc.php');
 
 // Determine the base URL
index c691b367d7b61fde5187c88bddbc2658822e3314..9e3adca0b8e2258410eb2f73b9f2eae8b605b0e0 100644 (file)
@@ -23,8 +23,8 @@ class UserService {
     function UserService(& $db) {
         $this->db =& $db;
         $this->tablename = $GLOBALS['tableprefix'] .'users';
-        $this->sessionkey = $GLOBALS['cookieprefix'] .'-currentuserid';
-        $this->cookiekey = $GLOBALS['cookieprefix'] .'-login';
+       $this->sessionkey = $GLOBALS['cookieprefix'].INSTALLATION_ID.'-currentuserid';
+       $this->cookiekey = $GLOBALS['cookieprefix'].INSTALLATION_ID.'-login';
         $this->profileurl = createURL('profile', '%2$s');
     }
 
@@ -145,8 +145,11 @@ class UserService {
 
     function getCurrentUserId() {
         if (isset($_SESSION[$this->getSessionKey()])) {
+//echo "session";die($_SESSION[$this->getSessionKey()]);
             return $_SESSION[$this->getSessionKey()];
         } else if (isset($_COOKIE[$this->getCookieKey()])) {
+//echo "cookie";die();
+
             $cook = split(':', $_COOKIE[$this->getCookieKey()]);
             //cookie looks like this: 'id:md5(username+password)'
             $query = 'SELECT * FROM '. $this->getTableName() .