src/Controller/OpportunitiesController.php line 27
<?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 Symfony\Component\HttpFoundation\Response;use Doctrine\ORM\EntityManagerInterface;use Doctrine\Persistence\ManagerRegistry;use App\Entity\Opportunities;use App\Form\OpportunitiesType;use App\Repository\OpportunitiesRepository;use OlaSoft\Common;use App\Entity\UsersActivities;/*** @Route("/os-admin/opportunities", name="opportunities-")*/class OpportunitiesController extends OSController{/*** @Route("/",name="admin")*/public function indexAction(Request $request){$em = $this->getDoctrine()->getManager();$list = $em->getRepository(Opportunities::class)->findBy(array(),array('id'=>'DESC'));$ajax = $request->isXmlHttpRequest();$response = $this->render('Admin\index.html.twig',['list'=>$list,'ajax'=>$ajax,'noResearch'=>true,"title"=> "Gestion des opportunities","subtitle"=> "Liste des opportunities","addBtnClass"=>"btn-popup semi"]);return $ajax ?new Response(\json_encode(['content'=>$response->getContent(),"title"=> "Gestion des opportunities","subtitle"=> "Liste des opportunities"])): $response;}/*** @Route("/add", name="new")* @Route("/{id}/edit", name="edit")*/public function edit(Request $request,Opportunities $opportunity = null){if(!$opportunity){$opportunity = new Opportunities;$opportunity->setUser($this->getUser());}else{$opportunity->setUpdatedBy($this->getUser() ? $this->getUser() : null);$opportunity->setLastUpdate(new \DateTime);}$em = $this->getDoctrine()->getManager();$form = $this->createForm(OpportunitiesType::class, $opportunity);$form->handleRequest($request);if ($form->isSubmitted() && $form->isValid()){$em->persist($opportunity);$em->flush();Common::trackChange($em, $opportunity, $this->getUser(), 'edit', "Édition d'une opportuntité");$this->addFlash("notice","Enregistrement effectué avec succès.");return $this->redirectToRoute('opportunities-admin');}$ajax = $request->isXmlHttpRequest();$response = $this->render('Admin\edit.html.twig',['form'=>$form->createView(),'ajax'=>$ajax,"title"=> "Gestion des opportunités","subtitle"=>"Edition d'une opportunité "]);return $ajax ?new Response(\json_encode(['content'=>$response->getContent(),"title"=> "Gestion des opportunités","subtitle"=>"Edition d'une opportunité "])): $response;}/*** @Route("/{id}/enable/", name="enable")*/public function enable(Request $request, Opportunities $opportunity){$em = $this->getDoctrine()->getManager();$opportunity->setIsEnabled(!$opportunity->getIsEnabled());$em->persist($opportunity);$em->flush();Common::trackChange($em, $opportunity, $this->getUser(), 'enable', "Activation/désactivation d'un projet");$ajax = $request->isXmlHttpRequest();if(!$ajax)$this->addFlash("notice","Activation / Désactivation effectuée avec succès.");return $ajax? new Response(\json_encode(['status'=>$opportunity->getIsEnabled(), 'notice'=>'Activation / Désactivation effectuée avec succès.'])): $this->redirectToRoute('opportunities-admin');}}