private function checkTicketEditionAccess(User $user, Ticket $ticket) { $interventions = $ticket->getInterventions(); if ($user->getId() !== $ticket->getUser()->getId() || count($interventions) > 0 || $ticket->getLevel() !== 0) { throw new AccessDeniedException(); } }
/** * @EXT\Route( * "/admin/ticket/{ticket}/new/open", * name="formalibre_admin_ticket_new_open", * options={"expose"=true} * ) * @EXT\ParamConverter("authenticatedUser", options={"authenticatedUser" = true}) */ public function adminNewTicketOpenAction(User $authenticatedUser, Ticket $ticket) { if ($ticket->getLevel() === 0) { $this->supportManager->startTicket($ticket, $authenticatedUser); } return new RedirectResponse($this->router->generate('formalibre_admin_ticket_open', array('ticket' => $ticket->getId()))); }