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
| <?php
class Model_LibraryAcl extends Zend_Acl {
public function __construct() {
$this->addRole(new Zend_Acl_Role('guests'));
$this->addRole(new Zend_Acl_Role('users'), 'guests');
$this->addRole(new Zend_Acl_Role('admins'), 'users');
$this->add(new Zend_Acl_Resource('library'))
->add(new Zend_Acl_Resource('library:clients'), 'library')
->add(new Zend_Acl_Resource('library:fournisseurs'), 'library');
$this->add(new Zend_Acl_Resource('admin'))
->add(new Zend_Acl_Resource('admin:client'), 'admin')
->add(new Zend_Acl_Resource('admin:fournisseur'), 'admin');
$this->add(new Zend_Acl_Resource('default'))
->add(new Zend_Acl_Resource('default:authentication'), 'default')
->add(new Zend_Acl_Resource('default:index'), 'default')
->add(new Zend_Acl_Resource('default:error'), 'default');
$this->allow('guests', 'default:authentication', 'login');
$this->allow('guests', 'default:error', 'error');
$this->deny('users', 'default:authentication', 'login');
$this->allow('users', 'default:index', 'index');
$this->allow('users', 'default:authentication', 'logout');
$this->allow('users', 'library:clients', array('index', 'list'));
$this->allow('users', 'library:fournisseurs', array('index', 'liste'));
$this->allow('admins', 'admin:client', array('index', 'ajouter', 'modifier', 'supprimer'));
$this->allow('admins', 'admin:fournisseur', array('index', 'ajouter', 'modifier', 'supprimer'));
}
} |
Partager