src/Controller/PagesController.php line 38
<?phpnamespace App\Controller;use Symfony\Component\Routing\Annotation\Method;use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;use Symfony\Component\Routing\Annotation\Route;use Symfony\Component\HttpFoundation\Request;use Doctrine\Persistence\ManagerRegistry;use Symfony\Component\HttpFoundation\Response;use Symfony\Component\HttpFoundation\File\UploadedFile;use Symfony\Component\HttpFoundation\File\File;use Doctrine\Common\Collections\ArrayCollection;use App\Entity\Pages;use App\Form\PagesType;use OlaSoft\Common;/*** @Route("/os-admin/pages", name="pages-")*/class PagesController extends AbstractController{public function __construct(ManagerRegistry $doctrine){$this->doctrine = $doctrine;}private $doctrine;public function getDoctrine(){return $this->doctrine;}/*** @Route("/",name="admin")*/public function admin(Request $request, $keywords=null,$offset=1){$offset--;$limit = 200;$of=$offset*$limit;$em = $this->getDoctrine()->getManager();$list= $em->getRepository(Pages::class)->findAll();$ajax = $request->isXmlHttpRequest();$response = $this->render('Admin\index.html.twig',['list'=>$list,'ajax'=>$ajax,'noResearch'=>true,'addBtnClass'=>'btn-popup semi',"title"=>"Gestion des pages ","subtitle"=>"Liste de toutes les pages"]);return $ajax ?new Response(\json_encode(['content'=>$response->getContent(),"title"=>"Gestion des pages ","subtitle"=>"Liste de toutes les pages"])): $response;}/*** @Route("/edit/{id}/",name="edit")* @Route("/add/",name="new")*/public function edit(Request $request, Pages $item=null){$em = $this->getDoctrine()->getManager();if($item===null){$item=new Pages();$item->setCreatedBy($this->getUser() ?? null);}else$item->setUpdatedBy($this->getUser() ?? null);$form=$this->createForm(PagesType::class,$item);$form->handleRequest($request);if($form->isSubmitted() && $form->isValid() ){$item->setLastUpdate(new \DateTime);if(!$item->getSlug()) $item->setSlug(Common::slug($item->getTitle()));$item->setUser($this->getUser());$em->persist($item);$em->flush();Common::trackChange($em, $item, $this->getUser(), 'edit', "Édition d'une page");return $this->redirectToRoute("pages-admin");}$ajax = $request->isXmlHttpRequest();$response = $this->render('Admin\edit.html.twig',['form'=>$form->createView(),'ajax'=>$ajax,"title"=>"Gestion des pages ","subtitle"=>"Edition d'une page"]);return $ajax ?new Response(\json_encode(['content'=>$response->getContent(),"title"=>"Gestion des pages ","subtitle"=>"Edition d'une page"])): $response;}}