src/Controller/DefaultController.php line 24

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use Symfony\Component\Routing\Annotation\Route;
  4. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  5. use App\Entity\Enterprise;
  6. use Symfony\Component\HttpFoundation\Request;
  7. use Symfony\Component\HttpFoundation\Response;
  8. use Symfony\Component\HttpFoundation\JsonResponse;
  9. use Symfony\Component\Filesystem\Filesystem;
  10. use Symfony\Component\HttpFoundation\File\Exception\FileException;
  11. use Symfony\Component\Security\Core\Encoder\UserPasswordEncoderInterface;
  12. use App\Manager\EmailManager;
  13. use App\Entity\Setting;
  14. use App\Service\FileUploader;
  15. use App\Entity\AbContact;
  16. class DefaultController extends AbstractController
  17. {
  18.     
  19.      /**
  20.      * @Route("/", name="anivin_concours")
  21.      */
  22.     public function concours()
  23.     {
  24.         $em $this->getDoctrine()->getManager();
  25.         $settings $em->getRepository(Setting::class)->findOneBy(array('id' => ));
  26.         
  27.         $this->get('session')->set('pageActif''dashboard');
  28.         return $this->render('qualiopi/accueil.html.twig', [
  29.             'marquee' => strlen(trim($settings->getMarquee())) > $settings->getMarquee() : '',
  30.         ]);
  31.     }
  32.     
  33.     
  34.     
  35.     /**
  36.      * @Route("/ab-organisme-certificateur-evaluateur", name="anivin_pourquoi_participer")
  37.      */
  38.     public function pourquoiParticiper(Request $request)
  39.     {
  40.         $this->get('session')->set('pageActif''choisir_AB');
  41.         return $this->render('qualiopi/pourquoi-participer-ab.html.twig');
  42.        
  43.     }
  44.         
  45.      /**
  46.      * @Route("/reglement", name="anivin_reglement")
  47.      */
  48.     public function reglement(Request $request)
  49.     {
  50.          $Titles $this->getDoctrine()->getRepository(Titles::class)->find_titles_result('reglement');
  51.         return $this->render('qualiopi/certification-qualiopi.html.twig', [
  52.             'Titles' => $Titles
  53.         ]);
  54.     }            
  55.     /**
  56.      * @Route("/", name="index")
  57.      */
  58.     public function redirectToHome()
  59.     {
  60.         // return $this->redirect('http://vindefrancewines.net/fr/espace-pro');
  61.         return $this->redirectToRoute('anivin_homepage');
  62.     }
  63.     /**
  64.      * @Route("/espace-pro", name="anivin_espace_pro")
  65.      */
  66.     public function redirectToPro()
  67.     {
  68.         // return $this->redirect('http://vindefrancewines.net/fr/espace-pro');
  69.         return $this->render('espace-pro.html.twig', [
  70.             
  71.         ]);
  72.     }
  73.     /**
  74.      * @Route("/mentions-legales", name="anivin_mentions")
  75.      */
  76.     public function mentions_legales()
  77.     {
  78.         return $this->render('qualiopi/mentions-legales.html.twig', [
  79.             
  80.         ]);
  81.     }
  82.     /**
  83.      * @Route("/", name="anivin_homepage")
  84.      */
  85.     public function index()
  86.     {
  87.         
  88.         return $this->render('index.html.twig', [
  89.             
  90.         ]);
  91.     }
  92.     /**
  93.      * @Route("/error", name="error-page")
  94.      */
  95.     public function error_page()
  96.     {
  97.         return $this->render('default/page-erreur.html.twig');
  98.     }
  99.     /**
  100.      * @Route("/error-login", name="anivin_login")
  101.      */
  102.     public function login_page()
  103.     {
  104.         return $this->render('default/page-login.html.twig');
  105.     }
  106.     /**
  107.      * @Route("/signin", name="anivin_login_new")
  108.      */
  109.     public function login()
  110.     {
  111.         $user $this->getUser();
  112.         if($user){
  113.             // return $this->redirectToRoute('anivin_espace_pro');
  114.             return $this->redirectToRoute('anivin_mon_compte');
  115.         }
  116.         else{
  117.             return $this->render('qualiopi/login.html.twig');
  118.         }
  119.     }
  120.     /**
  121.      * @Route("/signin_", name="anivin_login_devis")
  122.      */
  123.     public function login1()
  124.     {
  125.         $user $this->getUser();
  126.         if($user){
  127.             // return $this->redirectToRoute('anivin_espace_pro');
  128.             return $this->redirectToRoute('anivin_devis_info_enterprise');
  129.         }
  130.         else{
  131.             return $this->render('qualiopi/login.html.twig');
  132.         }
  133.     }
  134.     /**
  135.      * @Route("/mon-compte/{msg}", name="anivin_mon_compte")
  136.      */
  137.     public function mon_compte($msg null)
  138.     {
  139.         $this->get('session')->set('pageActif''mon_compte');
  140.         return $this->render('qualiopi/mon-compte.html.twig');        
  141.     }
  142.      /**
  143.      * @Route("/faq-services-medico-sociaux/{id}", name="anivin_processus_dinscription")
  144.      */
  145.     public function faq($id null)
  146.     {
  147.         $this->get('session')->set('pageActif''faq');
  148.         return $this->render('qualiopi/faq-tout-savoir-sur-qualiopi.html.twig');
  149.        
  150.     }
  151.      /**
  152.      * @Route("/etablissements-services-medico-sociaux", name="anivin_qualiopi")
  153.      */
  154.     public function qualiopi()
  155.     {
  156.         $this->get('session')->set('pageActif''qualiopi');
  157.         return $this->render('qualiopi/certification-qualiopi.html.twig');
  158.        
  159.     }
  160.     /**
  161.      * @Route("/infos-demande", name="anivin_ma_demande")
  162.      */
  163.     public function ma_demande()
  164.     {
  165.         return $this->render('qualiopi/ma-demande.html.twig');
  166.        
  167.     }
  168.     /**
  169.      * @Route("/mon-profil", name="anivin_gerer_mon_profil")
  170.      */
  171.     public function profile(Request $request)
  172.     {
  173.         $post $request->request;
  174.         $user $this->getUser();
  175.         if($post->get('nom'))
  176.         {
  177.             $user->setEmail($post->get('email'));
  178.             $user->setCivilite($post->get('profilcivilite'));
  179.             $user->setNom($post->get('nom'));
  180.             $user->setPrenom($post->get('prenom'));
  181.             $user->setNomenterprise($post->get('nomenterprise'));
  182.             $user1 $this->getDoctrine()->getManager();
  183.             $user1->persist($user);
  184.             $user1->flush();
  185.             $this->addFlash('success''Informations mises à jour');
  186.         }
  187.         return $this->render('qualiopi/profile.html.twig', [
  188.             'user' => $user]);
  189.        
  190.     }
  191.     /**
  192.      * @Route("/change-password", name="anivin_change_password")
  193.      */
  194.     public function change_password(Request $request,UserPasswordEncoderInterface $encoder)
  195.     {
  196.         $post $request->request;
  197.         $user $this->getUser();
  198.         if($post->get('new_pass'))
  199.         {
  200.             $hash $encoder->encodePassword($user,$post->get('new_pass'));
  201.             $user->setPassword($hash);
  202.             $user1 $this->getDoctrine()->getManager();
  203.             $user1->persist($user);
  204.             $user1->flush();
  205.             $this->addFlash('success''le mot de passe a été modifié avec succès');
  206.         }
  207.         return $this->render('qualiopi/change_password.html.twig', [
  208.             'user' => $user]);
  209.        
  210.     }
  211.     /**
  212.      * @Route("/contact-essms", name="anivin_contact")
  213.      */
  214.     public function contact(Request $request,\Swift_Mailer $mailer)
  215.     {   
  216.         $secretKey  '6LdoDxgrAAAAACfJFmH7Lto1pr3s7NG6UwzcrQg_';
  217.         
  218.         $this->get('session')->set('pageActif''contact');
  219.         $post $request->request;
  220.         // if(!empty($_COOKIE['formsubmitted']) && $_COOKIE['formsubmitted']=='yes'){
  221.         //     $this->addFlash('success', 'Impossible de renvoyer le formulaire');
  222.         //     return $this->render('qualiopi/contact.html.twig');
  223.         // }
  224.         if($post->get('nom'))
  225.         {
  226.             if(isset($_POST['g-recaptcha-response']) && !empty($_POST['g-recaptcha-response'])){ 
  227.         // Verify the reCAPTCHA API response 
  228.         $verifyResponse file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret='.$secretKey.'&response='.$_POST['g-recaptcha-response']); 
  229.          
  230.         // Decode JSON data of API response 
  231.         $responseData json_decode($verifyResponse);
  232.         if($responseData->success){ 
  233.             
  234.             // setcookie('formsubmitted', 'yes', time() + (3600 * 12), "/");
  235.             $manager_abv1 $this->getDoctrine()->getManager('abv1');
  236.             
  237.             $post $request->request;
  238.             
  239.             $abcontact =new AbContact();
  240.            
  241.             $nom =  $request->request->get('nom');
  242.             $prenom =  $request->request->get('prenom');
  243.             $enterprise =  $request->request->get('enterprise');
  244.             $telephone =  $request->request->get('telephone');
  245.             $email =  $request->request->get('email');
  246.             
  247.             $subject =  $request->request->get('subject');
  248.             $msg =  $request->request->get('message');
  249.             $created =  date('Y-m-d h:i:s');
  250.             
  251.             
  252.             $tele_fichier='';
  253.             
  254.             $certification_id=0;
  255.             $certification='';
  256.             $type 'CONTACT-ESSMS';
  257.             $insertArray = array(
  258.                         'type'=>$type,
  259.                         'nom'=>$nom,
  260.                         'prenom'=>$prenom,
  261.                         'email'=>$email,
  262.                         'telephone'=>$telephone,
  263.                         'msg'=>$msg,
  264.                         'enterprise'=>$enterprise,
  265.                         'created'=>$created
  266.                         );
  267.             $manager_abv1->getConnection()->insert('ab_contacts',$insertArray);
  268.             // $type = 'CONTACT-ESSMS';
  269.             // $sql = "insert into ab_contacts
  270.             // (type,nom,prenom,email,telephone,msg,enterprise,created)
  271.             //  values
  272.             //  ('$type','$nom','$prenom','$email','$telephone','$msg','$enterprise','$created')";
  273.             //     $manager_abv1->getConnection()->prepare($sql)->execute();
  274.             
  275.                 //$manager = $this->getDoctrine()->getManager();
  276.                 //$settings = $manager->getRepository(Setting::class)->findOneBy(array('id' => 1 ));
  277.                 //$from  = $settings->getExpediteur();
  278.                 // $bc[]  = $settings->getReception();
  279.                 $from 'noreply@abcertification.com';
  280.                 $to   $post->get('email');
  281.                
  282.                 $message $this->renderView('emails/contact_user.html.twig', array('nom' => $post->get('nom')));
  283.                 $bc   = []; //= 'qualiopi@value-com.com';
  284.                 // $bc[]   = 'dhananjay.jadhav@encureit.com';
  285.                 $path = [];
  286.                 $sending EmailManager::sendMail($mailer$to'EVALUATION ESSMS : contact via site [evaluation-essms.abcertification.com]'$message$from  $path ,$bc);
  287.                 // $to   = 'qualiopi@value-com.com';
  288.                 // $to   = "contactessms@abcertification.com";
  289.                 $to   "contactsms@abcertification.com";
  290.                 $message $this->renderView('emails/contact_admin.html.twig', array('email' => $to,'nom' => $post->get('nom'),'prenom' => $post->get('prenom'),'enterprise' => $post->get('enterprise'),'telephone' => $post->get('telephone'),'email' => $post->get('email'),'message' => $post->get('message')));
  291.                 // $bc   = []; //= 'qualiopi@value-com.com';
  292.                 //$bc[]   = 'dhananjay.jadhav@encureit.com';
  293.                 $path = [];
  294.                 $sending EmailManager::sendMail($mailer$to'AB/Contact site EVALUATION ESSMS : msg de '.$post->get('nom'), $message$from  , [] ,[]);
  295.                 
  296.                 
  297.                 $this->addFlash('success''Contact envoyé avec succès');
  298.         }else{
  299.              $this->addFlash('danger''La vérification du robot a échoué, veuillez réessayer');
  300.         }   
  301.             }
  302.         }
  303.         return $this->render('qualiopi/contact.html.twig');
  304.        
  305.     }
  306.     
  307.      /**
  308.      * @Route("/test-email", name="test-email")
  309.      */
  310.     public function testEmail(Request $request,\Swift_Mailer $mailer)
  311.     {
  312.         
  313.         $to = [];
  314.         $to[] = 'dhananjay.jadhav@encureit.com';
  315.         $bc = [];
  316.         $from 'dhananjay.jadhav@encureit.com';//
  317.         
  318.         $baseurl $request->getScheme() . '://' $request->getHttpHost() . $request->getBasePath();
  319.         
  320.         
  321.         $path[] = 'https://evaluation-essms.abcertification.com/public/uploads/tele_fichier/1666068737_cv.pdf';
  322.         
  323.         // print_r($this->container->get("kernel")->getRootDir());die;
  324.         $sending EmailManager::sendMail($mailer'dhananjay.jadhav@encureit.com''TEST EMAIL''TEST'$from  $path  ,$bc);
  325.         
  326.         die("-".$sending);    
  327.     }
  328.     
  329.     
  330.      /**
  331.      * @Route("/devis-demande-services-medico-sociaux", name="anivin_devis")
  332.      */
  333.     public function devis(Request $request,FileUploader $uploader,\Swift_Mailer $mailer)
  334.     {
  335.         $this->get('session')->set('pageActif''devis');
  336.         $secretKey  '6LdoDxgrAAAAACfJFmH7Lto1pr3s7NG6UwzcrQg_';
  337.         if ($request->isMethod('POST')) {
  338.             if(isset($_POST['g-recaptcha-response']) && !empty($_POST['g-recaptcha-response'])){ 
  339.         // Verify the reCAPTCHA API response 
  340.         $verifyResponse file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret='.$secretKey.'&response='.$_POST['g-recaptcha-response']); 
  341.          
  342.         // Decode JSON data of API response 
  343.         $responseData json_decode($verifyResponse);
  344.         if($responseData->success){ 
  345.             
  346.             $manager_abv1 $this->getDoctrine()->getManager('abv1');
  347.             
  348.             $post $request->request;
  349.             
  350.             $abcontact =new AbContact();
  351.            
  352.             $nom =  $request->request->get('nom');
  353.             $prenom =  $request->request->get('prenom');
  354.             $email =  $request->request->get('email');
  355.             $telephone =  $request->request->get('telephone');
  356.             $subject =  $request->request->get('sujet');
  357.             $msg =  $request->request->get('message');
  358.             $enterprise =  $request->request->get('enterprise');
  359.             $fonction =  $request->request->get('fonction');
  360.             $authorize =  $request->request->get('authorize');
  361.             $created =  date('Y-m-d h:i:s');
  362.             $tele_fichier $request->files->get('tele_fichier');
  363.             
  364.             $cat_etablissement $request->request->get('cat_etablissement');
  365.             $type_essms_evaluation $request->request->get('type_essms_evaluation');
  366.             $statut_etablissement $request->request->get('statut_etablissement');
  367.             $nfiness $request->request->get('nfiness');
  368.             $number_etablissement $request->request->get('number_etablissement');
  369.             if(!empty($cat_etablissement)){
  370.                 $cat_etablissement implode(', ',$cat_etablissement);
  371.             }else{
  372.                 $cat_etablissement='';
  373.             }
  374.             
  375.             $attachmentArray=array();
  376.             if (!empty($tele_fichier))
  377.             {
  378.                 $fileuploaddire './public/uploads/tele_fichier';
  379.                 if (!is_dir($fileuploaddire)) {
  380.                     mkdir($fileuploaddire0777true);
  381.                 }
  382.                 $filename time().'_'.$tele_fichier->getClientOriginalName();
  383.                 $uploader->upload($fileuploaddire$tele_fichier$filename);
  384.                 // $abcontact->setTeleFichier('/tele_fichier/'.$filename);
  385.                 $tele_fichier '/uploads/tele_fichier/'.$filename;
  386.                 $attachmentArray[]= "/var/www/vhosts/abcertification.com/evaluation-essms.abcertification.com.abcertification.com/public".$tele_fichier;
  387.             }else{
  388.                 $tele_fichier='';
  389.             }
  390.             if($request->request->get('certification_id')!=''){
  391.                 $certification_id =  $request->request->get('certification_id');
  392.                 //$getCertificateName = $manager_abv1->getRepository(CertificatPage::class)->findOneBy(
  393.                     //array('id' => $request->request->get('certification_id')));
  394.                 
  395.                 //$certification =  $getCertificateName->getTitleFr().' '.$getCertificateName->getTitleFrStandard();
  396.                 // $abcontact->setCertification($certification);
  397.                 // $abcontact->setCertificationId($certification_id);
  398.                 $certification='';
  399.             }else{
  400.                 $certification_id=0;
  401.                 $certification='';
  402.             }
  403.             $type 'DEVIS-ESSMS';
  404.          $insertArray = array(
  405.                     'type'=>$type,
  406.                     'nom'=>$nom,
  407.                     'prenom'=>$prenom,
  408.                     'email'=>$email,
  409.                     'telephone'=>$telephone,
  410.                     'subject'=>$subject,
  411.                     'msg'=>$msg,
  412.                     'enterprise'=>$enterprise,
  413.                     'fonction'=>$fonction,
  414.                     'authorize'=>$authorize,
  415.                     'created'=>$created,
  416.                     'tele_fichier'=>$tele_fichier,
  417.                     'certification_id'=>$certification_id,
  418.                     'certification'=>$certification,
  419.                     'cat_etablissement'=>$cat_etablissement,
  420.                     'type_essms_evaluation'=>$type_essms_evaluation,
  421.                     'statut_etablissement'=>$statut_etablissement,
  422.                     'nfiness'=>$nfiness,
  423.                     'number_etablissement'=>$number_etablissement,
  424.                     );
  425.         $manager_abv1->getConnection()->insert('ab_contacts',$insertArray);
  426. $from 'noreply@abcertification.com';
  427.             // $type = 'DEVIS-ESSMS';
  428.             // $sql = "insert into ab_contacts
  429.             //     (type,nom,prenom,email,telephone,subject,msg,enterprise,fonction,authorize,created,tele_fichier,certification_id,certification,
  430.             //     cat_etablissement,type_essms_evaluation,statut_etablissement,nfiness,number_etablissement)
  431.             //     values
  432.             //     ('$type','$nom','$prenom','$email','$telephone','$subject','$msg','$enterprise','$fonction','$authorize','$created','$tele_fichier','$certification_id','$certification','$cat_etablissement','$type_essms_evaluation','$statut_etablissement','$nfiness','$number_etablissement')";
  433.             // $manager_abv1->getConnection()->prepare($sql)->execute();
  434.             
  435.             
  436.             
  437.             
  438.             //$manager = $this->getDoctrine()->getManager();
  439.             //$settings = $manager->getRepository(Setting::class)->findOneBy(array('id' => 1 ));
  440.             //$from  = $settings->getExpediteur();
  441.             // $bc[]  = $settings->getReception();
  442.             // $from = 'noreply@abcertification.com';//'essms@abcertification.com';//
  443.             
  444.             // $bc   = []; //= 'qualiopi@value-com.com';
  445.             // $to   = 'christian@abcertification.com';
  446.             // //$bc[]   = 'amol.lute@encureit.com';
  447.             // //christian@abcertification.com
  448.            
  449.             // $message = $this->renderView('emails/contact_user.html.twig', array('nom' => $post->get('nom')));
  450.             // $path = [];
  451.             // $sending = EmailManager::sendMail($mailer, $to, 'EVALUATION ESSMS (Devis) : contact via site [evaluation-essms.abcertification.com]', $message, $from  , $path ,$bc);
  452.             // if($sending == 1)
  453.             // {
  454.                 // $to   = 'qualiopi@value-com.com';
  455.                 $to   "devisessms@abcertification.com";
  456.                 //$message = $this->renderView('emails/contact_admin.html.twig', array('email' => $to,'nom' => $post->get('nom'),'prenom' => $post->get('prenom'),'enterprise' => $post->get('enterprise'),'telephone' => $post->get('telephone'),'email' => $post->get('email'),'message' => $post->get('msg')));
  457.                 
  458.                 $message $this->renderView('emails/contact_admin.html.twig', array('email' => $to,'nom' => $post->get('nom'),'prenom' => $post->get('prenom'),'enterprise' => $post->get('enterprise'),'telephone' => $post->get('telephone'),'email' => $post->get('email'),'message' => $post->get('message'),'cat_etablissement' => $cat_etablissement,'type_essms_evaluation' => $type_essms_evaluation,'statut_etablissement' => $statut_etablissement,'nfiness' => $nfiness,'number_etablissement'=>$number_etablissement,'subject'=>$subject));
  459.                 
  460.                 $bc   = []; //= 'qualiopi@value-com.com';
  461.                 //$bc[]   = 'amol.lute@encureit.com';
  462.                 $path = [];
  463.                 $sending EmailManager::sendMail($mailer$to'AB/Contact site EVALUATION ESSMS (Devis) : msg de '.$post->get('nom'), $message$from  $attachmentArray ,$bc);
  464.             // }
  465.             
  466.             
  467.             // Send Mail to Admin User
  468.             //$this->mailer->sendEmailMessage(
  469.                 //'Thank You!!',
  470.                 //$fromName = 'ABSoft' ,
  471.                 //$email,
  472.                 //$sendCc = null,
  473.                 //$sendBcc = null,
  474.                 //'contact_mail/devis.html.twig',
  475.                 //array('test'=>'test'),
  476.                 //array($tele_fichier),
  477.             //);
  478.             // $abcontact->setType("DEVIS");
  479.             // $abcontact->setNom($nom);
  480.             // $abcontact->setPrenom($prenom);
  481.             // $abcontact->setEnterprise($enterprise);
  482.             // $abcontact->setFonction($fonction);
  483.             // $abcontact->setEmail($email);
  484.             // $abcontact->setTelephone($telephone);
  485.             // $abcontact->setSubject($subject);
  486.             // $abcontact->setMsg($msg);
  487.             // $abcontact->setAuthorize($authorize);
  488.             // $abcontact->setCreated(new\DateTime('now'));
  489.             // $manager_abv1->persist($abcontact);
  490.             // $manager_abv1->flush();
  491.             
  492.             $this->addFlash('success''Contact envoyé avec succès');
  493.             return $this->redirectToRoute('anivin_devis');
  494.         }else{
  495.              $this->addFlash('danger''La vérification du robot a échoué, veuillez réessayer');
  496.         }
  497.         }
  498.         }
  499.         return $this->render('qualiopi/devis-contact.html.twig');
  500.         return $this->render('qualiopi/devis.html.twig');
  501.     }
  502. }
  503. ?>