/**
  * Checks if the user may create jobs according to the organization permissions.
  *
  * @param AssertionEvent $e
  *
  * @return bool
  */
 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;
 }