em = $em; $this->mailer = $mailer; $this->renderView = $templating; $this->container = $container; $this->securityContext = $securityContext; } public function affichemutuelle($membre,$mutuelleactive=null) { $mutuelle = ""; if (empty($membre[0]['departement'])) goto end; $dep = $this->em->getRepository('NetickGestionBundle:Departement')->findOneBy(array("num_departement" => $membre[0]['departement'])); $repository = $this->em->getRepository('NetickGestionBundle:Zonedepartement'); $query = $repository->createQueryBuilder('p') //->join('') ->innerJoin('p.departements', 'd') ->where('d.id=:departement') ->orderBy("p.id", "desc") ->setParameter("departement", $dep) ->getQuery(); $zonedep = $query->getResult(); /*Seul TNS*/ foreach ($zonedep as $zone) { $repository = $this->em->getRepository('NetickGestionBundle:Zoneprix'); $query = $repository->createQueryBuilder('p') ->where('p.mutuelle=:mutuelle') ->andWhere('p.regime=:regime') ->andWhere('p.age=:age') ->andWhere('p.zone=:zone') ->orderBy("p.prix", "asc") ->setParameters(array( "mutuelle" => $zone->getMutuelle(), "regime" => $zone->getRegime(), "age" => $membre[0]['age'], "zone" => $zone->getZone() )) ->getQuery(); $resultat = $query->getResult(); // print_r($membre[1]['age']);die; foreach ($resultat as $med) { if (($med->getMutuelle()->getId() == 41)) { if (($membre[0]['age'] <= "60") ) { continue; } if(!empty($membre[1]['age'])){ if (($membre[1]['age'] <= "55") ) { continue; } } } if (($med->getMutuelle()->getId() == 42)) { if (($membre[0]['age'] <= "60") ) { continue; } if(!empty($membre[1]['age'])){ if (($membre[1]['age'] <= "55") ) { continue; } } } if (($med->getMutuelle()->getTns() == 1)) { if ($membre[0]['statut'] != "tns") { continue; } } if (($med->getMutuelle()->getSs() == 1)) { if ($membre[0]['statut'] != "ss") { continue; } } $mutuelle[$med->getMutuelle()->getId()][] = array( "zone" => $med->getZone(), "id" => $med->getId(), "regime" => $med->getRegime()->getId(), "prix" => $med->getPrix() ); } } end: function sortByOrder($a, $b) { return $a['prix'] - $b['prix']; } foreach ($mutuelle as $key => $result) { usort($result, function ($a, $b) { return $a['prix'] - $b['prix']; }); $result = array_map("unserialize", array_unique(array_map("serialize", $result))); $mutuelle[$key] = $result; } /*Dans le cas d'une mutuelle choisie*/ if (!empty($mutuelleactive)){ $transfert= $mutuelle; $mutuelle=""; $mutuelle=$transfert[$mutuelleactive]; } return ($mutuelle); } public function affichemutuellebeneficiaire($mutuelle, $regime, $age, $zone,$number=null,$type=null) { if(!empty($mutuelle)){ $repository = $this->em->getRepository('NetickGestionBundle:Zoneprixbeneficiaire'); $query = $repository->createQueryBuilder('p') ->where('p.mutuelle=:mutuelle') ->andWhere('p.regime=:regime') ->andWhere('p.age=:age') ->andWhere('p.zone=:zone') ->orderBy("p.prix", "asc") ->setParameters(array( "mutuelle" => $mutuelle, "regime" => $regime, "age" => $age, "zone" => $zone )) ->getQuery(); $resultat = $query->getResult(); if($mutuelle->getGratuiteenfant()){ if(in_array($number,$mutuelle->getGratuiteenfant())){ if($type==3){ return ("inclus"); goto theend; } } } if(empty($resultat)){ return ("0"); }else{ return ("".$resultat[0]->getPrix()); } theend: } } public function affichemutuellesouscripteur($mutuelle, $regime, $age, $zone) { $repository = $this->em->getRepository('NetickGestionBundle:Zoneprixbeneficiaire'); $query = $repository->createQueryBuilder('p') ->where('p.mutuelle=:mutuelle') ->andWhere('p.regime=:regime') ->andWhere('p.age=:age') ->andWhere('p.zone=:zone') ->orderBy("p.prix", "asc") ->setParameters(array( "mutuelle" => $mutuelle, "regime" => $regime, "age" => $age, "zone" => $zone )) ->getQuery(); $resultat = $query->getResult(); if($resultat){ return ($resultat[0]->getPrix()); }else{ return (0); } } public function compare($mutuelle,$membre, $post = null,$regimecomparer=null) { $t = 0; foreach ($mutuelle as $key => $result) { foreach ($result as $mut) { $prix=0; if(!empty($regimecomparer)){ if(!in_array($mut['regime'],$regimecomparer))continue; } $membre = array_values($membre); foreach($membre as $resultmembre){ $prix = $prix+$this->affichetarifconjoint($mut,$resultmembre); }; /*Nouveau prix total*/ $totalsansreduc= $mut['prix']+$prix; /*Et maintenant on applique les règles*/ $prix=0; $coupleexiste=0; $enfant=0; // echo '
';
                foreach($membre as $result2){

                    if($result2['type']==2){$coupleexiste=1;};

                    /*Gestion*/
                    $regimeactuel = $this->em->getRepository('NetickGestionBundle:Regime')->findOneById($mut['regime']);
                    if($result2['type']=="1"){
                        $prix = $prix+$this->affichemutuellesouscripteur($regimeactuel->getMutuelle(),$regimeactuel,$result2['age'],$mut['zone']);
                    }elseif($result2['type']=="2"){
                        $prix = $prix+$this->affichemutuellebeneficiaire($regimeactuel->getMutuelle(),$regimeactuel,$result2['age'],$mut['zone']);

                    }elseif($result2['type']=="3"){
                        $enfantc = $regimeactuel->getMutuelle()->getGratuiteenfant();
                        if(!empty($enfantc)){
                            $enfant = $enfant +1;
                            if(!in_array($enfant,$regimeactuel->getMutuelle()->getGratuiteenfant())){
                                $prix = $prix+$this->affichemutuellebeneficiaire($regimeactuel->getMutuelle(),$regimeactuel,$result2['age'],$mut['zone']);
                            }
                        }
                    }
                }
                $ligneprix = "Prix Normal $prix
€"; if($coupleexiste==1){ if($regimeactuel->getMutuelle()->getReductioncouplepourcentage()>=1){ $ligneprix .= "Couple -".$regimeactuel->getMutuelle()->getReductioncouplepourcentage().'%'.'
'; $prix=$prix-($prix*$regimeactuel->getMutuelle()->getReductioncouplepourcentage()/100); } if($regimeactuel->getMutuelle()->getReductioncouple()>=1){ $ligneprix .= "Couple -".$regimeactuel->getMutuelle()->getReductioncouple().'€'.'
'; $prix=$prix-$regimeactuel->getMutuelle()->getReductioncouple(); } } if($result2['statut']=="tns"){ if($regimeactuel->getMutuelle()->getTnscoeff()>=1){ $ligneprix .= "Tns -".$regimeactuel->getMutuelle()->getTnscoeff().'%'.'
'; $prix=$prix-($prix*$regimeactuel->getMutuelle()->getTnscoeff()/100); } if($regimeactuel->getMutuelle()->getTnsreduction()>=1){ $ligneprix .= "Tns -".$regimeactuel->getMutuelle()->getTnsreduction().'€'.'
'; $prix=$prix-$regimeactuel->getMutuelle()->getTnsreduction(); } } if($result2['statut']=="agricole"){ if($regimeactuel->getMutuelle()->getAgricolecoeff()>=1){ $ligneprix .= "Agricole -".$regimeactuel->getMutuelle()->getAgricolecoeff().'%'.'
'; $prix=$prix-($prix*$regimeactuel->getMutuelle()->getAgricolecoeff()/100); } if($regimeactuel->getMutuelle()->getAgricolereduction()>=1){ $ligneprix .= "Tns -".$regimeactuel->getMutuelle()->getAgricolereduction().'€'.'
'; $prix=$prix-$regimeactuel->getMutuelle()->getAgricolereduction(); } } if($regimeactuel->getMutuelle()->getfraisgestion()>=1){ $ligneprix .= "Frais de gestion +".$regimeactuel->getMutuelle()->getfraisgestion().'€'.'
'; $prix=$prix+$regimeactuel->getMutuelle()->getfraisgestion(); } if(($enfant>=1)){ $ligneprix .= "Les enfants gratuits sont déduis gratuit
"; } $ligneprix.="Prix final ".number_format($prix,2,".",'.').'€'; $mut['prix']=number_format($prix,2,".",'.'); $mut['mutuelle']= $key; $comparer[$t] = $mut; $t++; } } usort($comparer, function ($a, $b) { return $a['prix'] - $b['prix']; }); return ($comparer); } public function affichepec($id,$regime){ $regime = $this->em->getRepository('NetickGestionBundle:Regime')->findOneById($regime); $repository=$this->em->getRepository('NetickGestionBundle:Priseenchargeoverideprix'); $query = $repository->createQueryBuilder('p') ->innerJoin('p.priseenchargeoveride', 'o') ->where('p.regime=:regime') ->andWhere('o.priseencharge=:id') ->setParameters(array( "regime" => $regime, "id" => $id, )) ->getQuery(); $resultat = $query->getResult(); if(!empty($resultat)){ return($resultat[0]->getNiveau()); }else{ return("--"); } } public function affichetarifconjoint($data,$membre){ $zone = $data['zone']; $regime = $this->em->getRepository('NetickGestionBundle:Regime')->findOneById($data['regime']); $prix = $this->affichemutuellebeneficiaire($regime->getMutuelle(),$regime,$membre['age'],$zone); return ( $prix); } public function souscrire($post,$regimeid,$user,$regime){ /*Controle si le client existe*/ $client = $this->em->getRepository('NetickGestionBundle:Client')->findOneBy(array("email"=>$_POST['email'])); $departement = $this->em->getRepository('NetickGestionBundle:Departement')->findOneBy(array("num_departement"=>$_POST['cp'][0].$_POST['cp'][1])); if(empty($client)){ $client = new Client(); } $client->setEmail($_POST['email']); $client->setProvenance("site internet"); $client->setNom($_POST['nom']); $client->setPrenom($_POST['prenom']); if(!empty($_POST['dob'])){ $client->setDob(new \DateTime(($this->formatusdate($_POST['dob'])))); } if(!empty($_POST['dateeffet'])){ $client->setDateeffet($_POST['dateeffet']); } $client->setProfession($_POST['profession']); $client->setRegime(($_POST['regime']=="TNS"?2:1)); $client->setSecuritesociale($_POST['securite']); $client->setOrganisme($_POST['organisme']); $client->setTelephone($_POST['telephone']); $client->setMobile($_POST['mobile']); $client->setCp($_POST['cp']); $client->setVille($_POST['ville']); $client->setSex(($_POST['civilite']=="1"?1:2)); //$client->setPaiement($_POST['paiement']); $client->setJour($_POST['jour']); $client->setCodecompte($_POST['codecompte']); $client->setCodeguichet($_POST['codeguichet']); $client->setNumerocompte($_POST['numerocompte']); //$client->setCle($_POST['cle']); $client->setEtablissement($_POST['etablissement']); //$client->setCle($_POST['cle']); $client->setRegimemutuelle($regimeid); $client->setMensualite($_POST['mensualite']); $client->setUser($user); $client->setSecuritesociale($_POST['securite']); if(!empty($departement)){ $client->setDepartement($departement); } $client->setIp($_SERVER['REMOTE_ADDR']); $this->em->persist($client); /*On ajoute les membres de la famille*/ if(!empty($_POST['membres'])){ $famille = $this->em->getRepository('NetickGestionBundle:Famille')->findByClient($client); foreach($famille as $clt ){ $this->em->remove($clt) ; } foreach($_POST['membres'] as $membre){ $famille = new Famille(); $famille->setClient($client); $famille->setNom($membre["nom"]); $famille->setPrenom($membre["prenom"]); $famille->setCivilite($membre["civilite"]); if(!empty($membre["dob"])){ $famille->setDob(($membre["dob"])); } $famille->setEtat($membre["etat"]); $famille->setOrganisme($membre["organisme"]); if(isset($membre["profession"])){ $famille->setProfession($membre["profession"]); } $famille->setRegime($membre["regime"]); $famille->setSecurite($membre["securite"]); $famille->setType($membre["type"]); $this->em->persist($famille); } } $this->em->flush(); $message = \Swift_Message::newInstance() ->setSubject("[Souscription] Sante / mariannesante.fr (Marianne Santé)") ->setFrom('contact@mariannesante.fr') // ->setTo(array('mickael@application-net.fr')) ->setTo(array('mariannesante@gmail.com')) ->setBody($this->renderView->render('NetickGestionBundle:Mail:envoimailsouscriptionowner.html.twig', array('client'=>$client,"regime"=>$regime,"user"=>$user)), 'text/html'); $this->mailer->send($message); $message = \Swift_Message::newInstance() ->setSubject("Souscription Solly Azar Profil Santé ECO en ligne sur mariannesante.fr") ->setFrom('contact@mariannesante.fr') // ->setTo(array('mickael@application-net.fr')) ->setTo(array('mariannesante@gmail.com')) ->setBody($this->renderView->render('NetickGestionBundle:Mail:envoimailsouscription.html.twig', array('client'=>$client,"regime"=>$regime,"user"=>$user,"cryptid"=>($client->getId()+1481))), 'text/html'); $this->mailer->send($message); } public function formatusdate($date){ $explode= explode("/",$date); return($explode[2].'-'.$explode[1].'-'.$explode[0]); } } An Error Occurred: Internal Server Error

Oops! An Error Occurred

The server returned a "500 Internal Server Error".

Something is broken. Please let us know what you were doing when this error occurred. We will fix it as soon as possible. Sorry for any inconvenience caused.