PHP code example of geniv / nette-authorizator
1. Go to this page and download the library: Download geniv/nette-authorizator library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
geniv / nette-authorizator example snippets
$acl = $this->user->getAuthorizator();
$acl->isAllowed('guest', 'sekce-forum', 'zobrazit');
$this->user->isAllowed('sekce-forum', 'zobrazit');
use Authorizator\Forms\AclForm;
use Authorizator\Forms\PrivilegeForm;
use Authorizator\Forms\ResourceForm;
use Authorizator\Forms\RoleForm;
...
abstract class BasePresenter extends Presenter
{
use AutowiredComponent;
...
protected function createComponentRoleForm(RoleForm $roleForm): RoleForm
{
//$roleForm->setTemplatePath(path);
//$roleForm->onSuccess[] = function (array $values) { };
//$roleForm->onError[] = function (array $values, Exception $e = null) { };
return $roleForm;
}
protected function createComponentResourceForm(ResourceForm $resourceForm): ResourceForm
{
//$resourceForm->setTemplatePath(path);
//$resourceForm->onSuccess[] = function (array $values) { };
//$resourceForm->onError[] = function (array $values, Exception $e = null) { };
return $resourceForm;
}
protected function createComponentPrivilegeForm(PrivilegeForm $privilegeForm): PrivilegeForm
{
//$privilegeForm->setTemplatePath(path);
//$privilegeForm->onSuccess[] = function (array $values) { };
//$privilegeForm->onError[] = function (array $values, Exception $e = null) { };
return $privilegeForm;
}
protected function createComponentAclForm(AclForm $aclForm): AclForm
{
//$aclForm->setTemplatePath(path);
//$aclForm->onSuccess[] = function (array $values) { };
//$aclForm->onError[] = function (array $values) { };
return $aclForm;
}
$acl = $this->user->getAuthorizator();
// manual set allowed with internal resolve policy
$acl->setAllowed(IAuthorizator::ALL, 'Homepage');
$acl->setAllowed(IAuthorizator::ALL, 'Login');
if (!$this->user->isAllowed($this->name, $this->action)) {
// NOT ALLOWED
}
json
"php": ">=5.6.0",
"nette/nette": ">=2.4.0",
"dibi/dibi": ">=3.0.0"