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(); } //INSERT INTO droits VALUES ('/groupes/repartition_ele_grp.php', 'V', 'F', 'F', 'F', 'F', 'F', 'F', 'F', 'Répartir des élèves dans des groupes', ''); if (!checkAccess()) { header("Location: ../logout.php?auto=1"); die(); } //============================================================= $groupe_de_groupes=getSettingValue('denom_groupe_de_groupes'); if($groupe_de_groupes=="") { $groupe_de_groupes="groupe de groupes"; } $groupes_de_groupes=getSettingValue('denom_groupes_de_groupes'); if($groupes_de_groupes=="") { $groupes_de_groupes="groupes de groupes"; } if(($_SESSION['statut']!='administrateur')&&(!acces_modif_liste_eleves_grp_groupes())) { header("Location: ../accueil.php?msg=Vous n administrez aucun ".$groupe_de_groupes); die(); } //============================================================= function test_before_eleve_grp_removal($_login, $_id_groupe, $_periode) { $test = old_mysql_result(mysqli_query($GLOBALS["mysqli"], "select count(*) FROM matieres_notes WHERE (login = '" . $_login . "' AND id_groupe = '" . $_id_groupe . "' AND periode = '" . $_periode . "')"), 0); $test2 = old_mysql_result(mysqli_query($GLOBALS["mysqli"], "select count(*) FROM matieres_appreciations WHERE (login = '" . $_login . "' AND id_groupe = '" . $_id_groupe . "' AND periode = '" . $_periode . "')"), 0); // cnd.statut='': on ne compte que les vraies notes: pas abs, disp, - ou v $test3 = old_mysql_result(mysqli_query($GLOBALS["mysqli"], "select count(*) FROM cn_notes_devoirs cnd, cn_devoirs cd, cn_cahier_notes ccn WHERE (cnd.login = '" . $_login . "' AND cnd.statut='' AND cnd.id_devoir=cd.id AND cd.id_racine=ccn.id_cahier_notes AND ccn.id_groupe = '" . $_id_groupe . "' AND ccn.periode = '" . $_periode . "')"), 0); if ($test == 0 and $test2 == 0 and $test3 == 0) { return true; } else { return false; } } // Initialisation des variables utilisées dans le formulaire $chemin_retour=isset($_GET['chemin_retour']) ? $_GET['chemin_retour'] : (isset($_POST['chemin_retour']) ? $_POST["chemin_retour"] : NULL); $id_classe = isset($_GET['id_classe']) ? $_GET['id_classe'] : (isset($_POST['id_classe']) ? $_POST["id_classe"] : NULL); $id_groupe = isset($_GET['id_groupe']) ? $_GET['id_groupe'] : (isset($_POST['id_groupe']) ? $_POST["id_groupe"] : NULL); $num_periode = isset($_GET['num_periode']) ? $_GET['num_periode'] : (isset($_POST['num_periode']) ? $_POST["num_periode"] : NULL); $order_by=isset($_POST['order_by']) ? $_POST['order_by'] : (isset($_GET['order_by']) ? $_GET['order_by'] : ''); $id_grp_groupe = isset($_GET['id_grp_groupe']) ? $_GET['id_grp_groupe'] : (isset($_POST['id_grp_groupe']) ? $_POST["id_grp_groupe"] : NULL); $msg=""; if($_SESSION['statut']!='administrateur') { if((isset($id_grp_groupe))&&(!acces_modif_liste_eleves_grp_groupes("", $id_grp_groupe))) { $msg.="Accès non autorisé : Vous n'administrez pas le ".$groupe_de_groupes." n°".$id_grp_groupe.".
"; unset($id_grp_groupe); unset($id_groupe); unset($id_classe); unset($num_periode); } else { for($i=0;$i"; unset($id_grp_groupe); unset($id_groupe); unset($id_classe); unset($num_periode); break; } } } } //if(isset($_POST['Valider_repartition'])) { if(isset($_POST['enregistrer_repartition'])) { check_token(); $msg=""; $nb_modif=0; $login_ele=isset($_POST['login_ele']) ? $_POST["login_ele"] : array(); $grp_eleve=isset($_POST['grp_eleve']) ? $_POST["grp_eleve"] : array(); // 20150627 : TEST SUR LES GROUPES CONCERNES $poursuivre="y"; if($_SESSION['statut']!='administrateur') { if(!isset($id_grp_groupe)) { $poursuivre="n"; $msg.="ERREUR : Identifiant de ".$groupe_de_groupes." non défini.
"; } else { if(!acces_modif_liste_eleves_grp_groupes("", $id_grp_groupe)) { $poursuivre="n"; $msg.="Accès non autorisé : Vous n'administrez pas le ".$groupe_de_groupes." n°".$id_grp_groupe.".
"; } else { for($i=0;$i"; break; } } } } } if($poursuivre=="y") { // Listes initiales des élèves dans les groupes for($i=0;$i0) { $lig=mysqli_fetch_object($res); $nom_groupe[$i]=$lig->name; } else { $nom_groupe[$i]="Groupe inconnu???"; } } for($i=0;$i0) { while($lig=mysqli_fetch_object($res)) { $tab_eleve[$id_groupe[$i]][]=$lig->login; } } } // Traitement des ré-affectations for($j=0;$j0) { $temoin_ele_clas_ok="y"; break; } } if($temoin_ele_clas_ok=="n") { $msg.="ANOMALIE : Vous essayez d'inscrire ".get_nom_prenom_eleve($login_ele[$j])." dans des groupes alors que sa classe n'est associée à aucun des groupes traités ici.
"; } else { $sql="SELECT id_classe FROM j_eleves_classes WHERE login='".$login_ele[$j]."' AND periode='$num_periode';"; $res_clas=mysqli_query($GLOBALS["mysqli"], $sql); $lig_clas=mysqli_fetch_object($res_clas); $current_id_classe_ele=$lig_clas->id_classe; for($i=0;$i"; $temoin_insertion_possible="n"; } } } } if(($temoin_insertion_possible=="y")&&($requete_insertion!='')) { // On affecte l'élève dans son nouveau groupe $insert=mysqli_query($GLOBALS["mysqli"], $requete_insertion); if(!$insert) {$msg.="Echec de l'inscription de $login_ele[$j] dans le groupe $nom_groupe[$i] ($id_groupe[$i]) pour la période $num_periode.
";} else {$nb_modif++;} if($requete_insertion_assoc_grp_clas!='') { $insert=mysqli_query($GLOBALS["mysqli"], $requete_insertion_assoc_grp_clas); if(!$insert) {$msg.="Echec de l'insertion de l'association du groupe $nom_groupe[$i] ($id_groupe[$i]) avec la classe de l'élève sur la période $num_periode.
";} } } } } if($nb_modif>0) { $msg.="$nb_modif inscription(s)/désinscription(s) enregistrée(s).
"; } } } //if(isset($_POST['Valider_recopie'])) { if(isset($_POST['enregistrer_recopie'])) { check_token(); $msg=""; $nb_modif=0; $login_ele=isset($_POST['login_ele']) ? $_POST["login_ele"] : array(); $maxper=isset($_POST['maxper']) ? $_POST["maxper"] : 0; $nb_grp=isset($_POST['nb_grp']) ? $_POST["nb_grp"] : 0; //echo "\$maxper=$maxper
"; // 20150627 : TEST SUR LES GROUPES CONCERNES $poursuivre="y"; if($_SESSION['statut']!='administrateur') { if(!isset($id_grp_groupe)) { $poursuivre="n"; $msg.="ERREUR : Identifiant de ".$groupe_de_groupes." non défini.
"; } else { if(!acces_modif_liste_eleves_grp_groupes("", $id_grp_groupe)) { $poursuivre="n"; $msg.="Accès non autorisé : Vous n'administrez pas le ".$groupe_de_groupes." n°".$id_grp_groupe.".
"; } else { for($i=0;$i"; break; } } } } } if($poursuivre=="y") { // Récupération des variables (checkbox) for($i=0;$i0) { $lig=mysqli_fetch_object($res); $nom_groupe[$i]=$lig->name; } else { $nom_groupe[$i]="Groupe inconnu???"; } } // Listes initiales des élèves dans les groupes // Boucle pour récupérer la liste actuelle des élèves dans chaque groupe pour chaque période $tab_eleve=array(); for($i=0;$i"; $res=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res)>0) { while($lig=mysqli_fetch_object($res)) { $tab_eleve[$id_groupe[$i]][$m][]=$lig->login; } } } } // Traitement des ré-affectations for($j=0;$j\$login_ele[$j]=$login_ele[$j]
\n"; $temoin_insertion_possible="y"; $requete_insertion=""; $requete_insertion_assoc_grp_clas=""; $temoin_ele_clas_ok="n"; for($i=0;$i0) { $temoin_ele_clas_ok="y"; break; } } if($temoin_ele_clas_ok=="n") { $msg.="ANOMALIE : Vous essayez d'inscrire ".get_nom_prenom_eleve($login_ele[$j])." dans des groupes alors que sa classe n'est associée à aucun des groupes traités ici.
"; } else { // Classe de l'élève courant sur chaque période unset($current_id_classe_ele); for($m=1;$m<=$maxper;$m++) { $sql="SELECT id_classe FROM j_eleves_classes WHERE login='".$login_ele[$j]."' AND periode='$m';"; //echo "$sql
"; $res_clas=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_clas)>0) { $lig_clas=mysqli_fetch_object($res_clas); $current_id_classe_ele[$m]=$lig_clas->id_classe; //echo "\$current_id_classe_ele[$m]=$current_id_classe_ele[$m]
\n"; } } // Boucle sur les groupes for($i=0;$i\n"; // Boucle sur les périodes for($m=1;$m<=$maxper;$m++) { if(isset($current_id_classe_ele[$m])) { $requete_insertion=''; $requete_insertion_assoc_grp_clas=''; //echo "Période $m
\n"; // Si la case est cochée pour cet élève, ce groupe et cette période if(isset($grp_eleve[$i][$m][$j])) { //echo "\$grp_eleve[$i][$m][$j]=".$grp_eleve[$i][$m][$j]."
\n"; //if($grp_eleve[$i][$m][$j]==$id_groupe[$i]) { //echo "Le groupe est sélectionné: $id_groupe[$i]
\n"; if(!in_array($login_ele[$j],$tab_eleve[$id_groupe[$i]][$m])) { // On affecte l'élève dans le groupe //$sql="INSERT INTO j_eleves_groupes SET login='".$login_ele[$j]."', id_groupe='".$id_groupe[$i]."', periode='$num_periode';"; //$insert=mysql_query($sql); $requete_insertion="INSERT INTO j_eleves_groupes SET login='".$login_ele[$j]."', id_groupe='".$id_groupe[$i]."', periode='$m';"; // Vérification s'il y a bien déjà une association du groupe avec la classe: $sql="SELECT 1=1 FROM j_groupes_classes WHERE id_classe='$current_id_classe_ele[$m]' AND id_groupe='".$id_groupe[$i]."';"; $test_clas_grp=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test_clas_grp)==0) { // Récupérer les paramètres de j_groupes_classes pour le groupe actuel pour imposer le même dans l'association avec la classe de l'élève courant $sql="SELECT * FROM j_groupes_classes WHERE id_groupe='".$id_groupe[$i]."' LIMIT 1;"; $res_grp=mysqli_query($GLOBALS["mysqli"], $sql); $lig_grp=mysqli_fetch_object($res_grp); $requete_insertion_assoc_grp_clas="INSERT INTO j_groupes_classes SET id_classe='$current_id_classe_ele[$m]', id_groupe='".$id_groupe[$i]."', priorite='$lig_grp->priorite', coef='$lig_grp->coef', categorie_id='$lig_grp->categorie_id', saisie_ects='$lig_grp->saisie_ects', valeur_ects='$lig_grp->valeur_ects', mode_moy='$lig_grp->mode_moy';"; } } } else { //echo "Le groupe n'est pas sélectionné $id_groupe[$i]
\n"; if(in_array($login_ele[$j],$tab_eleve[$id_groupe[$i]][$m])) { //echo "$login_ele[$j] était dans le groupe.
On va tester si on peut le désinscrire.
"; // On va tester si on peut désinscrire l'élève if(test_before_eleve_grp_removal($login_ele[$j], $id_groupe[$i], $m)) { //echo "On peut le désinscrire.
"; // On désinscrit effectivement $sql="DELETE FROM j_eleves_groupes WHERE login='".$login_ele[$j]."' AND id_groupe='".$id_groupe[$i]."' AND periode='$m';"; //echo "$sql
"; $suppr=mysqli_query($GLOBALS["mysqli"], $sql); if(!$suppr) {$msg.="Echec de la désinscription de $login_ele[$j] du groupe $nom_groupe[$i] ($id_groupe[$i]) pour la période $m.
";} else {$nb_modif++;} } else { $msg.="Des données bloquent la désincription de ".get_nom_prenom_eleve($login_ele[$j])." du groupe ".$nom_groupe[$i]." ($id_groupe[$i]) pour la période $m.
"; $temoin_insertion_possible="n"; } } } if(($temoin_insertion_possible=="y")&&($requete_insertion!='')) { // On affecte l'élève dans son nouveau groupe $insert=mysqli_query($GLOBALS["mysqli"], $requete_insertion); if(!$insert) {$msg.="Echec de l'inscription de $login_ele[$j] dans le groupe $nom_groupe[$i] ($id_groupe[$i]) pour la période $m.
";} else {$nb_modif++;} if($requete_insertion_assoc_grp_clas!='') { $insert=mysqli_query($GLOBALS["mysqli"], $requete_insertion_assoc_grp_clas); if(!$insert) {$msg.="Echec de l'insertion de l'association du groupe $nom_groupe[$i] ($id_groupe[$i]) avec la classe $current_id_classe_ele[$m].
";} } } } else { $msg.="Non traité pour le groupe n°".$id_groupe[$i]." : ".get_nom_prenom_eleve($login_ele[$j])." n'est dans aucune classe sur la période $m.
"; } } } } } if($nb_modif>0) { $msg.="$nb_modif modification(s) enregistrée(s).
"; } } } $themessage = 'Des informations ont été modifiées. Voulez-vous vraiment quitter sans enregistrer ?'; //**************** EN-TETE ************************************** $titre_page = "Répartition d'élèves dans des groupes"; require_once("../lib/header.inc.php"); //**************** FIN EN-TETE ********************************** //debug_var(); //================================================================================================= if($_SESSION['statut']=="administrateur") { // Choix de la classe if(!isset($id_classe)) { echo "

"; echo "Retour Retour"; echo "

\n"; echo "

Choix des classes :
\n"; $sql="SELECT DISTINCT c.* FROM classes c ORDER BY classe;"; $call_classes=mysqli_query($GLOBALS["mysqli"], $sql); $nb_classes=mysqli_num_rows($call_classes); echo "

\n"; // Affichage sur 3 colonnes $nb_classes_par_colonne=round($nb_classes/3); echo "\n"; echo "\n"; $cpt = 0; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "
     \n"; while($lig_clas=mysqli_fetch_object($call_classes)) { //affichage 2 colonnes if(($cpt>0)&&(round($cpt/$nb_classes_par_colonne)==$cpt/$nb_classes_par_colonne)){ echo "\n"; } echo ""; echo "
\n"; $cpt++; } echo "
\n"; echo "

Tout cocher / Tout décocher

\n"; echo "

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

ATTENTION : Cette page de répartition ne permet pas d'inscrire ou de conserver l'inscription dans plus d'un des groupes qui seront sélectionnés à l'affichage.
Parmi les groupes affichés, un élève ne pourra pas être inscrit dans plus d'un d'entre eux.

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

\n"; echo "Retour Retour"; echo " | Choisir d'autres classes\n"; echo "

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

Cochez les enseignements :

\n"; // Liste des enseignements de la classe $id_classe echo "\n"; echo "\n"; for($i=0;$i$classe\n"; } echo "\n"; $chaine_js_change_style=""; $cpt=0; echo "\n"; $alt=1; for($i=0;$i\n"; $groups = get_groups_for_class($id_classe[$i],"","n"); if(count($groups)==0){ echo "

Aucun enseignement n'a encore été créé dans cette classe.

\n"; } else { echo "\n"; foreach ($groups as $group) { $current_group=get_group($group["id"]); //echo "
\n"; echo "
\n"; echo "

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

ATTENTION : Cette page de répartition ne permet pas d'inscrire ou de conserver l'inscription dans plus d'un des groupes qui seront sélectionnés à l'affichage.
Parmi les groupes affichés, un élève ne pourra pas être inscrit dans plus d'un d'entre eux.

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

Retour Retour

Choix du $groupe_de_groupes

Vous êtes autorisé à modifier la liste des élèves des enseignements des $groupes_de_groupes suivants :

"; $sql="SELECT DISTINCT id_grp_groupe FROM grp_groupes_admin WHERE login='".$_SESSION['login']."';"; $res=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res)==0) { // Les tests sont faits plus haut... on ne devrait pas arriver là. echo "

style='color:red'>Aucun $groupe_de_groupes trouvé.

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

ATTENTION : Cette page de répartition ne permet pas d'inscrire ou de conserver l'inscription dans plus d'un des groupes qui seront sélectionnés à l'affichage.
Parmi les groupes affichés, un élève ne pourra pas être inscrit dans plus d'un d'entre eux.

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

\n"; echo "Retour Retour"; echo " | Choisir d'autres classes\n"; echo " | \n"; echo "\n"; for($i=0;$i\n";} echo "

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

Choisissez la période 

\n"; $maxper=0; echo "
\n"; for($i=0;$i0) { echo "\n"; $lig_per=mysqli_fetch_object($res); if($lig_per->maxper>$maxper) {$maxper=$lig_per->maxper;} } else { echo "La classe ".get_class_from_id($id_classe[$i])." n'a pas de période?
\n"; } } for($i=1;$i<=$maxper;$i++) { echo "\n"; } $tmp_id_grp=array(); for($i=0;$i\n"; $tmp_id_grp[]=$id_groupe[$i]; } } echo "

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

\n"; echo "Retour Retour"; echo " | Choisir un autre ".$groupe_de_groupes."

\n"; echo "

Choisissez la période 

\n"; $maxper=0; $sql="SELECT max(num_periode) AS maxper FROM grp_groupes_groupes ggg, j_groupes_classes jgc, periodes p WHERE ggg.id_grp_groupe='".$id_grp_groupe."' AND ggg.id_groupe=jgc.id_groupe AND jgc.id_classe=p.id_classe;"; $res=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res)==0) { echo "

Aucune classe avec période n'a été trouvée pour le ou les groupes associés au ".$groupe_de_groupes." choisi.

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

"; $lig=mysqli_fetch_object($res); for($i=1;$i<=$lig->maxper;$i++) { echo "Période $i
"; } echo "

"; } echo "
\n"; echo "

NOTES :

  • Vous allez effectuer la répartition entre les groupes sur une période dans un premier temps, et dans un deuxième temps, vous pourrez recopier le paramétrage de cette période pour d'autres périodes.

  • ATTENTION : Cette page de répartition ne permet pas d'inscrire ou de conserver l'inscription dans plus d'un des groupes qui seront sélectionnés à l'affichage.
    Parmi les groupes affichés, un élève ne pourra pas être inscrit dans plus d'un d'entre eux.

"; require("../lib/footer.inc.php"); die(); } //================================================================================================= // On passe à la répartition if(!isset($_POST['recopie_select'])) { if($_SESSION['statut']!='administrateur') { echo "

Retour Retour | Choisir un autre ".$groupe_de_groupes." | Choisir une autre période

"; $id_groupe=array(); $sql="SELECT DISTINCT id_groupe FROM grp_groupes_groupes WHERE id_grp_groupe='".$id_grp_groupe."';"; $res=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res)>0) { while($lig=mysqli_fetch_object($res)) { $id_groupe[]=$lig->id_groupe; } } $id_classe=array(); for($i=0;$i0) { while($lig=mysqli_fetch_object($res)) { if(!in_array($lig->id_classe, $id_classe)) { $id_classe[]=$lig->id_classe; } } } } } else { echo "
\n"; echo "

\n"; echo "Retour Retour"; // Il faut récupérer toutes les classes associées aux groupes choisis, // sinon lorsqu'on trie par classe on ne retient que la classe sélectionnée au départ // (si on ne prend pas soin de sélectionner toutes les classes) $id_classe=array(); for($i=0;$i\n"; $sql="SELECT DISTINCT id_classe FROM j_groupes_classes WHERE id_groupe='".$id_groupe[$i]."';"; $res_clas_grp=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_clas_grp)>0) { while($lig_clas_grp=mysqli_fetch_object($res_clas_grp)) { if(!in_array($lig_clas_grp->id_classe, $id_classe)) {$id_classe[]=$lig_clas_grp->id_classe;} } } } $tab_nom_classe=array(); $tab_id_classe=array(); for($i=0;$i"; print_r($tab_id_classe); echo ""; */ sort($tab_nom_classe); $id_classe=array(); for($loop=0;$loop"; print_r($id_classe); echo ""; */ for($i=0;$i\n";} echo " | Choisir d'autres classes\n"; echo " | \n"; echo "\n"; echo ""; echo "

\n"; echo "
\n"; } //=============================== echo "
"; echo "
\n"; echo "
\n"; echo "
\n"; if($_SESSION['statut']!='administrateur') { echo "\n"; } for($i=0;$i\n";} for($i=0;$i\n";} echo "\n"; echo "\n"; echo " pour d'autres périodes\n"; echo ""; echo "
\n"; echo "
\n"; echo "
\n"; echo "
\n"; //=============================== echo "\n"; echo "
\n"; echo "
\n"; echo add_token_field(); if($_SESSION['statut']!='administrateur') { echo "\n"; } for($i=0;$i\n";} for($i=0;$i\n";} echo "\n"; echo "\n"; echo "\n"; echo "

Répartition des élèves dans les groupes pour la période $num_periode :

\n"; // Pour le moment, on ne récupère que les élèves déjà inscrits dans ces groupes. // A FAIRE: Permettre d'afficher tous les élèves des classes concernées $tab_eleve=array(); //$tmp_tab_eleve=array(); echo "\n"; echo "\n"; //echo "\n"; echo "\n"; //echo "\n"; echo "\n"; for($i=0;$i\n"; $group[$i]=get_group($id_groupe[$i]); echo $group[$i]['name']; echo "
\n"; echo "".$group[$i]['classlist_string']."\n"; echo "
".$id_groupe[$i].""; echo "
".preg_replace("/,/","
",$group[$i]['profs']['proflist_string']); /* //$tmp_tab_eleve=array_merge($tmp_tab_eleve,$group[$i]["eleves"][$num_periode]["list"]); for($j=0;$j\n"; } echo "
\n"; echo "\n"; $alt=1; //$tab_eleve=array_unique($tmp_tab_eleve); /* echo "\n"; echo "\n"; echo "\n"; echo "\n"; */ echo "\n"; echo "\n"; echo "\n"; for($i=0;$i\n"; } echo "\n"; echo "\n"; $acces_visu_eleve=acces("/eleves/visu_eleve.php", $_SESSION['statut']); $acces_eleve_options=acces("/classes/eleve_options.php", $_SESSION['statut']); // LISTE FOIREUSE UNE FOIS QU'ON A VALIDE UNE FOIS //for($j=0;$j $login_ele) { for($j=0;$j\n"; echo "\n"; echo "\n"; } } $classe_prec=$tmp_tab_class_ele["liste"]; $alt=$alt*(-1); echo "\n"; echo "\n"; echo "\n"; $nb_grp_ele=0; $info_plusieurs_grp_ele=""; $ligne_si_desinscription_possible=""; $ligne_si_desinscription_impossible=""; $temoin_desinscription_impossible="n"; for($i=0;$i\n"; echo "0) {$info_plusieurs_grp_ele.=", ";} $info_plusieurs_grp_ele.=$group[$i]['name']." ($k)"; $nb_grp_ele++; } echo "/>\n"; echo "\n"; */ $ligne_si_desinscription_possible.="\n"; $ligne_si_desinscription_impossible.="\n"; } //if($nb_grp_ele>1) {echo $ligne_si_desinscription_impossible;} if($temoin_desinscription_impossible=="y") {echo $ligne_si_desinscription_impossible;} else {echo $ligne_si_desinscription_possible;} echo "\n"; echo "\n"; $cpt++; } echo "\n"; echo "\n"; echo "\n"; for($i=0;$i\n"; echo "Tout cocher\n"; //echo " / Tout décocher"; echo "\n"; } echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "
Elève
Photo affichée
\n"; //echo "
Elève"; echo "
Elève"; echo "
ClasseClasse\n"; echo "Info\n"; /* echo "
"; for($j=0;$j"; } echo ""; */ /* if($order_by=='classe') { $tmp_tab_eleve=$tab_eleve; unset($tab_eleve); for($i=0;$i"; $test=mysql_query($sql); if(mysql_num_rows($test)>0) { $tab_eleve[]=$tmp_tab_eleve[$j]; echo "$tmp_tab_eleve[$j]
"; } } } } else { // On trie suivant le login... ce n'est pas forcément correct //sort($tab_eleve); } */ $tab_eleve=array(); $chaine_groupes="jeg.id_groupe='".$id_groupe[0]."'"; for($loop=1;$loop0) { while($lig_clas_grp=mysqli_fetch_object($res_clas_grp)) { $tab_eleve[]=$lig_clas_grp->login; } } } } else { $sql="SELECT DISTINCT jeg.login FROM j_eleves_groupes jeg, eleves e WHERE jeg.login=e.login AND ($chaine_groupes) AND jeg.periode='$num_periode' ORDER BY e.nom, e.prenom;"; //echo "$sql
"; $res_ele_grp=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_ele_grp)>0) { while($lig_ele_grp=mysqli_fetch_object($res_ele_grp)) { $tab_eleve[]=$lig_ele_grp->login; } } } //echo "
"; echo "
\n"; for($j=0;$j\n"; echo "
\n"; for($j=0;$j\n"; echo "
".$tmp_tab_class_ele["liste"]."
\n"; echo "\n"; $nom_prenom_ele=get_nom_prenom_eleve($login_ele); if($acces_visu_eleve) { echo "
OngletsEle
"; } /* if(isset($eleves_list["users"][$e_login]['elenoet'])) { echo " onmouseover=\"affiche_photo_courante('".nom_photo($eleves_list["users"][$e_login]['elenoet'])."')\" onmouseout=\"vide_photo_courante();\""; } */ $chaine_photo=" onmouseover=\"vide_photo_courante()\" onmouseout=\"vide_photo_courante();\""; $sql="SELECT elenoet FROM eleves WHERE login='".$login_ele."';"; $res_elenoet=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_elenoet)>0) { $lig_elenoet=mysqli_fetch_object($res_elenoet); $chaine_photo=" onmouseover=\"affiche_photo_courante('".nom_photo($lig_elenoet->elenoet)."')\" onmouseout=\"vide_photo_courante();\""; } if(($acces_eleve_options)&& (($_SESSION['statut']=='administrateur')|| (($_SESSION['statut']=='scolarite')&&(isset($tmp_tab_class_per_ele['periode'][$num_periode]['id_classe']))&&(is_scol_classe_ele($_SESSION['login'], $login_ele, $num_periode))))) { echo "".$nom_prenom_ele.""; } else { echo "".$nom_prenom_ele.""; } echo "
\n"; echo $tmp_tab_class_ele["liste"]; echo "\n"; $ligne_si_desinscription_possible.="0) {$info_plusieurs_grp_ele.=", ";} $info_plusieurs_grp_ele.=$group[$i]['name']." ($k)"; $nb_grp_ele++; } $ligne_si_desinscription_possible.="/>\n"; $ligne_si_desinscription_possible.="\n"; if(in_array($login_ele,$group[$i]["eleves"][$num_periode]["list"])) { $ligne_si_desinscription_impossible.="Affecté dans le groupe\n"; if(!test_before_eleve_grp_removal($login_ele, $id_groupe[$i], $num_periode)) { $ligne_si_desinscription_impossible.="Bulletin ou carnet de notes non vide\n"; $temoin_desinscription_impossible="y"; } } $ligne_si_desinscription_impossible.="\n"; if($nb_grp_ele>1) {echo "".$info_plusieurs_grp_ele."";} else {echo " ";} echo "
\n"; //echo " "; echo "\n"; echo "\n"; echo " "; echo "\n"; echo " "; echo "
\n"; echo "

\n"; echo "
\n"; echo "
\n"; echo "
\n"; //=============================== echo "
\n"; echo "
\n"; echo add_token_field(); if($_SESSION['statut']!='administrateur') { echo "\n"; } for($i=0;$i\n";} for($i=0;$i\n";} echo "\n"; //echo "\n"; echo "

Trier par

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

\n"; echo "
\n"; //=============================== echo "


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

ATTENTION : Cette page de répartition ne permet pas d'inscrire ou de conserver l'inscription dans plus d'un des groupes qui seront sélectionnés à l'affichage.
Parmi les groupes affichés, un élève ne pourra pas être inscrit dans plus d'un d'entre eux.

"; //==================================== /* echo "
\n"; for($i=0;$i\n";} for($i=0;$i\n";} echo "\n"; echo "\n"; echo " pour d'autres périodes\n"; echo "\n"; */ } else { // Recopie ou copie inverse des sélections pour d'autres périodes echo "
\n"; echo "

"; if($_SESSION['statut']=='administrateur') { echo "Retour Retour"; } else { echo "Retour Retour"; } if($_SESSION['statut']!='administrateur') { echo "\n"; $id_classe=array(); for($i=0;$i0) { while($lig=mysqli_fetch_object($res)) { if(!in_array($lig->id_classe, $id_classe)) { $id_classe[]=$lig->id_classe; } } } } } for($i=0;$i\n";} for($i=0;$i\n";} echo " | Choisir d'autres classes\n"; echo " | \n"; echo "\n"; echo "

\n"; echo "
\n"; //=============================== echo "
\n"; echo "
\n"; if($_SESSION['statut']!='administrateur') { echo "\n"; } for($i=0;$i\n";} for($i=0;$i\n";} echo "\n"; echo "\n"; echo "\n"; echo "
\n"; //=============================== $maxper=0; for($i=0;$i0) { $lig_per=mysqli_fetch_object($res); if($lig_per->maxper>$maxper) {$maxper=$lig_per->maxper;} } else { echo "La classe ".get_class_from_id($id_classe[$i])." n'a pas de période?
\n"; } } //echo "maxper=$maxper
"; echo "
\n"; echo add_token_field(); if($_SESSION['statut']!='administrateur') { echo "\n"; } for($i=0;$i\n";} for($i=0;$i\n";} echo "\n"; echo "\n"; echo "\n"; echo "

Recopie de la répartition des élèves dans les groupes :

\n"; // Pour le moment, on ne récupère que les élèves déjà inscrits dans ces groupes. // A FAIRE: Permettre d'afficher tous les élèves des classes concernées $tab_eleve=array(); //$tmp_tab_eleve=array(); echo "\n"; echo "\n"; echo "\n"; //echo "\n"; echo "\n"; for($i=0;$i"; $group[$i]=get_group($id_groupe[$i]); echo $group[$i]['name']; echo "
"; echo "".$group[$i]['classlist_string'].""; echo "
".$id_groupe[$i].""; for($j=0;$j"; } } echo "\n"; } //echo "
\n"; echo "\n"; echo "\n"; //echo "\n"; //echo "\n"; for($i=0;$i"; echo "P$m"; echo "\n"; } } //echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; // 20130919 $tab_champs_modele_coller=array(); for($i=0;$i"; echo "\n"; $tab_champs_modele_coller[]=$i."_".$m; echo "\n"; } } //echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; for($i=0;$i"; echo "Coller la sélection\n"; echo "\n"; } } //echo "\n"; echo "\n"; $alt=1; //$tab_eleve=array_unique($tmp_tab_eleve); //sort($tab_eleve); $cpt=0; for($j=0;$j\n"; echo "\n"; echo "\n"; $nb_grp_ele=0; $info_plusieurs_grp_ele=""; for($i=0;$i\n"; if(in_array($login_ele,$group[$i]["eleves"][$m]["list"])) { if(!test_before_eleve_grp_removal($login_ele, $id_groupe[$i], $m)) { echo "Affecté dans le groupe\n"; echo "\n"; } else { echo "\n"; } } else { echo "\n"; } /* //echo "\$m=$m
"; if($m==$num_periode) { echo "\n"; echo "Groupe sélectionné\n"; } else { echo "value='' />\n"; } //echo "/>\n"; } else { echo "0) {$info_plusieurs_grp_ele.=", ";} //$info_plusieurs_grp_ele.=$group[$i]['name']." ($k)"; $nb_grp_ele++; } echo "/>\n"; } */ echo "\n"; } } /* $ligne_si_desinscription_possible.="0) {$info_plusieurs_grp_ele.=", ";} $info_plusieurs_grp_ele.=$group[$i]['name']." ($k)"; $nb_grp_ele++; } $ligne_si_desinscription_possible.="/>\n"; $ligne_si_desinscription_possible.="\n"; $ligne_si_desinscription_impossible.="
"; */ echo "\n"; $cpt++; } echo "\n"; echo "\n"; echo "\n"; for($i=0;$i\n"; echo "Tout cocher / Tout décocher"; echo "\n"; } } echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "
Elève
\n"; echo "
\n"; echo "
ClasseClasseInfo
ElèveClasseInfo
Modèle de sélection\n"; echo " \n"; //echo "\$order_by=$order_by
"; //$order_by='classe'; if($order_by=='classe') { $tmp_tab_eleve=$tab_eleve; unset($tab_eleve); for($i=0;$i"; $test=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test)>0) { $tab_eleve[]=$tmp_tab_eleve[$j]; //echo "$tmp_tab_eleve[$j]
"; } } } } else { sort($tab_eleve); } /* if($order_by=='classe') { $tmp_tab_eleve=$tab_eleve; unset($tab_eleve); for($i=0;$i0) { $tab_eleve[]=$tmp_tab_eleve[$j]; } } } } */ echo "
Info
Coller la sélection Info
"; echo "\n"; echo get_nom_prenom_eleve($login_ele); echo ""; $tmp_tab_class_ele=get_class_from_ele_login($login_ele); echo $tmp_tab_class_ele["liste"]; echo "\n"; if(in_array($login_ele,$group[$i]["eleves"][$num_periode]["list"])) { $ligne_si_desinscription_impossible.="Affecté dans le groupe\n"; if(!test_before_eleve_grp_removal($login_ele, $id_groupe[$i], $num_periode)) { $ligne_si_desinscription_impossible.="Bulletin ou carnet de notes non vide\n"; $temoin_desinscription_impossible="y"; } } echo ""; if($nb_grp_ele==0) {echo " ";} else {echo $info_plusieurs_grp_ele;} echo "
\n"; //echo " \n"; echo "\n"; echo "\n"; echo " \n"; echo "
\n"; //echo "\n"; echo "\n"; //=============================== echo "
\n"; if($_SESSION['statut']!='administrateur') { echo "\n"; } for($i=0;$i\n";} for($i=0;$i\n";} echo "\n"; echo "\n"; echo "

Trier par

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

\n"; //=============================== echo "


\n"; //=================================== /* echo "
\n"; for($i=0;$i\n";} for($i=0;$i\n";} echo "\n"; echo "\n"; echo "\n"; */ // 20130919 $init_coches="var tab_suffixe_coller=new Array();\n"; for($loop=0;$loop $init_coches; function update_liens_coller_visibles() { for(i=0;i\n"; } require("../lib/footer.inc.php"); ?>