Bonjour,
Ne sachant pas où poster ce message (je n'ai pu trouvé de mail pour contacter l'auteur en cas d'erreur), je me permet donc de créer ce sujet pour faire part d'une erreur dans le tutoriel de Alain Sahli (traduction du tutoriel de Simon Mundy).
Voici le code en question :
On peut très bien constater qu'il manque une fin dans ce code !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 <?php class MyLib_Plugin_Auth extends Zend_Controller_Plugin_Abstract { private $_auth; private $_acl; private $_noauth = array( 'module' => 'default', 'controller'=> 'auth', 'action' => 'login'); private $_noacl = array( 'module' => 'default', 'controller'=> 'error', 'action' => 'privileges'); public function __construct($auth, $acl) { $this->_auth = $auth; $this->_acl = $acl; } public function preDispatch(Zend_Controller_Request_Abstract $request) { if($this->_auth->hasIdentity()) $role = $this->_auth->getIdentity()->role; else $role = 'guest'; $controller = $request->controller; $action = $request->action; $module = $request->module; $resource = $controller; if(!$this->_acl->has($resource)) $resource = null; if(!$this->_acl->isAllowed($role, $resource, $action)) { if(!$this->_auth->hasIdentity()) { $module = $this->_noauth['module']; $controller = $this->_noauth['controller']; $action = $this->_noauth['action'];
En voici donc la fin :
Cette erreur est aussi présente dans le tutoriel original en anglais.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 } else { $module = $this->_noacl['module']; $controller = $this->_noacl['controller']; $action = $this->_noacl['action']; } } $request->setModuleName($module); $request->setControllerName($controller); $request->setActionName($action); } }
Bonne journée,
Lionel B
Partager