/**
  * Revokes all permissions for the given access level key
  * 
  * @access public
  * @param \Zepi\Turbo\Framework $framework
  * @param \Zepi\Turbo\Request\RequestAbstract $request
  * @param \Zepi\Turbo\Response\Response $response
  * @param mixed $value
  * @return mixed
  */
 public function execute(Framework $framework, RequestAbstract $request, Response $response, $value = null)
 {
     if (!$request instanceof WebRequest) {
         return $value;
     }
     $items = $this->eventAccessManager->getAccessLevelsForEvent($value);
     // If there are no access levels for the given event name the access
     // to the event is not restricted.
     if ($items === false) {
         return $value;
     }
     if (!$request->hasSession()) {
         return '\\Zepi\\Core\\AccessControl\\Event\\RedirectRequestWithoutSession';
     }
     foreach ($items as $accessLevel) {
         if ($request->getSession()->hasAccess($accessLevel)) {
             return $value;
         }
     }
     return '\\Zepi\\Core\\AccessControl\\Event\\DisplayNoAccessMessage';
 }