public function checkCreatePermission(AssertionEvent $e)
    {
        /* @var $role \Auth\Entity\User
         * @var $organization \Organizations\Entity\OrganizationReference
         */
        $role = $e->getRole();

        if (!$role instanceof UserInterface) {
            return false;
        }

        $organization = $role->getOrganization();

        if (!$organization->hasAssociation()
            || $organization->isOwner()
        ) {
            return true;
        }

        $employees = $organization->getEmployees();

        foreach ($employees as $emp) {
            /* @var $emp \Organizations\Entity\EmployeeInterface */
            if ($emp->getUser()->getId() == $role->getId()
                && $emp->getPermissions()->isAllowed(EmployeePermissionsInterface::JOBS_CREATE)
            ) {
                return true;
            }
        }

        return false;
    }
public function checkCreatePermission(AssertionEvent $e)
    {
        /* @var $role \Auth\Entity\User
         * @var $organization \Organizations\Entity\OrganizationReference
         */
        $role = $e->getRole();

        if (!$role instanceof UserInterface) {
            return false;
        }

        $organization = $role->getOrganization();

        if (!$organization->hasAssociation()
            || $organization->isOwner()
        ) {
            return true;
        }

        $employees = $organization->getEmployees();

        foreach ($employees as $emp) {
            /* @var $emp \Organizations\Entity\EmployeeInterface */
            if ($emp->getUser()->getId() == $role->getId()
                && $emp->getPermissions()->isAllowed(EmployeePermissionsInterface::JOBS_CREATE)
            ) {
                return true;
            }
        }

        return false;
    }
public function checkCreatePermission ( AssertionEvent $ e ) { /* @var $role \Auth\Entity\User
         * @var $organization \Organizations\Entity\OrganizationReference
         */ $ role = $ e -> getRole ( ) ; if ( ! $ role instanceof UserInterface ) { return false ; } $ organization = $ role -> getOrganization ( ) ; if ( ! $ organization -> hasAssociation ( ) || $ organization -> isOwner ( ) ) { return true ; } $ employees = $ organization -> getEmployees ( ) ; foreach ( $ employees as $ emp ) { /* @var $emp \Organizations\Entity\EmployeeInterface */ if ( $ emp -> getUser ( ) -> getId ( ) == $ role -> getId ( ) && $ emp -> getPermissions ( ) -> isAllowed ( EmployeePermissionsInterface :: JOBS_CREATE ) ) { return true ; } } return false ; }
Checks if the user may create jobs according to the organization permissions.

@param AssertionEvent $e

@return bool
Checks if the user may create jobs according to the organization permissions .