src/Controller/EventsController.php line 81
<?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 Symfony\Component\Validator\Validator\ValidatorInterface;use App\Entity\Events;use App\Entity\Banners;use App\Entity\Documents;use App\Form\EventsType;use App\Entity\EventsPictures;use App\Entity\Pictures;use App\Entity\UsersActivities;use OlaSoft\Common;/*** @Route("/os-admin/events")*/class EventsController extends AbstractController{public function __construct(ManagerRegistry $doctrine){$this->doctrine = $doctrine;}private $doctrine;public function getDoctrine(){return $this->doctrine;}/**** @Route("/page/{offset}/",name="events-admin-page")* @Route("/",name="events-admin")* @Route("/search/{keywords}/page/{offset}/",name="events-search-admin-page")* @Route("/search/{keywords}/",name="events-search-admin")*/public function admin(Request $request, $keywords=null,$offset=1){$offset--;$limit = 20;$of=$offset*$limit;$em = $this->getDoctrine()->getManager();$list = $em->getRepository(Events::class)->findBy(array(),array('id'=>'DESC'));$ajax = $request->isXmlHttpRequest();$response = $this->render('Admin\index.html.twig',['list'=>$list,'ajax'=>$ajax,// 'count'=>$count,// 'table_limit'=>$limit,// 'offset'=>$offset,'addBtnClass'=>'btn-popup semi',"title"=>"Gestion des events ","subtitle"=>"Liste de tous les events"]);return $ajax ?new Response(\json_encode(['content'=>$response->getContent(),"title"=>"Gestion des events ","subtitle"=>"Liste de tous les events"])): $response;}/*** @Route("/add/",name="events-new", defaults={"isEdit":false})* @Route("/{id}/edit",name="events-edit")*/public function edit(Request $request, Events $item=null, $isEdit = true, ValidatorInterface $validator){$em = $this->getDoctrine()->getManager();if($item === null){$item = new Events();$item->setCreatedBy($this->getUser());}$form=$this->createForm(EventsType::class,$item);$form->handleRequest($request);if($form->isSubmitted() && $form->isValid()){$item->setSlug(Common::slug($item->getName()));$em->persist($item);$em->flush();Common::trackChange($em, $item, $this->getUser(), 'edit', "Édition d'un événement");$this->addFlash('notice','Enregistrement effectué avec succès');return $this->redirectToRoute('events-admin');}$ajax = $request->isXmlHttpRequest();$response = $this->render('Admin\edit.html.twig',['form' => $form->createView(),'ajax' => $ajax,'title' => "Gestion des events ",'subtitle' => "Edition d'un événement",]);return $ajax ?new Response(\json_encode(['content' => $response->getContent(),'title' => "Gestion des events ",'subtitle' => "Edition d'un événement"])): $response;}/*** @Route("/{id}/enable", name="events-enable")*/public function enable(Request $request, Events $item){$em = $this->getDoctrine()->getManager();$item->setIsEnabled(!$item->getIsEnabled());$em->persist($item);$em->flush();Common::trackChange($em, $item, $this->getUser(), $item->getIsEnabled() ? 'enable' : 'disable', $item->getIsEnabled() ? "Activation d'un événement" : "Désactivation d'un événement");$ajax = $request->isXmlHttpRequest();if(!$ajax) $this->addFlash("notice","Activation / Désactivation effectuée avec succès.");return $ajax? new Response(\json_encode(['status'=>$item->getIsEnabled(), 'notice'=>'Activation / Désactivation effectuée avec succès.'])): $this->redirectToRoute('events-admin');}}