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 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
| public function edit(Project $project, Request $request)
{
$form = $this->createForm(ProjectType::class, $project);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$imagesProject = $form->get('imageProjects')->getData();
$imageFirst = $form->get('imageFile')->getData();
if ($imageFirst && $imagesProject) {
foreach ($imagesProject as $imageProject) {
$fichier = md5(uniqid()) . '.' . $imageProject->guessExtension();
$imageProject->move(
$this->getParameter('image_directory'),
$fichier
);
}
$imgP = new ImageProject();
$imgP->setFilename($fichier);
$dateP = new \DateTime('now');
$imgP->setUpdatedAt($dateP);
$project->addImageProject($imgP);
$imageFirst = $form->get('imageFile')->getData();
$Imagefile = md5(uniqid()) . '.' . $imageFirst->guessExtension();
try {
$imageFirst->move(
$this->getParameter('image_directory'),
$Imagefile
);
} catch (FileException $e) {
dump($e);
}
$project->setFilename($Imagefile);
$datePr = new \DateTime('now');
$project->setUpdatedAt($datePr);
$this->em->flush();
$this->addFlash('add', 'Votre projet a été modifié');
return $this->redirectToRoute('admin.project.index');
} else if ($imageFirst && !$imagesProject) {
$imageFirst = $form->get('imageFile')->getData();
$Imagefile = md5(uniqid()) . '.' . $imageFirst->guessExtension();
$imageFirst->move(
$this->getParameter('image_directory'),
$Imagefile
);
$project->setFilename($Imagefile);
$datePr = new \DateTime('now');
$project->setUpdatedAt($datePr);
$this->em->flush();
$this->addFlash('add', 'Votre projet a été modifié');
return $this->redirectToRoute('admin.project.index');
} else if (!$imageFirst && $imagesProject) {
foreach ($imagesProject as $imageProject) {
$fichier = md5(uniqid()) . '.' . $imageProject->guessExtension();
$imageProject->move(
$this->getParameter('image_directory'),
$fichier
);
}
$imgP = new ImageProject();
$imgP->setFilename($fichier);
$dateP = new \DateTime('now');
$imgP->setUpdatedAt($dateP);
$project->addImageProject($imgP);
$this->em->flush();
$this->addFlash('add', 'Votre projet a été modifié');
return $this->redirectToRoute('admin.project.index');
} else {
return $this->redirectToRoute('admin.project.index');
}
}
return $this->render('admin/project/edit.html.twig', [
'controller_name' => 'AdminPropertyController',
'project' => $project,
'form' => $form->createView()
]);
} |
Partager