Commit c120c934 authored by Julien Fastré's avatar Julien Fastré
Browse files

switch to role declaration in code

parent 7fba3535
......@@ -97,16 +97,6 @@ class ChillReportExtension extends Extension implements PrependExtensionInterfac
$this->declareReportAsCustomizable($container);
$this->declareRouting($container);
$this->prependRoleHierarchy($container);
$this->declareRoles($container);
}
protected function declareRoles(ContainerBuilder $container)
{
$container->prependExtensionConfig('chill_main', array(
'available_roles' => array(
'CHILL_REPORT_UPDATE', 'CHILL_REPORT_SEE', 'CHILL_REPORT_CREATE'
)
));
}
}
......@@ -30,6 +30,7 @@ services:
- "@chill.main.security.authorization.helper"
tags:
- { name: security.voter }
- { name: chill.role }
chill.report.form.report_type:
class: Chill\ReportBundle\Form\ReportType
......
......@@ -21,13 +21,14 @@ namespace Chill\ReportBundle\Security\Authorization;
use Chill\MainBundle\Security\Authorization\AbstractChillVoter;
use Chill\MainBundle\Security\Authorization\AuthorizationHelper;
use Chill\MainBundle\Security\ProvideRoleInterface;
/**
*
*
* @author Julien Fastré <julien.fastre@champs-libres.coop>
*/
class ReportVoter extends AbstractChillVoter
class ReportVoter extends AbstractChillVoter implements ProvideRoleInterface
{
const CREATE = 'CHILL_REPORT_CREATE';
const SEE = 'CHILL_REPORT_SEE';
......@@ -63,4 +64,15 @@ class ReportVoter extends AbstractChillVoter
return $this->helper->userHasAccess($user, $report, $attribute);
}
public function getRoles()
{
return $this->getSupportedAttributes();
}
public function getRolesWithoutScope()
{
return array();
}
}
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment