$val){
$$cle=$val;
//echo $cle.' => '.$val.'
';
}
$idCoLy = $_POST['idCoLy'];
$maCleDeCryptage = getCleDeCryptage();
$etaCoLy = crypter($maCleDeCryptage,$etaCoLy);
$nomCoLy = crypter($maCleDeCryptage,$nomCoLy);
$prenomCoLy = crypter($maCleDeCryptage,$prenomCoLy);
$fonctionCoLy = crypter($maCleDeCryptage,$fonctionCoLy);
$telCoLy = crypter($maCleDeCryptage,$telCoLy);
$emlCoLy = crypter($maCleDeCryptage,$emlCoLy);
$adresse1CoLy = crypter($maCleDeCryptage,$adresse1CoLy);
$adresse2CoLy = crypter($maCleDeCryptage,$adresse2CoLy);
$cpCoLy = crypter($maCleDeCryptage,$cpCoLy);
$villeCoLy = crypter($maCleDeCryptage,$villeCoLy);
$commentCoLy = crypter($maCleDeCryptage,$commentCoLy);
$db = connect_base();
//Trouve le CFA associé
$query="
SELECT * FROM capitaines
INNER JOIN eta ON id_eta=num_eta
WHERE id_cap=:id_cap";
$queryRequest = $db->prepare( $query );
$queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT );
$queryRequest->execute();
$count = $queryRequest->rowCount();
if($count==1){
$dataEta=$queryRequest->fetchAll();
$chxNumEta = $dataEta[0]['num_eta'];
/*
//Vérifie si le créneau existe
$query="
SELECT * FROM capitaines
INNER JOIN eta ON id_eta=num_eta
INNER JOIN agenda ON id_cap = numCap
WHERE id_cap=:id_cap
AND jour=:jour AND creneau=:creneau";;
$queryRequest = $db->prepare( $query );
$queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT );
$queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR );
$queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR );
$queryRequest->execute();
$count = $queryRequest->rowCount();
//Crée le créneau vide s'il n'existe pas pour le premier jour qui est libre par défaut)
if($count==0 && $myDay=='2019-01-17'){
$numCoLy = 0;
$statut = 'libre';
$userLastUpdate = 'cap';
$dateLastUpdate = date('Y-m-d');
$queryCreate="
INSERT INTO agenda (numCap, numCoLy, numEta, jour, creneau, statut, dateLastUpdate,userLastUpdate)
VALUES (:numCap,:numCoLy,:numEta,:jour,:creneau,:statut,:dateLastUpdate,:userLastUpdate)";
$queryRequestC = $db->prepare( $queryCreate );
$queryRequestC->bindParam( ':numCap', $_SESSION['cap_num'], PDO::PARAM_INT );
$queryRequestC->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT );
$queryRequestC->bindParam( ':numEta', $chxNumEta, PDO::PARAM_INT );
$queryRequestC->bindParam( ':jour', $myDay, PDO::PARAM_STR );
$queryRequestC->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR );
$queryRequestC->bindParam( ':statut', $statut, PDO::PARAM_STR );
$queryRequestC->bindParam( ':dateLastUpdate', $dateLastUpdate, PDO::PARAM_STR );
$queryRequestC->bindParam( ':userLastUpdate', $userLastUpdate, PDO::PARAM_STR );
$queryRequestC->execute();
}
*/
//Vérifie si le créneau est libre ou si l'on est en modification de fiche établissement
$query="
SELECT * FROM capitaines
INNER JOIN eta ON id_eta=num_eta
INNER JOIN agenda ON id_cap = numCap
WHERE id_cap=:id_cap
AND jour=:jour AND creneau=:creneau
AND (numCoLy=0 || numCoLy=:numCoLy)";
$queryRequest = $db->prepare( $query );
$queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT );
$queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR );
$queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR );
$queryRequest->bindParam( ':numCoLy', $idCoLy, PDO::PARAM_INT );
$queryRequest->execute();
$count = $queryRequest->rowCount();
//Insertion d'un créneau et réservation
if($count==1){
$data=$queryRequest->fetchAll();
$dateCreate = date('Y-m-d');
$chxNumEta = $data[0]['num_eta'];
$eta = decrypter($maCleDeCryptage,$data[0]['nom_eta']);
$capitaine = decrypter($maCleDeCryptage,$data[0]['nom_cap']);
$capitaine = mb_strtoupper($capitaine).' '.decrypter($maCleDeCryptage,$data[0]['prenom_cap']);
/**********************/
if(!empty($chxNumEta)){
if(empty($idCoLy)){
//Insertion de l'établissement
$query="
INSERT INTO collegelycee (etaCoLy, nomCoLy, prenomCoLy, fonctionCoLy, telCoLy, emlCoLy, adresse1CoLy, adresse2CoLy, cpCoLy, villeCoLy, nbClasses, nbEleves, commentCoLy, dateCreate, chxNumEta)
VALUES (:etaCoLy, :nomCoLy, :prenomCoLy, :fonctionCoLy, :telCoLy, :emlCoLy, :adresse1CoLy, :adresse2CoLy, :cpCoLy, :villeCoLy, :nbClasses, :nbEleves, :commentCoLy, :dateCreate, :chxNumEta)";
$queryRequest = $db->prepare( $query );
$queryRequest->bindParam( ':etaCoLy', $etaCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':nomCoLy', $nomCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':prenomCoLy', $prenomCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':fonctionCoLy', $fonctionCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':telCoLy', $telCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':emlCoLy', $emlCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':adresse1CoLy', $adresse1CoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':adresse2CoLy', $adresse2CoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':cpCoLy', $cpCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':villeCoLy', $villeCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':nbClasses', $nbClasses, PDO::PARAM_INT );
$queryRequest->bindParam( ':nbEleves', $nbEleves, PDO::PARAM_INT );
$queryRequest->bindParam( ':commentCoLy', $commentCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':dateCreate', $dateCreate, PDO::PARAM_STR );
$queryRequest->bindParam( ':chxNumEta', $chxNumEta, PDO::PARAM_INT );
$queryRequest->execute();
$idCoLy=$db->lastInsertId();
//Affectation au créneau
$numCoLy = $idCoLy;
$statut = 'reserve';
$userLastUpdate = 'cap';
$query="
UPDATE agenda
SET numCoLy=:numCoLy, statut=:statut, dateLastUpdate='".date('Y-m-d')."',userLastUpdate=:userLastUpdate
WHERE numCap=:numCap AND jour=:jour AND creneau=:creneau";
$queryRequest = $db->prepare( $query );
$queryRequest->bindParam( ':numCap', $_SESSION['cap_num'], PDO::PARAM_INT );
$queryRequest->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT );
$queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR );
$queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR );
$queryRequest->bindParam( ':statut', $statut, PDO::PARAM_STR );
$queryRequest->bindParam( ':userLastUpdate', $userLastUpdate, PDO::PARAM_STR );
$queryRequest->execute();
//Envoi d'un email au collège ou lycée
require 'config/class.phpmailer.php';
require 'config/phpmailer.settings.php';
$to=$_POST['emlCoLy'];
$objet="Votre évènement DECIDAY !";
$adresseCL = $_POST['adresse1CoLy'];
if(!empty($adresse2CoLy)) $adresseCL .= '
'.$_POST['adresse2CoLy'];
$adresseCL .= '
'.$_POST['cpCoLy'].' '.$_POST['villeCoLy'];
$creneauCL = "";
$creneauCL = getCreneau($myCreneau);
$affich='';
$affich.='
';
$affich.='';
$affich.='![]() | ';
$affich.='
'."\n";
$affich.='';
$affich.=' | ';
$affich.='
'."\n";
$affich.='';
$affich.='| | ';
$affich.='
'."\n";
$affich.='';
$affich.='| Bonjour, | ';
$affich.='
'."\n";
$affich.='';
$affich.='| | ';
$affich.='
'."\n";
$affich.='';
$affich.='| Dans le cadre de l\'évènement Déciday !, un créneau a été réservé pour la venue d\'un trinôme au sein de votre établissement. Vos élèves pourront donc découvrir la filière, préparer leur projet d\'orientation professionnelle et rencontrer un professionnel. | ';
$affich.='
'."\n";
$affich.='';
$affich.='| | ';
$affich.='
'."\n";
$affich.='';
$affich.='| Récapitulatif de cette rencontre : | ';
$affich.='
'."\n";
$affich.='';
$affich.='| | ';
$affich.='
'."\n";
$affich.='';
$affich.='| Jour : | '.MysqlToDateFr($myDay).' | ';
$affich.='
'."\n";
$affich.='';
$affich.='| Créneau : | '.$creneauCL.' | ';
$affich.='
'."\n";
$affich.='';
$affich.='| | ';
$affich.='
'."\n";
$affich.='';
$affich.='| Votre établissement : | '.$_POST['etaCoLy'].' | ';
$affich.='
'."\n";
$affich.='';
$affich.='| Nombre de classes : | '.$nbClasses.' | ';
$affich.='
'."\n";
$affich.='';
$affich.='| Nombre d\'élèves : | '.$nbEleves.' | ';
$affich.='
'."\n";
$affich.='';
$affich.='| | ';
$affich.='
'."\n";
$affich.='';
$affich.='| Votre interlocuteur : | '.$capitaine.' | ';
$affich.='
'."\n";
$affich.='';
$affich.='| Etablissement : | '.$eta.' | ';
$affich.='
'."\n";
$affich.='';
$affich.='| | ';
$affich.='
'."\n";
$affich.='';
$affich.='| Votre interlocuteur vous contactera pour définir les modalités de votre intervention. | ';
$affich.='
'."\n";
$affich.='';
$affich.='| | ';
$affich.='
'."\n";
$affich.='';
$affich.=' | ';
$affich.='
'."\n";
$affich.='';
$affich.='| | ';
$affich.='
'."\n";
$affich.='';
$affich.='| Cordialement. | ';
$affich.='
'."\n";
$affich.='';
$affich.='| | ';
$affich.='
'."\n";
$affich.='';
$affich.='| L\'équipe DECIDAY. | ';
$affich.='
'."\n";
$affich.='
';
$mail->IsHTML(true);
$mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg');
$mail->Subject = utf8_decode($objet);
$mail->Body = utf8_decode($affich);
$mail->AddAddress($to);
$mail->AltBody = "/-------//--------/";
$mail->send();
$_SESSION['msg']='Le créneau a bien été réservé. Un email a été envoyé sur l\'email de l\'établissement pour l\'en informer.';
}else{
//Modification de l'établissement
$query="
UPDATE collegelycee SET etaCoLy=:etaCoLy, nomCoLy=:nomCoLy, prenomCoLy=:prenomCoLy, fonctionCoLy=:fonctionCoLy, telCoLy=:telCoLy, emlCoLy=:emlCoLy, adresse1CoLy=:adresse1CoLy, adresse2CoLy=:adresse2CoLy, cpCoLy=:cpCoLy, villeCoLy=:villeCoLy, nbClasses=:nbClasses, nbEleves=:nbEleves, commentCoLy=:commentCoLy WHERE idCoLy=:idCoLy";
$queryRequest = $db->prepare( $query );
$queryRequest->bindParam( ':etaCoLy', $etaCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':nomCoLy', $nomCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':prenomCoLy', $prenomCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':fonctionCoLy', $fonctionCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':telCoLy', $telCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':emlCoLy', $emlCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':adresse1CoLy', $adresse1CoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':adresse2CoLy', $adresse2CoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':cpCoLy', $cpCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':villeCoLy', $villeCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':nbClasses', $nbClasses, PDO::PARAM_INT );
$queryRequest->bindParam( ':nbEleves', $nbEleves, PDO::PARAM_INT );
$queryRequest->bindParam( ':commentCoLy', $commentCoLy, PDO::PARAM_STR );
$queryRequest->bindParam( ':idCoLy', $idCoLy, PDO::PARAM_INT );
$queryRequest->execute();
$_SESSION['msg']='La fiche de l\'établissement a été mise à jour.';
}
}
/***************************/
}else{
$_SESSION['msg']='Le créneau n\'a pas pu être réservé car il n\'est pas disponible.';
}
header('location:agenda-cap.php');
exit();
}else{
$_SESSION['msg']='Erreur : CFA Inconnu';
}
}
//BLOCAGE OU DEBLOCAGE
if(isset($_POST['myAction']) && ($_POST['myAction']=='BL0' || $_POST['myAction']=='D3B')){
foreach($_POST as $cle=>$val){
$$cle=$val;
//echo $cle.' => '.$val.'
';
}
$db = connect_base();
$query="
SELECT * FROM capitaines
INNER JOIN eta ON id_eta=num_eta
INNER JOIN agenda ON id_cap = numCap
WHERE id_cap=:id_cap
AND jour=:jour AND creneau=:creneau";
$queryRequest0 = $db->prepare( $query );
$queryRequest0->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT );
$queryRequest0->bindParam( ':jour', $myDay, PDO::PARAM_STR );
$queryRequest0->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR );
$queryRequest0->execute();
$count = $queryRequest0->rowCount();
$data0=$queryRequest0->fetchAll();
/*if(empty($count)){
$query="
SELECT * FROM capitaines
INNER JOIN eta ON id_eta=num_eta
WHERE id_cap=:id_cap";
$queryRequest = $db->prepare( $query );
$queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT );
$queryRequest->execute();
$data=$queryRequest->fetchAll();
$numEta = $data[0]['num_eta'];
$numCoLy = 0;
if($_POST['myAction']=='BL0') $statut = 'bloque'; else $statut = 'libre';
$userLastUpdate = 'cap';
if(!empty($numEta)){
$query="
INSERT INTO agenda (numCap, numCoLy, numEta, jour, creneau, statut, dateLastUpdate,userLastUpdate)
VALUES (:numCap, :numCoLy, :numEta, :jour, :creneau, :statut, '".date('Y-m-d')."',:userLastUpdate)";
$queryRequest = $db->prepare( $query );
$queryRequest->bindParam( ':numCap', $_SESSION['cap_num'], PDO::PARAM_INT );
$queryRequest->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT );
$queryRequest->bindParam( ':numEta', $numEta, PDO::PARAM_INT );
$queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR );
$queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR );
$queryRequest->bindParam( ':statut', $statut, PDO::PARAM_STR );
$queryRequest->bindParam( ':userLastUpdate', $userLastUpdate, PDO::PARAM_STR );
$queryRequest->execute();
}
if($statut == 'bloque') $_SESSION['msg']='Le créneau a été bloqué.';
else $_SESSION['msg']='Le créneau a été débloqué.';
}else{*/
if(!empty($count)){
$msgPlus = "";
//Suppression de la réservation si déblocage de créneau
if($data0[0]['numCoLy']>0){
//echo $data0[0]['num_eta'];
//echo '';print_r($data0);echo '
';
$query="DELETE FROM collegelycee WHERE idCoLy=:idCoLy AND chxNumEta=:chxNumEta";
$queryRequest = $db->prepare( $query );
$queryRequest->bindParam( ':idCoLy', $data0[0]['numCoLy'], PDO::PARAM_INT );
$queryRequest->bindParam( ':chxNumEta', $data0[0]['num_eta'], PDO::PARAM_INT );
$queryRequest->execute();
$msgPlus = " Pensez à prévenir cet établissement que sa réservation a été annulée.";
//$data10=$queryRequest->fetchAll();
//echo '';print_r($data10);echo '
';
//exit();
};
$numCoLy = 0;
if($_POST['myAction']=='BL0') $statut = 'bloque'; else $statut = 'libre';
$userLastUpdate = 'cap';
$query="
UPDATE agenda
SET numCoLy=:numCoLy, statut=:statut, dateLastUpdate='".date('Y-m-d')."',userLastUpdate=:userLastUpdate
WHERE numCap=:numCap AND jour=:jour AND creneau=:creneau";
$queryRequest = $db->prepare( $query );
$queryRequest->bindParam( ':numCap', $_SESSION['cap_num'], PDO::PARAM_INT );
$queryRequest->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT );
$queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR );
$queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR );
$queryRequest->bindParam( ':statut', $statut, PDO::PARAM_STR );
$queryRequest->bindParam( ':userLastUpdate', $userLastUpdate, PDO::PARAM_STR );
$queryRequest->execute();
if($statut == 'bloque') $_SESSION['msg']='Le créneau a été rendu indisponible.'.$msgPlus;
else $_SESSION['msg']='Le créneau été rendu disponible.';
}else $_SESSION['msg']='Le créneau n\'a pas pu être rendu disponible.';
header('location:agenda-cap.php');
exit();
}
}
header('location:index.php?err=1');
exit();
?>