/** * @param Request $request * @param DirectoryPath $path * * @return Response */ public function addPageAction(Request $request, DirectoryPath $path) { $this->assertRole('ROLE_COMMITTER'); $form = $this->createFormBuilder()->add('title', 'text', array('label' => 'Title', 'required' => true))->add('filename', 'text', array('label' => 'Filename', 'required' => true, 'attr' => array('input_group' => array('append' => '.md'))))->add('create', 'submit')->getForm(); $form->handleRequest($request); if ($form->isSubmitted()) { if ($form->isValid()) { $title = $form->get('title')->getData(); $filename = $form->get('filename')->getData() . '.md'; $filePath = $path->appendFile($filename); return $this->redirect($this->generateUrl('ddr_gitki_wiki_file', array('path' => $filePath->toAbsoluteUrlString(), 'action' => 'edit', 'title' => $title))); } } return $this->render('DdrGitkiBaseBundle:Wiki:directory.addPage.html.twig', array('form' => $form->createView(), 'path' => $path)); }