Changeset 492

Show
Ignore:
Timestamp:
07/05/07 15:46:04 (2 years ago)
Author:
laurentj
Message:

enhancement #207 : the session variable name is now configurable in the auth plugin, to have multiple authentification in a same application. p=Frédéric Guillot

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/lib/jelix-modules/jauth/install/var/config/auth.coord.ini.php

    r485 r492  
    99 
    1010;============ Paramètres pour le plugin 
     11; nom de la session 
     12session_name = "JELIX_USER" 
     13 
    1114; indique si on effectue un contrôle sur l'adresse ip 
    1215; qui a démarré la session. 
  • trunk/lib/jelix-modules/jauth/install/var/config/auth.coord.ini.php

    r485 r492  
    99 
    1010;============ Paramètres pour le plugin 
     11; nom de la session 
     12session_name = "JELIX_USER" 
     13 
    1114; indique si on effectue un contrôle sur l'adresse ip 
    1215; qui a démarré la session. 
  • trunk/lib/jelix/auth/jAuth.class.php

    r484 r492  
    44* @subpackage auth 
    55* @author     Laurent Jouanneau 
    6 * @contributor 
    7 * @copyright  2001-2005 CopixTeam, 2005-2007 Laurent Jouanneau 
     6* @contributor Frédéric Guillot 
     7* @copyright  2001-2005 CopixTeam, 2005-2007 Laurent Jouanneau, 2007 Frédéric Guillot 
    88* Classe orginellement issue d'une branche experimentale du 
    99* framework Copix 2.3dev. http://www.copix.org (jAuth) 
     
    112112            } 
    113113            $config = & $plugin->config; 
     114 
     115            if (!isset($config['session_name']) 
     116                || $config['session_name'] == ''){ 
     117                 
     118                $config['session_name'] = 'JELIX_USER'; 
     119            } 
    114120        } 
    115121        return $config; 
     
    281287 
    282288        $dr = self::_getDriver(); 
     289        $config = self::_getConfig(); 
     290 
    283291        if($user = $dr->verifyPassword($login, $password)){ 
    284292 
     
    290298            } 
    291299 
    292             $_SESSION['JELIX_USER'] = $user; 
     300            $_SESSION[$config['session_name']] = $user; 
    293301            jEvent::notify ('AuthLogin', array('login'=>$login)); 
    294302            return true; 
     
    301309     */ 
    302310    public static function logout(){ 
    303         jEvent::notify ('AuthLogout', array('login'=>$_SESSION['JELIX_USER']->login)); 
    304         $_SESSION['JELIX_USER'] = new jDummyAuthUser(); 
     311 
     312        $config = self::_getConfig(); 
     313        jEvent::notify ('AuthLogout', array('login'=>$_SESSION[$config['session_name']]->login)); 
     314        $_SESSION[$config['session_name']] = new jDummyAuthUser(); 
    305315        jAcl::clearCache(); 
    306316    } 
     
    311321     */ 
    312322    public static function isConnected(){ 
    313         return (isset($_SESSION['JELIX_USER']) && $_SESSION['JELIX_USER']->login != ''); 
     323 
     324        $config = self::_getConfig(); 
     325        return (isset($_SESSION[$config['session_name']]) && $_SESSION[$config['session_name']]->login != ''); 
    314326    } 
    315327 
     
    319331    */ 
    320332    public static function getUserSession (){ 
    321       if (! isset ($_SESSION['JELIX_USER'])){ 
    322             $_SESSION['JELIX_USER'] = new jDummyAuthUser(); 
    323       } 
    324       return $_SESSION['JELIX_USER']; 
     333        $config = self::_getConfig(); 
     334        if (! isset ($_SESSION[$config['session_name']])){ 
     335            $_SESSION[$config['session_name']] = new jDummyAuthUser(); 
     336        } 
     337        return $_SESSION[$config['session_name']]; 
    325338    } 
    326339 
  • trunk/lib/jelix/auth/jAuth.class.php

    r484 r492  
    44* @subpackage auth 
    55* @author     Laurent Jouanneau 
    6 * @contributor 
    7 * @copyright  2001-2005 CopixTeam, 2005-2007 Laurent Jouanneau 
     6* @contributor Frédéric Guillot 
     7* @copyright  2001-2005 CopixTeam, 2005-2007 Laurent Jouanneau, 2007 Frédéric Guillot 
    88* Classe orginellement issue d'une branche experimentale du 
    99* framework Copix 2.3dev. http://www.copix.org (jAuth) 
     
    112112            } 
    113113            $config = & $plugin->config; 
     114 
     115            if (!isset($config['session_name']) 
     116                || $config['session_name'] == ''){ 
     117                 
     118                $config['session_name'] = 'JELIX_USER'; 
     119            } 
    114120        } 
    115121        return $config; 
     
    281287 
    282288        $dr = self::_getDriver(); 
     289        $config = self::_getConfig(); 
     290 
    283291        if($user = $dr->verifyPassword($login, $password)){ 
    284292 
     
    290298            } 
    291299 
    292             $_SESSION['JELIX_USER'] = $user; 
     300            $_SESSION[$config['session_name']] = $user; 
    293301            jEvent::notify ('AuthLogin', array('login'=>$login)); 
    294302            return true; 
     
    301309     */ 
    302310    public static function logout(){ 
    303         jEvent::notify ('AuthLogout', array('login'=>$_SESSION['JELIX_USER']->login)); 
    304         $_SESSION['JELIX_USER'] = new jDummyAuthUser(); 
     311 
     312        $config = self::_getConfig(); 
     313        jEvent::notify ('AuthLogout', array('login'=>$_SESSION[$config['session_name']]->login)); 
     314        $_SESSION[$config['session_name']] = new jDummyAuthUser(); 
    305315        jAcl::clearCache(); 
    306316    } 
     
    311321     */ 
    312322    public static function isConnected(){ 
    313         return (isset($_SESSION['JELIX_USER']) && $_SESSION['JELIX_USER']->login != ''); 
     323 
     324        $config = self::_getConfig(); 
     325        return (isset($_SESSION[$config['session_name']]) && $_SESSION[$config['session_name']]->login != ''); 
    314326    } 
    315327 
     
    319331    */ 
    320332    public static function getUserSession (){ 
    321       if (! isset ($_SESSION['JELIX_USER'])){ 
    322             $_SESSION['JELIX_USER'] = new jDummyAuthUser(); 
    323       } 
    324       return $_SESSION['JELIX_USER']; 
     333        $config = self::_getConfig(); 
     334        if (! isset ($_SESSION[$config['session_name']])){ 
     335            $_SESSION[$config['session_name']] = new jDummyAuthUser(); 
     336        } 
     337        return $_SESSION[$config['session_name']]; 
    325338    } 
    326339 
  • trunk/lib/jelix/CREDITS

    r448 r492  
    4646 - patch sur la connexion postgresql (#123) 
    4747 
     48Frédéric Guillot (aka fg) 
     49 - patch pour authentification multiple dans une même session (#207) 
     50 
    4851Cedric 
    4952 - patch correctif sur jFile::read 
  • trunk/lib/jelix/CREDITS

    r448 r492  
    4646 - patch sur la connexion postgresql (#123) 
    4747 
     48Frédéric Guillot (aka fg) 
     49 - patch pour authentification multiple dans une même session (#207) 
     50 
    4851Cedric 
    4952 - patch correctif sur jFile::read 
  • trunk/lib/jelix/plugins/coord/auth/auth.coord.ini.php.dist

    r480 r492  
    99 
    1010;============ Paramètres pour le plugin 
     11; nom de la session 
     12session_name = "JELIX_USER" 
     13 
    1114; indique si on effectue un contrôle sur l'adresse ip 
    1215; qui a démarré la session. 
  • trunk/lib/jelix/plugins/coord/auth/auth.coord.ini.php.dist

    r480 r492  
    99 
    1010;============ Paramètres pour le plugin 
     11; nom de la session 
     12session_name = "JELIX_USER" 
     13 
    1114; indique si on effectue un contrôle sur l'adresse ip 
    1215; qui a démarré la session. 
  • trunk/lib/jelix/plugins/coord/auth/auth.coord.php

    r482 r492  
    44* @subpackage coord_plugin 
    55* @author     Croes Gérald 
    6 * @contributor  Laurent Jouanneau 
    7 * @copyright  2001-2005 CopixTeam, 2005-2006 Laurent Jouanneau 
     6* @contributor  Laurent Jouanneau, Frédéric Guillot 
     7* @copyright  2001-2005 CopixTeam, 2005-2006 Laurent Jouanneau, 2007 Frédéric Guillot 
    88* Une partie du code est issue d'une version experimentale de la classe 
    99* PluginAuth issue du framework Copix 2.3dev20050901. 
     
    2727    function __construct($conf){ 
    2828        $this->config = $conf; 
     29 
     30        if (!isset($this->config['session_name']) 
     31            || $this->config['session_name'] == ''){ 
     32                 
     33            $this->config['session_name'] = 'JELIX_USER'; 
     34        } 
    2935    } 
    3036 
     
    5157            } 
    5258        } 
    53  
     59         
    5460        //Creating the user's object if needed 
    55         if (! isset ($_SESSION['JELIX_USER'])){ 
     61        if (! isset ($_SESSION[$this->config['session_name']])){ 
    5662            $notLogged = true; 
    57             $_SESSION['JELIX_USER'] = new jDummyAuthUser(); 
     63            $_SESSION[$this->config['session_name']] = new jDummyAuthUser(); 
    5864        }else{ 
    5965            $notLogged = ! jAuth::isConnected(); 
  • trunk/lib/jelix/plugins/coord/auth/auth.coord.php

    r482 r492  
    44* @subpackage coord_plugin 
    55* @author     Croes Gérald 
    6 * @contributor  Laurent Jouanneau 
    7 * @copyright  2001-2005 CopixTeam, 2005-2006 Laurent Jouanneau 
     6* @contributor  Laurent Jouanneau, Frédéric Guillot 
     7* @copyright  2001-2005 CopixTeam, 2005-2006 Laurent Jouanneau, 2007 Frédéric Guillot 
    88* Une partie du code est issue d'une version experimentale de la classe 
    99* PluginAuth issue du framework Copix 2.3dev20050901. 
     
    2727    function __construct($conf){ 
    2828        $this->config = $conf; 
     29 
     30        if (!isset($this->config['session_name']) 
     31            || $this->config['session_name'] == ''){ 
     32                 
     33            $this->config['session_name'] = 'JELIX_USER'; 
     34        } 
    2935    } 
    3036 
     
    5157            } 
    5258        } 
    53  
     59         
    5460        //Creating the user's object if needed 
    55         if (! isset ($_SESSION['JELIX_USER'])){ 
     61        if (! isset ($_SESSION[$this->config['session_name']])){ 
    5662            $notLogged = true; 
    57             $_SESSION['JELIX_USER'] = new jDummyAuthUser(); 
     63            $_SESSION[$this->config['session_name']] = new jDummyAuthUser(); 
    5864        }else{ 
    5965            $notLogged = ! jAuth::isConnected(); 
Download in other formats: Unified Diff Zip Archive