Example #1
0
 /**
  * @group ZF-9643
  */
 public function testRemoveDenyWithNullResourceAppliesToAllResources()
 {
     $this->_acl->addRole('guest');
     $this->_acl->addResource('blogpost');
     $this->_acl->addResource('newsletter');
     $this->_acl->allow();
     $this->_acl->deny('guest', 'blogpost', 'read');
     $this->_acl->deny('guest', 'newsletter', 'read');
     $this->assertFalse($this->_acl->isAllowed('guest', 'blogpost', 'read'));
     $this->assertFalse($this->_acl->isAllowed('guest', 'newsletter', 'read'));
     $this->_acl->removeDeny('guest', 'newsletter', 'read');
     $this->assertFalse($this->_acl->isAllowed('guest', 'blogpost', 'read'));
     $this->assertTrue($this->_acl->isAllowed('guest', 'newsletter', 'read'));
     $this->_acl->removeDeny('guest', null, 'read');
     $this->assertTrue($this->_acl->isAllowed('guest', 'blogpost', 'read'));
     $this->assertTrue($this->_acl->isAllowed('guest', 'newsletter', 'read'));
     // ensure deny null/all resources works
     $this->_acl->deny('guest', null, 'read');
     $this->assertFalse($this->_acl->isAllowed('guest', 'blogpost', 'read'));
     $this->assertFalse($this->_acl->isAllowed('guest', 'newsletter', 'read'));
 }
Example #2
0
 public function index04Action()
 {
     $aclObj = new Acl();
     $aclObj->addRole("member")->addRole("manager", "member")->addRole("admin", "manager");
     $aclObj->allow("member", null, array("info", "index"));
     $aclObj->allow("manager", null, array("add", "edit"));
     $aclObj->allow("admin", null, array("delete"));
     $aclObj->deny("admin", null, array("info"));
     $aclObj->removeAllow("manager", null, array("add", "edit"));
     $aclObj->removeDeny("admin", null, array("info"));
     $role = "admin";
     $privileges = array("info", "index", "add", "edit", "delete");
     if ($aclObj->hasRole($role)) {
         foreach ($privileges as $privilege) {
             if ($aclObj->isAllowed($role, null, $privilege)) {
                 echo sprintf("<h3 style='color:red;font-weight:bold'>%s : Được quyền truy cập %s</h3>", $role, $privilege);
             } else {
                 echo sprintf("<h3 style='color:red;font-weight:bold'>%s : Không được quyền truy cập %s</h3>", $role, $privilege);
             }
         }
     }
     return false;
 }