'user', 'requestData' => [ 'ticketNumber' => [ 'validation' => DataValidator::validTicketNumber(), 'error' => ERRORS::INVALID_TICKET ] ] ]; } public function handler() { $user = Controller::getLoggedUser(); $ticket = Ticket::getByTicketNumber(Controller::request('ticketNumber')); $ticketAuthor = $ticket->authorToArray(); if($ticket->owner) { throw new RequestException(ERRORS::NO_PERMISSION); } if(Controller::isStaffLogged() && $user->level < 3 && ($user->email !== $ticketAuthor['email'])) { throw new RequestException(ERRORS::NO_PERMISSION); } if(!Controller::isStaffLogged() && ($user->email !== $ticketAuthor['email'] || $ticketAuthor['staff'])) { throw new RequestException(ERRORS::NO_PERMISSION); } $ticket->delete(); Response::respondSuccess(); } }