1*a4ff4e44SJiri Dorazil<?php 2*a4ff4e44SJiri Dorazil 3*a4ff4e44SJiri Dorazil/** 4*a4ff4e44SJiri Dorazil * DokuWiki Plugin skautis (Auth Component) 5*a4ff4e44SJiri Dorazil * 6*a4ff4e44SJiri Dorazil * @license GPL 2 http://www.gnu.org/licenses/gpl-2.0.html 7*a4ff4e44SJiri Dorazil * @author Jiri Dorazil <alex@skaut.cz> 8*a4ff4e44SJiri Dorazil */ 9*a4ff4e44SJiri Dorazil 10*a4ff4e44SJiri Dorazil// must be run within Dokuwiki 11*a4ff4e44SJiri Dorazilif(!defined('DOKU_INC')) die(); 12*a4ff4e44SJiri Dorazildefine('SKAUTIS_LIBS_DIR', dirname(__FILE__).'/libs/'); 13*a4ff4e44SJiri Dorazilrequire_once SKAUTIS_LIBS_DIR. 'skautis-minify.php'; 14*a4ff4e44SJiri Dorazil 15*a4ff4e44SJiri Dorazilglobal $conf; 16*a4ff4e44SJiri Dorazil 17*a4ff4e44SJiri Dorazilclass auth_plugin_authskautis extends auth_plugin_authplain { 18*a4ff4e44SJiri Dorazil 19*a4ff4e44SJiri Dorazil 20*a4ff4e44SJiri Dorazil /** 21*a4ff4e44SJiri Dorazil * Constructor. 22*a4ff4e44SJiri Dorazil */ 23*a4ff4e44SJiri Dorazil /*public function __construct() { 24*a4ff4e44SJiri Dorazil global $config_cascade; 25*a4ff4e44SJiri Dorazil parent::__construct(); // for compatibility 26*a4ff4e44SJiri Dorazil 27*a4ff4e44SJiri Dorazil // FIXME intialize your auth system and set success to true, if successful 28*a4ff4e44SJiri Dorazil $this->success = true; 29*a4ff4e44SJiri Dorazil // FIXME set capabilities accordingly 30*a4ff4e44SJiri Dorazil /*$this->cando['addUser'] = false; // can Users be created? 31*a4ff4e44SJiri Dorazil $this->cando['delUser'] = false; // can Users be deleted? 32*a4ff4e44SJiri Dorazil $this->cando['modLogin'] = false; // can login names be changed? 33*a4ff4e44SJiri Dorazil $this->cando['modPass'] = false; // can passwords be changed? 34*a4ff4e44SJiri Dorazil $this->cando['modName'] = false; // can real names be changed? 35*a4ff4e44SJiri Dorazil $this->cando['modMail'] = false; // can emails be changed? 36*a4ff4e44SJiri Dorazil $this->cando['modGroups'] = false; // can groups be changed? 37*a4ff4e44SJiri Dorazil $this->cando['getUsers'] = false; // can a (filtered) list of users be retrieved? 38*a4ff4e44SJiri Dorazil $this->cando['getUserCount']= false; // can the number of users be retrieved? 39*a4ff4e44SJiri Dorazil $this->cando['getGroups'] = false; // can a list of available groups be retrieved?*/ 40*a4ff4e44SJiri Dorazil // $this->cando['external'] = true; // does the module do external auth checking? 41*a4ff4e44SJiri Dorazil // $this->cando['logout'] = true; // can the user logout again? (eg. not possible with HTTP auth) 42*a4ff4e44SJiri Dorazil 43*a4ff4e44SJiri Dorazil // } 44*a4ff4e44SJiri Dorazil 45*a4ff4e44SJiri Dorazil 46*a4ff4e44SJiri Dorazil /** 47*a4ff4e44SJiri Dorazil * Log off the current user [ OPTIONAL ] 48*a4ff4e44SJiri Dorazil */ 49*a4ff4e44SJiri Dorazil //public function logOff() { 50*a4ff4e44SJiri Dorazil //} 51*a4ff4e44SJiri Dorazil 52*a4ff4e44SJiri Dorazil /** 53*a4ff4e44SJiri Dorazil * Do all authentication [ OPTIONAL ] 54*a4ff4e44SJiri Dorazil * 55*a4ff4e44SJiri Dorazil * @param string $user Username 56*a4ff4e44SJiri Dorazil * @param string $pass Cleartext Password 57*a4ff4e44SJiri Dorazil * @param bool $sticky Cookie should not expire 58*a4ff4e44SJiri Dorazil * @return bool true on successful auth 59*a4ff4e44SJiri Dorazil */ 60*a4ff4e44SJiri Dorazil /*public function trustExternal($user, $pass, $sticky = false) { 61*a4ff4e44SJiri Dorazil /* some example: 62*a4ff4e44SJiri Dorazil 63*a4ff4e44SJiri Dorazil global $USERINFO; 64*a4ff4e44SJiri Dorazil global $conf; 65*a4ff4e44SJiri Dorazil //$sticky ? $sticky = true : $sticky = false; //sanity check 66*a4ff4e44SJiri Dorazil 67*a4ff4e44SJiri Dorazil // do the checking here 68*a4ff4e44SJiri Dorazil 69*a4ff4e44SJiri Dorazil // set the globals if authed 70*a4ff4e44SJiri Dorazil $USERINFO['name'] = 'alex'; 71*a4ff4e44SJiri Dorazil $USERINFO['mail'] = 'alex@skaut.cz'; 72*a4ff4e44SJiri Dorazil //$USERINFO['grps'] = array('FIXME'); 73*a4ff4e44SJiri Dorazil $USERINFO['grps'] = array('admin'); 74*a4ff4e44SJiri Dorazil $_SERVER['REMOTE_USER'] = $user; 75*a4ff4e44SJiri Dorazil //$_SESSION[DOKU_COOKIE]['auth']['user'] = $user; 76*a4ff4e44SJiri Dorazil //$_SESSION[DOKU_COOKIE]['auth']['pass'] = $pass; 77*a4ff4e44SJiri Dorazil //$_SESSION[DOKU_COOKIE]['auth']['info'] = $USERINFO; 78*a4ff4e44SJiri Dorazil return true; 79*a4ff4e44SJiri Dorazil 80*a4ff4e44SJiri Dorazil }*/ 81*a4ff4e44SJiri Dorazil 82*a4ff4e44SJiri Dorazil}