security_check(); if ($resultat_session == 'c') { header("Location: ../utilisateurs/mon_compte.php?change_mdp=yes"); die(); } else if ($resultat_session == '0') { header("Location: ../logout.php?auto=1"); die(); } if (!checkAccess()) { header("Location: ../logout.php?auto=1"); die(); } /* echo "\$is_posted=$is_posted
"; echo "\$_POST[is_posted]=".$_POST['is_posted']."
"; echo "\$_GET[is_posted]=".$_GET['is_posted']."
"; */ if((isset($_GET['acces_resp_legal_0']))&&(($_GET['acces_resp_legal_0']=='y')||($_GET['acces_resp_legal_0']=='n'))) { check_token(); $sql="UPDATE responsables2 SET acces_sp='".$_GET['acces_resp_legal_0']."' WHERE pers_id='".$_GET['pers_id']."' AND ele_id='".$_GET['ele_id']."';"; $update=mysqli_query($GLOBALS["mysqli"], $sql); if($update) { $msg="Modification de l'accès aux données pour pers_id=".$_GET['pers_id']." et ele_id=".$_GET['ele_id']." effectuée.
"; } else { $msg="Erreur lors de la modification de l'accès aux données pour pers_id=".$_GET['pers_id']." et ele_id=".$_GET['ele_id']."
"; } } if((isset($_GET['envoi_bulletin_resp_legal_0']))&&(($_GET['envoi_bulletin_resp_legal_0']=='y')||($_GET['envoi_bulletin_resp_legal_0']=='n'))) { check_token(); $sql="UPDATE responsables2 SET envoi_bulletin='".$_GET['envoi_bulletin_resp_legal_0']."' WHERE pers_id='".$_GET['pers_id']."' AND ele_id='".$_GET['ele_id']."';"; $update=mysqli_query($GLOBALS["mysqli"], $sql); if($update) { $msg="Modification de la génération ou non des bulletins pour pers_id=".$_GET['pers_id']." et ele_id=".$_GET['ele_id']." effectuée.
"; } else { $msg="Erreur lors de la modification de la génération ou non des bulletins pour pers_id=".$_GET['pers_id']." et ele_id=".$_GET['ele_id']."
"; } } if((isset($_POST['is_posted']))&&($_POST['is_posted']=="add_resp_legal_0")&&(isset($_POST['pers_id']))) { check_token(); $msg=""; $add_ele_id_resp_legal_0=isset($_POST['add_ele_id_resp_legal_0']) ? $_POST['add_ele_id_resp_legal_0'] : array(); $cpt=0; for($loop=0;$loop0) { $msg.="Le responsable est déjà associé à l'élève n°".$add_ele_id_resp_legal_0[$loop].".
"; } else { $sql="INSERT INTO responsables2 SET pers_id='".$_POST['pers_id']."', ele_id='".$add_ele_id_resp_legal_0[$loop]."', resp_legal='0';"; $insert=mysqli_query($GLOBALS["mysqli"], $sql); if($insert) { $cpt++; } else { $msg.="Erreur lors de l'association avec l'élève n°".$add_ele_id_resp_legal_0[$loop].".
"; } } } $msg.=$cpt." élève(s) associé(s) à ce responsable en qualité de \"responsable\" non légal.
"; } if (isset($is_posted) and ($is_posted == '1')) { check_token(); $msg=""; //$adr_id_existant=isset($_POST['adr_id_existant']) ? $_POST['adr_id_existant'] : ''; //echo "\$choisir_ad_existante=$choisir_ad_existante
"; $choisir_ad_existante=isset($_POST['choisir_ad_existante']) ? $_POST['choisir_ad_existante'] : ''; //echo "\$choisir_ad_existante=$choisir_ad_existante
"; $tab_nom_prenom_resp=isset($_POST['tab_nom_prenom_resp']) ? $_POST['tab_nom_prenom_resp'] : NULL; $ok=''; if((isset($add_ele_id))&&(isset($pers_id))) { $ok='yes'; } elseif((isset($tab_nom_prenom_resp))&&(($resp_nom=='')||($resp_prenom==''))) { $ok='no'; } else { if($choisir_ad_existante=='oui') { // On crée la personne si elle n'existe pas et on enchaine avec la page choix_adr_existante.php $ok='yes'; } else { if(!isset($_POST['resp_legal'])) { $tester_validite_adresse="n"; $ok='yes'; } else { $tester_validite_adresse="y"; if(is_array($_POST['resp_legal'])) { $tmp_resp_legal=$_POST['resp_legal']; $tester_validite_adresse="n"; $ok='yes'; for($loop=0;$loop0) { $compte_resp_existe="y"; $lig_login=mysqli_fetch_object($test1_login); $resp_login=$lig_login->login; } $sql="UPDATE resp_pers SET nom='$resp_nom', prenom='$resp_prenom', civilite='$civilite', tel_pers='$tel_pers', tel_port='$tel_port', tel_prof='$tel_prof'"; // On permet de modifier l'adresse mail même si on est en mode mon_compte (quand on modifie, c'est alors pour dépanner) //if((getSettingValue('mode_email_resp')!='mon_compte')&&($compte_resp_existe=='y')&&(isset($mel))) { if(($compte_resp_existe=='y')&&(isset($mel))) { $sql.=",mel='$mel'"; } /* //if($adr_id_existant!=""){ if((isset($select_ad_existante))&&($adr_id_existant!="")){ $adr_id=$adr_id_existant; $sql.=",adr_id='$adr_id'"; } */ $sql.=" WHERE pers_id='$pers_id'"; //echo "$sql
\n"; $res_update=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res_update){ $msg.="Erreur lors de la mise à jour dans 'resp_pers'. "; } else { // On met également à jour la table utilisateurs si le responsable a un compte $test1_login = old_mysql_result(mysqli_query($GLOBALS["mysqli"], "SELECT login FROM resp_pers WHERE pers_id = '$pers_id'"), 0); //echo "\$test1_login=$test1_login
\n"; if ($test1_login != '') { $sql="SELECT count(login) FROM utilisateurs WHERE login = '".$test1_login."'"; //echo "$sql
\n"; $test2_login = old_mysql_result(mysqli_query($GLOBALS["mysqli"], $sql), 0); if ($test2_login == 1) { $sql="UPDATE utilisateurs SET nom = '".$resp_nom."', prenom = '" . $resp_prenom . "', civilite='$civilite'"; //if((getSettingValue('mode_email_resp')!='mon_compte')&&(isset($mel))) { if(isset($mel)) { $sql.=", email = '" . $mel . "'"; } $sql.=" WHERE login ='" . $test1_login ."'"; //echo "$sql
\n"; $res = mysqli_query($GLOBALS["mysqli"], $sql); } } } if(($_SESSION['statut']=='administrateur')&&(isset($_POST['login_sso']))&&(isset($resp_login))&&($resp_login!="")) { $enregistrer_sso_corresp="y"; if($_POST['login_sso']!="") { $sql="SELECT login_gepi FROM sso_table_correspondance WHERE login_sso='".$_POST['login_sso']."' AND login_gepi!='".$resp_login."';"; $res_sso=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_sso)>0) { $lig_sso=mysqli_fetch_object($res_sso); $sql="SELECT * FROM utilisateurs WHERE login='".$lig_sso->login_gepi."';"; $test_user=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test_user)>0) { $lig_user=mysqli_fetch_object($test_user); $msg.="ANOMALIE : La correspondance SSO proposée ".$_POST['login_sso']." est déjà attribuée "; if($lig_user->statut=="eleve") { $msg.=" à l'élève ".$lig_sso->login_gepi.""; } elseif($lig_user->statut=="responsable") { $msg.=" au responsable ".$lig_sso->login_gepi.""; } else { $msg.=" au personnel ".$lig_sso->login_gepi.""; } $msg.="
Vous devriez faire le ménage pour ne conserver qu'une seule association.
"; $enregistrer_sso_corresp="n"; } else { $sql="SELECT * FROM eleves WHERE login='".$lig_sso->login_gepi."';"; $test_user=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test_user)>0) { $lig_user=mysqli_fetch_object($test_user); $msg.="ANOMALIE : La correspondance SSO proposée ".$_POST['login_sso']." est déjà attribuée "; $msg.=" à l'élève ".$lig_sso->login_gepi.""; $msg.="
Vous devriez faire le ménage pour ne conserver qu'une seule association.
"; $enregistrer_sso_corresp="n"; } else { $sql="SELECT * FROM resp_pers WHERE login='".$lig_sso->login_gepi."';"; $test_user=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test_user)>0) { $lig_user=mysqli_fetch_object($test_user); $msg.="ANOMALIE : La correspondance SSO proposée ".$_POST['login_sso']." est déjà attribuée "; $msg.=" au responsable ".$lig_sso->login_gepi.""; $msg.="
Vous devriez faire le ménage pour ne conserver qu'une seule association.
"; $enregistrer_sso_corresp="n"; } else { $sql="DELETE FROM sso_table_correspondance WHERE login_gepi='".$lig_sso->login_gepi."';"; $menage=mysqli_query($GLOBALS["mysqli"], $sql); $msg.="Suppression d'une scorie :
La correspondance SSO proposée ".$_POST['login_sso']." était associée au login ".$lig_sso->login_gepi." qui n'existe plus dans la table 'utilisateurs'.
"; } } } } } if($enregistrer_sso_corresp=="y") { $sql="SELECT login_sso FROM sso_table_correspondance WHERE login_gepi='".$resp_login."';"; $res_sso=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_sso)>0) { $lig_sso=mysqli_fetch_object($res_sso); if($lig_sso->login_sso!=$_POST['login_sso']) { $sql="UPDATE sso_table_correspondance SET login_sso='".$_POST['login_sso']."' WHERE login_gepi='".$resp_login."';"; $update=mysqli_query($GLOBALS["mysqli"], $sql); if(!$update) { $msg.="Erreur lors de la mise à jour de la correspondance SSO.
"; } } } else { $sql="INSERT INTO sso_table_correspondance SET login_sso='".$_POST['login_sso']."', login_gepi='".$resp_login."';"; $insert=mysqli_query($GLOBALS["mysqli"], $sql); if(!$insert) { $msg.="Erreur lors de l'enregistrement de la correspondance SSO.
"; } } } } } // On n'insère pas les saisies des champs adr1, adr2,... si une adresse existante a été sélectionnée: //if($adr_id_existant==""){ if($choisir_ad_existante==""){ //echo "a
"; //if(isset($changement_adresse)){ if((isset($changement_adresse))&&(isset($tab_nom_prenom_resp))) { //echo "b
"; if($changement_adresse=="desolidariser"){ //echo "c
"; // Recherche du plus grand adr_id $sql="SELECT adr_id FROM resp_adr WHERE adr_id LIKE 'a%' ORDER BY adr_id DESC"; //echo "$sql
\n"; $res1=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res1)==0){ //$adr_id="a1"; $adr_id="a".sprintf("%09d","1"); } else{ $ligtmp=mysqli_fetch_object($res1); $nb=mb_substr($ligtmp->adr_id,1); $nb++; //$adr_id="a".$nb; $adr_id="a".sprintf("%09d",$nb); } $sql="INSERT INTO resp_adr SET adr1='$adr1', adr2='$adr2', adr3='$adr3', adr4='$adr4', cp='$cp', commune='$commune', pays='$pays', adr_id='$adr_id'"; //echo "$sql
\n"; $res_insert=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res_insert){ $msg.="Erreur lors de l'insertion de la nouvelle adresse. "; } else{ $sql="UPDATE resp_pers SET adr_id='$adr_id' "; $sql.="WHERE pers_id='$pers_id'"; //echo "$sql
\n"; $res_update=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res_update){ $msg.="Erreur lors de la mise à jour de l'identifiant d'adresse dans 'resp_pers'. "; } } } elseif(isset($adr_id)){ $sql="UPDATE resp_adr SET adr1='$adr1', adr2='$adr2', adr3='$adr3', adr4='$adr4', cp='$cp', commune='$commune', pays='$pays' WHERE adr_id='$adr_id'"; //echo "$sql
\n"; $res_update=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res_update){ $msg.="Erreur lors de la mise à jour de l'adresse dans 'resp_adr'. "; } } } elseif(isset($adr_id)){ $sql="UPDATE resp_adr SET adr1='$adr1', adr2='$adr2', adr3='$adr3', adr4='$adr4', cp='$cp', commune='$commune', pays='$pays' WHERE adr_id='$adr_id'"; //echo "$sql
\n"; $res_update=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res_update){ $msg.="Erreur lors de la mise à jour de l'adresse dans 'resp_adr'. "; } } } else{ // On redirige vers choix_adr_existante.php header("Location: choix_adr_existante.php?pers_id=$pers_id"); die(); } // Partie élèves: //if(isset($cpt)){ //if((isset($cpt))&&(isset($pers_id))&&($msg=='')){ if((isset($cpt))&&(isset($pers_id))&&($msg=='')&&(isset($tab_nom_prenom_resp))) { //echo "1
"; for($i=0;$i<$cpt;$i++){ //echo " $i
"; if(isset($suppr_ele_id[$i])){ //echo "\$suppr_ele_id[$i]=".$suppr_ele_id[$i]."
"; $sql="DELETE FROM responsables2 WHERE pers_id='$pers_id' AND ele_id='$suppr_ele_id[$i]'"; //echo "$sql
\n"; $res_suppr=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res_suppr){ $msg.="Erreur lors de la suppression de l'association avec l'élève $suppr_ele_id[$i] dans 'responsables2'. "; } } else { //if(!isset($resp_erreur[$i])){ // On ne cherche pas à modifier les resp_legal if($resp_legal[$i]==0) { $sql="UPDATE responsables2 SET resp_legal='$resp_legal[$i]' WHERE pers_id='$pers_id' AND ele_id='$ele_id[$i]'"; //echo "$sql
\n"; $res_update=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res_update){ $msg.="Erreur lors de la mise à jour de 'resp_legal' pour le responsable $pers_id. "; } } else { // Pour le responsable affiché, on vient de soumettre $resp_legal[$i] pour l'élève $i if($resp_legal[$i]==1){$resp_legal2=2;}else{$resp_legal2=1;} $temoin_erreur="non"; //if(isset($pers_id2[$i])){ if(isset($_POST['pers_id2_'.$i])){ $tmp_pers_id2=$_POST['pers_id2_'.$i]; for($loop=0;$loop\n"; $res_update=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res_update){ $msg.="Erreur lors de la mise à jour de 'resp_legal' pour l'autre responsable (".$tmp_pers_id2[$loop]."). "; $temoin_erreur="oui"; } } else { $sql="UPDATE responsables2 SET resp_legal='0' WHERE pers_id='".$tmp_pers_id2[$loop]."' AND ele_id='$ele_id[$i]'"; //echo "$sql
\n"; $res_update=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res_update){ $msg.="Erreur lors de la mise à jour de 'resp_legal' pour l'autre responsable (".$tmp_pers_id2[$loop]."). "; $temoin_erreur="oui"; } else { $msg.="Il y avait trop de responsables légaux.
Le responsable n°".$tmp_pers_id2[$loop]." est rendu responsable non légal. "; } } } } if($temoin_erreur!="oui"){ $sql="UPDATE responsables2 SET resp_legal='$resp_legal[$i]' WHERE pers_id='$pers_id' AND ele_id='$ele_id[$i]'"; //echo "$sql
\n"; $res_update=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res_update){ $msg.="Erreur lors de la mise à jour de 'resp_legal' pour le responsable $pers_id. "; } } } } } } if((isset($add_ele_id))&&(isset($pers_id))&&($msg=='')){ if($add_ele_id!=''){ $sql="SELECT 1=1 FROM responsables2 WHERE pers_id!='$pers_id' AND ele_id='$add_ele_id'"; $test=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test)==0){ $resp_legal=1; } else{ $sql="SELECT resp_legal FROM responsables2 WHERE ele_id='$add_ele_id'"; $res_tmp=mysqli_query($GLOBALS["mysqli"], $sql); $ligtmp=mysqli_fetch_object($res_tmp); if($ligtmp->resp_legal==1){$resp_legal=2;}else{$resp_legal=1;} } $sql="INSERT INTO responsables2 SET pers_id='$pers_id', ele_id='$add_ele_id', resp_legal='$resp_legal'"; $res_update=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res_update){ $msg.="Erreur lors de l'ajout de l'élève $add_ele_id. "; } } } } else{ // Nouveau responsable: // Recherche du plus grand pers_id $sql="SELECT pers_id FROM resp_pers WHERE pers_id LIKE 'p%' ORDER BY pers_id DESC"; //echo "$sql
\n"; $res1=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res1)==0){ //$pers_id="p1"; $pers_id="p".sprintf("%09d","1"); } else{ $ligtmp=mysqli_fetch_object($res1); $nb=mb_substr($ligtmp->pers_id,1); $nb++; //$pers_id="p".$nb; $pers_id="p".sprintf("%09d",$nb); } // Insertion du nouvel utilisateur dans resp_pers: $sql="INSERT INTO resp_pers SET pers_id='$pers_id', nom='$resp_nom', prenom='$resp_prenom', civilite='$civilite', tel_pers='$tel_pers', tel_port='$tel_port', tel_prof='$tel_prof', mel='$mel'"; //echo "$sql
\n"; $res_insert=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res_insert){ $msg.="Erreur lors de l'insertion dans 'resp_pers'. "; } else{ //if($adr_id_existant==""){ //if((!isset($select_ad_existante))||($adr_id_existant=="")){ if($choisir_ad_existante==""){ //echo "

1

"; // Recherche du plus grand adr_id $sql="SELECT adr_id FROM resp_adr WHERE adr_id LIKE 'a%' ORDER BY adr_id DESC"; //echo "$sql
\n"; $res1=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res1)==0){ //$adr_id="a1"; $adr_id="a".sprintf("%09d","1"); } else{ $ligtmp=mysqli_fetch_object($res1); $nb=mb_substr($ligtmp->adr_id,1); $nb++; //$adr_id="a".$nb; $adr_id="a".sprintf("%09d",$nb); } if(isset($adr_id)){ $sql="INSERT INTO resp_adr SET adr1='$adr1', adr2='$adr2', adr3='$adr3', adr4='$adr4', cp='$cp', commune='$commune', pays='$pays', adr_id='$adr_id'"; //echo "$sql
\n"; $res_insert=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res_insert){ $msg.="Erreur lors de l'insertion de l'adresse dans 'resp_adr'. "; } else{ $sql="UPDATE resp_pers SET adr_id='$adr_id' WHERE pers_id='$pers_id'"; $res_update=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res_update){ $msg.="Erreur lors de la mise à jour de l'association de la personne avec son adresse. "; } } } } else{ //$adr_id=$adr_id_existant; //echo "

2

"; // On redirige vers choix_adr_existante.php header("Location: choix_adr_existante.php?pers_id=$pers_id"); die(); } } } if($msg==""){ $msg="Enregistrement réussi (".strftime("Le %d/%m/%Y à %H:%M:%S").")."; } } } $themessage = 'Des informations ont été modifiées. Voulez-vous vraiment quitter sans enregistrer ?'; //**************** EN-TETE ******************************* $titre_page = "Ajouter ou modifier un responsable"; require_once("../lib/header.inc.php"); //**************** FIN EN-TETE *************************** //debug_var(); if(!getSettingValue('conv_new_resp_table')){ $sql="SELECT 1=1 FROM responsables"; $test=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test)>0){ echo "

Une conversion des données responsables est requise.

\n"; echo "

Suivez ce lien: CONVERTIR

\n"; require("../lib/footer.inc.php"); die(); } $sql="SHOW COLUMNS FROM eleves LIKE 'ele_id'"; $test=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test)==0){ echo "

Une conversion des données élèves/responsables est requise.

\n"; echo "

Suivez ce lien: CONVERTIR

\n"; require("../lib/footer.inc.php"); die(); } else{ $sql="SELECT 1=1 FROM eleves WHERE ele_id=''"; $test=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test)>0){ echo "

Une conversion des données élèves/responsables est requise.

\n"; echo "

Suivez ce lien: CONVERTIR

\n"; require("../lib/footer.inc.php"); die(); } } } // &quitter_la_page=y echo "\n"; if(isset($associer_eleve)) { if(!isset($quitter_la_page)){ if (!isset($pers_id)) { echo "

Retour Retour"; echo "

ERREUR: Aucun identifiant de responsable n'a été fourni.

\n"; require("../lib/footer.inc.php"); die(); } echo "

Retour Retour"; echo "

\n"; } else { if (!isset($pers_id)) { //echo "

Refermer la page

\n"; echo "\n"; echo "

Refermer la page\n"; echo "

ERREUR: Aucun identifiant de responsable n'a été fourni.

\n"; require("../lib/footer.inc.php"); die(); } //if($_SESSION['statut']=="administrateur"){ //echo "

Refermer la page

\n"; // window.opener.location.href='../eleves/modify_eleve.php?var=rien&v echo "

Refermer la page

\n"; /* } else{ echo "

Refermer la page

\n"; } */ } // AFFICHER LE RESPONSABLE COURANT $sql="SELECT rp.* FROM resp_pers rp WHERE rp.pers_id='$pers_id'"; //echo "$sql
\n"; $res_resp=mysqli_query($GLOBALS["mysqli"], $sql); $lig_pers=mysqli_fetch_object($res_resp); $sql="SELECT DISTINCT e.ele_id,e.nom,e.prenom,e.login FROM eleves e ORDER BY e.nom,e.prenom"; $res_ele=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_ele)==0){ echo "

Il semblerait qu'aucun élève ne soit encore dans la base.

\n"; require("../lib/footer.inc.php"); die(); } echo "

".casse_mot($lig_pers->prenom,'majf2')." ".my_strtoupper($lig_pers->nom)."

\n"; $tab_anomalie_ele_id=array(); $compteur=0; while($lig_ele=mysqli_fetch_object($res_ele)){ // On ne propose que les élèves n'ayant pas déjà leurs deux responsables légaux //$sql="SELECT * FROM responsables2 WHERE ele_id='$lig_ele->ele_id'"; $sql="SELECT * FROM responsables2 WHERE ele_id='$lig_ele->ele_id' AND (resp_legal='1' OR resp_legal='2')"; $test=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test)<2){ if($compteur==0){ echo "
\n"; echo "
\n"; echo add_token_field(); echo "\n"; if(isset($quitter_la_page)) { echo "\n"; } echo "

Sélectionner l'élève à associer à ".casse_mot($lig_pers->prenom,'majf2')." ".my_strtoupper($lig_pers->nom)." en qualité de responsable légal 1 ou 2
\n"; //echo "

\n"; echo "\n"; echo "
\n($compteur élèves n'ont pas leurs deux responsables légaux)\n"; echo "

\n"; echo "
\n"; echo "\n"; echo "
\n"; echo "
\n"; echo "
"; } else{ echo "

Tous les élèves ont leur deux responsables légaux.

\n"; } //====================================== $sql="SELECT DISTINCT e.* FROM eleves e, responsables2 r WHERE e.ele_id=r.ele_id AND r.pers_id!='".$pers_id."' ORDER BY e.nom, e.prenom;"; //echo "$sql
\n"; $res_ele=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_ele)>0) { echo "

Sélectionner un ou des élèves à associer à ".casse_mot($lig_pers->prenom,'majf2')." ".my_strtoupper($lig_pers->nom)." en qualité de responsable non légal (contact)
".add_token_field()." ".((isset($quitter_la_page)) ? "" : "")." "; $cpt=0; while($lig_ele=mysqli_fetch_object($res_ele)){ echo " "; $cpt++; } echo "
Cocher Id Nom Prénom Naissance

"; } //====================================== if(count($tab_anomalie_ele_id)>0) { echo "

ANOMALIE : Un ou des élèves n'ont pas d'ELE_ID.
Comment avez-vous initialisé/importé/créé ces élèves ?
En voici la liste :

"; echo "\n"; } require("../lib/footer.inc.php"); die(); } if(!isset($quitter_la_page)){ echo "

Retour Retour"; echo " | Ajouter un responsable"; echo ""; } else { //if($_SESSION['statut']=="administrateur"){ //echo "

Refermer la page\n"; echo "\n"; echo "

Refermer la page\n"; /* } else{ echo "

Refermer la page\n"; } */ echo " | Ajouter un responsable"; } echo "

\n"; echo "
\n"; echo add_token_field(); if(isset($quitter_la_page)) { echo "\n"; } if ((!isset($pers_id))&&(isset($login_resp))&&($login_resp!="")) { $sql="SELECT pers_id FROM resp_pers WHERE login='$login_resp';"; $res_pers_id=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_pers_id)>0) { $pers_id=old_mysql_result($res_pers_id, 0, "pers_id"); } } //$temoin_compte_utilisateur="n"; $temoin_adr=0; //if (isset($ereno)) { if (isset($pers_id)) { echo "\n"; // Recherche des infos sur le responsable: /* $sql="SELECT ra.*,rp.nom,rp.prenom,rp.tel_pers,rp.tel_port,rp.tel_prof,rp.mel FROM resp_pers rp, resp_adr ra WHERE rp.adr_id=ra.adr_id AND rp.pers_id='$pers_id'"; */ $sql="SELECT rp.* FROM resp_pers rp WHERE rp.pers_id='$pers_id'"; //echo "$sql
\n"; $res_resp=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_resp)==0) { echo "

Erreur : Aucun responsable n'est (plus) associé au n°$pers_id dans la table 'resp_pers'.

\n"; require("../lib/footer.inc.php"); die(); } $lig_pers=mysqli_fetch_object($res_resp); $resp_login_tmp=$lig_pers->login; $resp_nom=$lig_pers->nom; $resp_prenom=$lig_pers->prenom; $civilite=$lig_pers->civilite; $tel_pers=$lig_pers->tel_pers; $tel_port=$lig_pers->tel_port; $tel_prof=$lig_pers->tel_prof; $mel=$lig_pers->mel; $mel_resp_pers=$lig_pers->mel; if(getSettingValue('mode_email_resp')=='mon_compte') { $sql="SELECT email FROM utilisateurs WHERE login='$resp_login_tmp' and statut='responsable';"; $res_email_utilisateur_resp=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_email_utilisateur_resp)>0) { $lig_email_utilisateur_resp=mysqli_fetch_object($res_email_utilisateur_resp); if($lig_email_utilisateur_resp->email!=$mel) { $sql="UPDATE resp_pers SET mel='$lig_email_utilisateur_resp->email' WHERE login='$resp_login_tmp' and statut='responsable';"; $update_email=mysqli_query($GLOBALS["mysqli"], $sql); if($update_email) {echo "Adresse mail mise à jour d'après celle du compte d'utilisateur.
";} } $mel=$lig_email_utilisateur_resp->email; //$temoin_compte_utilisateur="y"; } } $sql="SELECT ra.* FROM resp_adr ra WHERE ra.adr_id='$lig_pers->adr_id'"; //echo "$sql
\n"; $res_adr=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_adr)>0){ $lig_adr=mysqli_fetch_object($res_adr); //echo "adr_id="; echo "\n"; $adr_id=$lig_adr->adr_id; $adr1=$lig_adr->adr1; $adr2=$lig_adr->adr2; $adr3=$lig_adr->adr3; $adr4=$lig_adr->adr4; $cp=$lig_adr->cp; $pays=$lig_adr->pays; $commune=$lig_adr->commune; $temoin_adr=1; } } else{ echo "\n"; } // Initialisation des variables, si nécessaire: if (!isset($resp_nom)) $resp_nom=''; if (!isset($resp_prenom)) $resp_prenom=''; if (!isset($civilite)) $civilite=''; if (!isset($adr1)) $adr1=''; if (!isset($adr2)) $adr2=''; if (!isset($adr3)) $adr3=''; if (!isset($adr4)) $adr4=''; if (!isset($commune)) $commune=''; if (!isset($cp)) $cp=''; if (!isset($pays)) $pays=''; if (!isset($tel_pers)) $tel_pers=''; if (!isset($tel_port)) $tel_port=''; if (!isset($tel_prof)) $tel_prof=''; if (!isset($mel)) $mel=''; $AccesDetailConnexionResp=false; echo "\n"; echo "\n"; // Colonne nom, prénom, adresse, tel du responsable: echo "\n"; // Colonne élève et conjoint: echo "\n"; echo "\n"; echo "
\n"; // Témoin pour faire le distingo entre l'ajout/modif de responsable et l'association avec un élève echo "\n"; // Affichage du tableau de la saisie des nom, prenom, adresse, tel,... echo "

Responsable :\n"; if(isset($pers_id)){ echo " (n°$pers_id)"; $sql="SELECT u.login, u.email, u.auth_mode FROM utilisateurs u, resp_pers rp WHERE rp.login=u.login AND rp.pers_id='$pers_id' AND u.login!='';"; $test_compte=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test_compte)>0) { $compte_resp_existe="y"; $lig_resp_login=mysqli_fetch_object($test_compte); $resp_login=$lig_resp_login->login; $resp_u_email=$lig_resp_login->email; $resp_auth_mode=$lig_resp_login->auth_mode; $AccesDetailConnexionResp=AccesInfoResp('AccesDetailConnexionResp', $resp_login); if($_SESSION['statut']=='administrateur') {$avec_lien="y";} else {$avec_lien="n";} $lien_image_compte_utilisateur=lien_image_compte_utilisateur($resp_login, "responsable", "_blank", $avec_lien); if($_SESSION['statut']=='administrateur') { echo " ($resp_login"; if($lien_image_compte_utilisateur!="") {echo " ".$lien_image_compte_utilisateur;} echo ")"; } else { echo " ($resp_login"; if($lien_image_compte_utilisateur!="") {echo " ".$lien_image_compte_utilisateur;} echo ")"; } echo temoin_compte_sso($resp_login); } else { $compte_resp_existe="n"; if($_SESSION['statut']=="administrateur") { $tmp_tab=get_enfants_from_pers_id($pers_id, 'simple', "n"); if(count($tmp_tab)>0) { echo " "; } elseif(getSettingAOui('GepiMemesDroitsRespNonLegaux')) { // Il ne faut pas "yy" parce que le droit spécial ne peut être donné qu'une fois le compte créé. $tmp_tab=get_enfants_from_pers_id($pers_id, 'simple', "y"); /* echo "

";
					print_r($tmp_tab);
					echo "
"; */ if(count($tmp_tab)>0) { echo " "; } } } } if(($compte_resp_existe=="y")&& ($AccesDetailConnexionResp) ) { $journal_connexions=isset($_POST['journal_connexions']) ? $_POST['journal_connexions'] : (isset($_GET['journal_connexions']) ? $_GET['journal_connexions'] : 'n'); $duree=isset($_POST['duree']) ? $_POST['duree'] : NULL; echo " Journal des connexions\n"; } } echo "

\n"; echo "\n"; if((isset($compte_resp_existe))&&($compte_resp_existe=="y")&&(isset($resp_login))&&($_SESSION['statut']=='administrateur')&&(getSettingAOui('sso_cas_table'))) { $sso_table_login_ent=""; if((isset($resp_login))&&($resp_login!='')) { $sso_table_login_ent=get_valeur_champ('sso_table_correspondance', "login_gepi='$resp_login'", 'login_sso'); } elseif(isset($_POST['login_sso'])) {$sso_table_login_ent=$_POST['login_sso'];} echo " "; } echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "
Correspondance SSO :
Nom * :
Prénom * :
Civilité : \n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "
\n"; // AFFICHER AVEC JAVASCRIPT CE QUI EST ENREGISTRé/SAISI... echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "
\n"; echo "
Tel.perso : "; if((isset($tel_pers))&&(mb_substr($tel_pers,0,3)=="+33")) { echo "
soit ".affiche_numero_tel_sous_forme_classique($tel_pers); } echo "
Tel.portable : "; if((isset($tel_port))&&(mb_substr($tel_port,0,3)=="+33")) { echo "
soit ".affiche_numero_tel_sous_forme_classique($tel_port); } echo "
Tel.professionnel : "; if((isset($tel_prof))&&(mb_substr($tel_prof,0,3)=="+33")) { echo "
soit ".affiche_numero_tel_sous_forme_classique($tel_prof); } echo "
Mel : \n"; if(isset($compte_resp_existe)&&($compte_resp_existe=="y")&&(getSettingValue('mode_email_resp')=='mon_compte')) { // Faudrait-il quand même permettre la saisie en mode mon_compte si le mail est vide? // Pour permettre une récupération de mot de passe? echo ""; if((isset($mel_resp_pers))&&($mel_resp_pers!=$resp_u_email)&&($mel_resp_pers!="")) { $precision_sur_mails="
('$resp_u_email'Choix mel saisi par le responsable
dans Gérer mon compte
et '$mel_resp_pers' dans la table resp_pers (saisi ici ou dans Sconet)"; $precision_sur_mails.="
Le choix de paramétrage de l'établissement consiste à utiliser plutôt l'email saisi par l'utilisateur que celui éventuellement fourni lors de l'inscription dans l'établissement.
Cliquez sur Enregistrer pour valider la prise en compte du mot de passe saisi par l'utilisateur dans Gérer mon compte.
)"; } } else { echo ""; if((isset($resp_u_email))&&($mel!=$resp_u_email)&&($resp_u_email!="")) { $precision_sur_mails="
('$resp_u_email'Choix mel saisi par le responsable et '$mel' dans la table resp_pers)"; $precision_sur_mails="
('$resp_u_email'Choix mel saisi par le responsable
dans Gérer mon compte
et '$mel' dans la table resp_pers (saisi ici ou dans Sconet)
)"; } } if($mel!='') { $tmp_date=getdate(); echo " "; echo "Envoyer un courriel"; echo ""; } if(isset($precision_sur_mails)) {echo $precision_sur_mails;} echo "
\n"; echo "
\n"; if(isset($pers_id)){ // Enfants/élèves à charge: //$sql="SELECT DISTINCT ele_id FROM responsables2 WHERE pers_id='$pers_id'"; //$sql="SELECT e.nom,e.prenom,e.ele_id,r.resp_legal FROM responsables2 r, eleves e WHERE e.ele_id=r.ele_id AND r.pers_id='$pers_id' ORDER BY e.nom,e.prenom;"; //$sql="SELECT e.nom,e.prenom,e.login,e.ele_id,r.resp_legal FROM responsables2 r, eleves e WHERE (e.ele_id=r.ele_id AND r.pers_id='$pers_id' AND (r.resp_legal='1' OR r.resp_legal='2')) ORDER BY e.nom,e.prenom;"; $sql="SELECT e.nom,e.prenom,e.login,e.ele_id,r.resp_legal, r.acces_sp, r.envoi_bulletin FROM responsables2 r, eleves e WHERE (e.ele_id=r.ele_id AND r.pers_id='$pers_id') ORDER BY e.nom,e.prenom;"; //echo "$sql
\n"; $res1=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res1)==0){ echo "

Ce responsable n'est encore rattaché à aucun élève.

\n"; } else{ echo "

Elève:

\n"; //echo "\n"; echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; $cpt=0; $alt=-1; while($lig_ele=mysqli_fetch_object($res1)){ $alt=$alt*(-1); echo "\n"; echo "\n"; $resp_legal1=$lig_ele->resp_legal; // Y a-t-il un deuxième responsable? //$sql="SELECT rp.nom,rp.prenom,rp.pers_id FROM resp_pers rp, responsables2 r WHERE (rp.pers_id!='$pers_id' AND r.pers_id=rp.pers_id AND r.ele_id='$lig_ele->ele_id' AND (r.resp_legal='1' OR r.resp_legal='2'));"; $sql="SELECT rp.nom,rp.prenom,rp.pers_id, r.resp_legal FROM resp_pers rp, responsables2 r WHERE (rp.pers_id!='$pers_id' AND r.pers_id=rp.pers_id AND r.ele_id='$lig_ele->ele_id') ORDER BY r.resp_legal='1' DESC;"; //echo "$sql
\n"; $res_resp=mysqli_query($GLOBALS["mysqli"], $sql); // S'il n'y a pas de deuxième responsable et que le responsable déclaré n'est pas le n°1: if((mysqli_num_rows($res_resp)==0)&&($resp_legal1!=1)){ $tmpbg="background-color:red;"; } else{ $tmpbg=""; } echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; $cpt++; } echo "
ElèveResponsable legalSupprimerAutre responsable
120
".ucfirst(mb_strtolower($lig_ele->prenom))." ".mb_strtoupper($lig_ele->nom); $tmp_clas=get_class_from_ele_login($lig_ele->login); if(isset($tmp_clas['liste_nbsp'])) { echo " (".$tmp_clas['liste_nbsp'].")"; } echo ""; if(mysqli_num_rows($res_resp)>0){ echo ""; } echo ""; if(mysqli_num_rows($res_resp)>0){ echo ""; if($resp_legal1==0){ // 20121213 if(isset($compte_resp_existe)&&($compte_resp_existe=="y")) { if($lig_ele->acces_sp=='y') { echo " ele_id."&acces_resp_legal_0=n".add_token_in_url()."'"; echo " onclick=\"return confirm_abandon (this, change, '$themessage')\""; echo ">"; } else { echo " ele_id."&acces_resp_legal_0=y".add_token_in_url()."'"; echo " onclick=\"return confirm_abandon (this, change, '$themessage')\""; echo ">"; } } if($lig_ele->envoi_bulletin=='y') { echo " ele_id."&envoi_bulletin_resp_legal_0=n".add_token_in_url()."'"; echo " onclick=\"return confirm_abandon (this, change, '$themessage')\""; echo ">"; } else { echo " ele_id."&envoi_bulletin_resp_legal_0=y".add_token_in_url()."'"; echo " onclick=\"return confirm_abandon (this, change, '$themessage')\""; echo ">"; } } } echo "\n"; if(mysqli_num_rows($res_resp)>0){ $nb_resp_legaux_1=0; if($resp_legal1==1) {$nb_resp_legaux_1++;} $nb_resp_legaux_2=0; if($resp_legal1==2) {$nb_resp_legaux_2++;} $affichage_message_erreur_resp_legaux=0; while($lig_resp=mysqli_fetch_object($res_resp)){ if($lig_resp->resp_legal==2) { $nb_resp_legaux_2++; } if($lig_resp->resp_legal==1) { $nb_resp_legaux_1++; } if(($affichage_message_erreur_resp_legaux==0)&&(($nb_resp_legaux_1>1)||($nb_resp_legaux_2>1))) { //echo "\n"; // 20121213 : A FAIRE: CA BUGGUE AVEC L'AFFICHAGE DES RESP_LEGAL=0 echo "L'élève a trop de responsables légaux. Faites le ménage!
\n"; $affichage_message_erreur_resp_legaux++; } echo "".mb_strtoupper($lig_resp->nom)." ".ucfirst(mb_strtolower($lig_resp->prenom))."($lig_resp->resp_legal)\n"; //if(($lig_resp->resp_legal==2)&&($nb_resp_legaux_2<=1)) { //if(($nb_resp_legaux_1<=1)&&($nb_resp_legaux_2<=1)) { if(($lig_resp->resp_legal==1)||($lig_resp->resp_legal==2)) { //echo "\n"; echo "\n"; } echo "
"; } } echo "
\n"; echo "\n"; //$sql="SELECT * FROM resp_pers rp, responsables2 r WHERE rp.pers_id=r.pers_id AND r.resp_legal!='1' AND r.resp_legal!='2' AND r.ele_id="; echo "
\n"; } } if(isset($pers_id)) { // Ajout de l'association avec un élève existant: echo "

Ajouter l'association avec un élève

\n"; } echo "
\n"; //============================================== // Infos compte utilisateur if((isset($compte_resp_existe))&&($compte_resp_existe=="y")&&(isset($resp_login))&&(isset($resp_auth_mode))&& ( ($_SESSION['statut']=="administrateur")|| (($_SESSION['statut']=='scolarite')&&(getSettingAOui('ScolResetPassResp')))|| (($_SESSION['statut']=='cpe')&&(getSettingAOui('CpeResetPassResp'))) ) ) { echo "
\n"; if($_SESSION['statut']=="administrateur") { echo affiche_actions_compte($resp_login); echo "
\n"; } if((($resp_auth_mode=='gepi')|| (($resp_auth_mode=='ldap')&&($gepiSettings['ldap_write_access'] == "yes")))&& (acces('/utilisateurs/reset_passwords.php', $_SESSION['statut']))) { echo affiche_reinit_password($resp_login); } echo "
\n"; } //============================================== // Engagements if((isset($resp_login))&&($resp_login!="")&&(getSettingAOui('active_mod_engagements'))) { if(acces('/mod_engagements/saisie_engagements_user.php', $_SESSION['statut'])) { echo ""; } $tab_engagements_user=get_tab_engagements_user($resp_login); if(count($tab_engagements_user['indice'])>0) { echo "
"; if(acces("/mod_engagements/saisie_engagements_user.php", $_SESSION['statut'])) { /* echo "
Ajouter/Enlever
"; echo "
Ajouter/Enlever
"; */ echo "
Ajouter/Enlever
"; } /* echo "
";
		print_r($tab_engagements_user['indice']);
		echo "
"; */ echo "
"; for($loop=0;$loop".$tab_engagements_user['indice'][$loop]['nom_engagement'].$detail_eng."
"; } echo "
\n"; /* echo ""; */ echo "
\n"; } } //============================================== echo "\n"; echo "

Adresse:"; if(isset($adr_id)){echo " (n°$adr_id)";} echo "

\n"; echo "
\n"; if($temoin_adr==1){ $sql="SELECT * FROM resp_pers WHERE adr_id='$adr_id'"; //echo "$sql
\n"; $res_adr=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_adr)==0){ // Bizarre! // Ce n'est pas possible d'après ce qui a été fait auparavant. } elseif(mysqli_num_rows($res_adr)==1){ // L'adresse n'est associée qu'au responsable courant. echo "

Corriger/modifier l'adresse:

\n"; } else{ // L'adresse n'est associée à au moins un autre responsable. echo "\n"; //
\nSi vous modifiez l'adresse, elle le sera pour l'autre responsable également.

\n"; echo "\n"; //echo "\n"; echo "
Attention:L'adresse indiquée ci-dessous est partagée avec un autre responsable.
  ou
 ou
 
\n"; } } else{ echo "

Saisir une adresse:

\n"; } // 20160813 : Vérification du format de l'adresse $alerte_adr1=""; $alerte_adr2=""; $alerte_adr3=""; $alerte_adr4=""; $alerte_cp=""; $alerte_commune=""; $alerte_pays=""; if(getSettingAOui("FormatAdressePostaleCheck")) { if(mb_strlen($adr1)>38) { $alerte_adr1.="Attention"; } if(mb_strlen($adr2)>38) { $alerte_adr2.="Attention"; } if(mb_strlen($adr3)>38) { $alerte_adr3.="Attention"; } if(mb_strlen($adr4)>38) { $alerte_adr4.="Attention"; } if(mb_strlen($cp)+mb_strlen($commune)+1>38) { $alerte_commune.="Attention"; } if(casse_mot($commune, "maj")!=$commune) { $alerte_commune.="Attention"; } if(casse_mot($pays, "maj")!=$pays) { $alerte_pays.="Attention"; } } echo "\n"; //echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "
Saisir une adresse
Adresse * : ".$alerte_adr1."
Adresse (suite): ".$alerte_adr2."
Adresse (suite): ".$alerte_adr3."
Adresse (suite): ".$alerte_adr4."
Code postal ** : ".$alerte_cp.""; echo " ou Pays ** : ".$alerte_pays."\n"; echo "
Commune * : ".$alerte_commune."
\n"; if(isset($pers_id)){ echo "

Ou Choisir une adresse existante.

\n"; } else{ echo "\n"; echo "

Ou Choisir une adresse existante.

"; echo ""; } echo "
\n"; echo "
\n"; echo "

(*): saisie obligatoire
(**): un des deux champs au moins doit être rempli

\n"; echo "\n"; echo "
\n"; if((isset($pers_id))&&($compte_resp_existe=="y")&&(isset($journal_connexions))&&($journal_connexions=='n')&& ($AccesDetailConnexionResp) ) { echo "
\n"; echo "

Journal des connexions

\n"; } if((isset($pers_id))&&($compte_resp_existe=="y")&&(isset($journal_connexions))&&($journal_connexions=='y')&& ($AccesDetailConnexionResp) ) { echo "
\n"; // Journal des connexions echo "\n"; if (isset($_POST['duree'])) { $duree = $_POST['duree']; } else { $duree = '7'; } journal_connexions($resp_login,$duree,'modify_resp',$pers_id); echo "


\n"; } ?>