<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\HttpFoundation\Request;
use App\Entity\Produit;
use App\Form\ProduitType;
use Doctrine\Persistence\ManagerRegistry;
class ProduitController extends AbstractController
{
/**
* @Route("/produit", name="app_produit")
*/
public function index(): Response
{
return $this->render('produit/index.html.twig', [
'produit' => 2,
]);
}
/**
* @Route("/admin/produit", name="produit_list")
*/
public function list(ManagerRegistry $doctrine): Response
{
$produits = new Produit();
$em = $doctrine->getManager();
$produits = $em->getRepository(Produit::class)->findAll();
return $this->render('produit/liste.html.twig', [
'produits' => $produits,
]);
}
/**
* @Route("/produit/2", name="produit_riseschool")
*/
public function riseschool(): Response
{
return $this->render('produit/riseschool.html.twig', [
'produit' => 2,
]);
}
/**
* @Route("/produit/3", name="produit_oula")
*/
public function oula(): Response
{
return $this->render('produit/oula.html.twig', [
'produit' => 2,
]);
}
/**
* @Route("/admin/produit/add", name="produit_add")
*/
public function Add(Request $request, ManagerRegistry $doctrine)
{
$produit = new Produit();
$em = $doctrine->getManager();
$form = $this->createForm(ProduitType::class, $produit);
if ($request->isMethod('POST') && $form->handleRequest($request)->isValid()) {
/** @var UploadedFile $photo */
$photo = $form->get('illustration')->getData();
if ($photo) {
$year = date("Y");
$month = date("m");
$day = date("d");
$hour = date("H");
$minute = date("i");
$seconde = date("s");
$aleatoire = rand(0, 100);
$photoName = "Photo" . $produit->getNom() . $day . $hour . $minute. $seconde. $aleatoire . "." . $photo->guessExtension();
$photoName = str_replace(' ','',$photoName);
try {
$photo->move(
$this->getParameter('produit_illustration_directory'), $photoName);
} catch (FileException $e) {
}
$produit->setIllustration($photoName);
}
$em->persist($produit);
$em->flush();
return $this->redirectToRoute('produit_list');
}
return $this->render('produit/add.html.twig', [
'form' => $form->createView()]);
}
}