model = $model; $this->twig = $twig; } public function displaySubmitTeam() { try { $this->twig->display("insertTeam.html.twig", []); } catch (LoaderError | RuntimeError | SyntaxError $e) { echo " twig error : $e"; } } public function submitTeam(array $request): HttpResponse { $errors = []; $request = HttpRequest::from($request, $errors, [ "name" => [Validators::lenBetween(1, 32), Validators::nameWithSpaces()], "mainColor" => [Validators::isInteger(), Validators::isIntInRange(0, 0xffffff)], "secondColor" => [Validators::isInteger(), Validators::isIntInRange(0, 0xffffff)], "picture" => [Validators::isURL()] ]); if (!empty($errors)) { $badFields = []; foreach ($errors as $e) { if ($e instanceof FieldValidationFail) { $badFields[] = $e->getFieldName(); } } return ViewHttpResponse::twig('insertTeam.html.twig',['bad_fields'=> $badFields]); } $this->model->createTeam($request['name'], $request['picture'], intval($request['mainColor']), intval($request['secondColor'])); return ViewHttpResponse::twig('sample_form.html.twig',[]); } public function listTeamByName(array $request): HttpResponse { $errors = []; $results = $this->model->listByName($request['name'], $errors); } }