1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
/**
* @Route("/add_sujet", name="add_sujet")
* @Method({"GET", "POST"})
*/
public function add_sujetAction(Request $request)
{
$sujet = new Sujet();
$form = $this->createForm(SujetType::class, $sujet)
->add('saveAndNext', SubmitType::class);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$sujet->setSlug($this->get('slugger')->slugify($sujet->getTitle()));
$entityManager = $this->getDoctrine()->getManager();
$entityManager->persist($sujet);
$entityManager->flush();
$this->addFlash('success', 'sujet.created_successfully');
if ($form->get('saveAndNext')->isClicked()) {
// On commence à créer les questions.
$question = new question();
$question->setContent('init');
$question->setType('init');
$question->setSujet($sujet);
$entityManager = $this->getDoctrine()->getManager();
$entityManager->persist($question);
$entityManager->flush(); // LES 7 PRECEDENTES LIGNES ME PERMETTENT JUSTE DE RECUPERER LE DERNIER ID UTILISE DE MA TABLE QUESTION<br>
$id = $question->getId()+1; // TRES MOCHE.. <br>
$entityManager->remove($question); // TRES MOCHE.. <br>
$entityManager->flush(); // TRES MOCHE.. <br>
return $this->redirectToRoute('add_question', ['sujetSlug' => $sujet->getSlug(), 'id' => $id]);
}
// On annule la création de sujet.
return $this->redirectToRoute('sujet');
}
// On présente le formulaire pour déclaration sujet.
return $this->render('default/add_sujet.html.twig', [
'sujet' => $sujet,
'form' => $form->createView(),
]);
} |
Partager