src/Controller/ServicesCategoriesController.php line 44
<?phpnamespace App\Controller;use Symfony\Component\Routing\Annotation\Method;use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;use Symfony\Component\Routing\Annotation\Route;use Symfony\Component\Routing\Annotation\Security;use Symfony\Component\HttpFoundation\Request;use Doctrine\Persistence\ManagerRegistry;use App\Entity\ServicesCategories;use App\Form\ServicesCategoriesType;use OlaSoft\Common;use Symfony\Component\HttpFoundation\Response;use App\Entity\UsersActivities;/*** @Route("/os-admin/services-categories")*/class ServicesCategoriesController extends AbstractController{public function __construct(ManagerRegistry $doctrine){$this->doctrine = $doctrine;}private $doctrine;public function getDoctrine(){return $this->doctrine;}/*** @Route("/page/{offset}/",name="servicescategories-admin-page")* @Route("/",name="servicescategories-admin")*/public function index(Request $request, $offset=1){$count = 0;$offset--;$limit = 20;$of=$offset*$limit;$em = $this->getDoctrine()->getManager();$list=$em->getRepository(ServicesCategories::class)->findBy(array(),array('id'=>'DESC'));$ajax = $request->isXmlHttpRequest();$response = $this->render('Admin\index.html.twig',['list'=>$list,'ajax'=>$ajax,'offset'=>$offset,'count'=>$count,'noResearch'=>true,"title"=>"Gestion des catégories de documents ","subtitle"=>"Liste des catégories"]);return $ajax ?new Response(\json_encode(['content'=>$response->getContent(),"title"=>"Gestion des catégories de documents ","subtitle"=>"Liste des catégories"])): $response;}/*** @Route("/add/",name="servicescategories-new", defaults={"isEdit":false})* @Route("/edit/{id}/",name="servicescategories-edit")*/public function edit(Request $request, ServicesCategories $category=null, $isEdit = true){$em = $this->getDoctrine()->getManager();if($category === null)$category = new ServicesCategories();$form=$this->createForm(ServicesCategoriesType::class,$category);$form->handleRequest($request);if($form->isSubmitted()){if($form->isValid()){$category->setSlug(Common::slug($category->getLabel()));$em->persist($category);$em->flush();if ($isEdit)Common::trackChange($em, $category, $this->getUser(), 'add', "Ajout d'une catégorie de services");elseCommon::trackChange($em, $category, $this->getUser(), 'edit', "Modification d'une catégorie de services");$this->addFlash("notice","Enregistrement effectué avec succès");return $this->redirectToRoute("servicescategories-admin");}}$ajax = $request->isXmlHttpRequest();$response = $this->render('Admin\edit.html.twig',['form'=>$form->createView(),'ajax'=>$ajax,"title"=>"Gestion des catégories de services ","subtitle"=>"Edition d'une catégorie"]);return $ajax ?new Response(\json_encode(['content'=>$response->getContent(),"title"=>"Gestion des catégories de services ","subtitle"=>"Edition d'une catégorie"])): $response;}/*** @Route("/{id}/enable/", name="servicescategories-enable")*/public function enable(Request $request, ServicesCategories $item){$em = $this->getDoctrine()->getManager();$item->setIsEnabled(!$item->getIsEnabled());$em->persist($item);$em->flush();$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('servicescategories-admin');}}