Source for file db.auth.php

Documentation is available at db.auth.php

  1. <?php
  2. /**
  3. @package    jelix
  4. @subpackage auth_driver
  5. @author     Laurent Jouanneau
  6. @copyright  2001-2005 CopixTeam, 2005-2011 Laurent Jouanneau
  7. *  This classe was get originally from an experimental branch of the Copix project (Copix 2.3dev, http://www.copix.org)
  8. *  Few lines of code are still copyrighted 2001-2005 CopixTeam (LGPL licence).
  9. *  Initial author of this Copix classe is Laurent Jouanneau, and this classe was adapted for Jelix by him
  10. @licence  http://www.gnu.org/licenses/lgpl.html GNU Lesser General Public Licence, see LICENCE file
  11. */
  12.  
  13.  
  14. /**
  15. * authentification driver for authentification information stored in a database
  16. @package    jelix
  17. @subpackage auth_driver
  18. */
  19. class dbAuthDriver extends jAuthDriverBase implements jIAuthDriver {
  20.  
  21.     function __construct($params{
  22.         parent::__construct($params);
  23.         if(!isset($this->_params['profile'])) {
  24.             if(isset($this->_params['profil']))
  25.                 //compatibility with 1.0
  26.                 $this->_params['profile'$this->_params['profil'];
  27.             else
  28.                 $this->_params['profile''';
  29.         }
  30.     }
  31.  
  32.     public function saveNewUser($user){
  33.         $dao jDao::get($this->_params['dao']$this->_params['profile']);
  34.         $dao->insert($user);
  35.         return true;
  36.     }
  37.  
  38.     public function removeUser($login){
  39.         $dao jDao::get($this->_params['dao']$this->_params['profile']);
  40.         $dao->deleteByLogin($login);
  41.         return true;
  42.     }
  43.  
  44.     public function updateUser($user){
  45.         $dao jDao::get($this->_params['dao']$this->_params['profile']);
  46.         $dao->update($user);
  47.         return true;
  48.     }
  49.  
  50.     public function getUser($login){
  51.         $dao jDao::get($this->_params['dao']$this->_params['profile']);
  52.         return $dao->getByLogin($login);
  53.     }
  54.  
  55.     public function createUserObject($login,$password){
  56.         $user jDao::createRecord($this->_params['dao']$this->_params['profile']);
  57.         $user->login $login;
  58.         $user->password $this->cryptPassword($password);
  59.         return $user;
  60.     }
  61.  
  62.     public function getUserList($pattern){
  63.         $dao jDao::get($this->_params['dao']$this->_params['profile']);
  64.         if($pattern == '%' || $pattern == ''){
  65.             return $dao->findAll();
  66.         }else{
  67.             return $dao->findByLogin($pattern);
  68.         }
  69.     }
  70.  
  71.     public function changePassword($login$newpassword){
  72.         $dao jDao::get($this->_params['dao']$this->_params['profile']);
  73.         return $dao->updatePassword($login$this->cryptPassword($newpassword));
  74.     }
  75.  
  76.     public function verifyPassword($login$password){
  77.         if (trim($password== '')
  78.             return false;
  79.         $daouser jDao::get($this->_params['dao']$this->_params['profile']);
  80.         $user $daouser->getByLogin($login);
  81.         if (!$user{
  82.             return false;
  83.         }
  84.  
  85.         $result $this->checkPassword($password$user->password);
  86.         if ($result === false)
  87.             return false;
  88.  
  89.         if ($result !== true{
  90.             // it is a new hash for the password, let's update it persistently
  91.             $user->password $result;
  92.             $daouser->updatePassword($login$result);
  93.         }
  94.  
  95.         return $user;
  96.     }
  97. }

Documentation generated on Mon, 26 Oct 2015 21:50:49 +0100 by phpDocumentor 1.4.3