echo "<p><br /></p>\n"; } echo "<p>Contrôler les saisies pour la classe de :</p>\n"; $nb_classes = count($id_classe); $nb_class_par_colonne = round($nb_classes / 3); echo "<table width='100%'>\n"; echo "<tr valign='top' align='center'>\n"; $i = '0'; echo "<td> </td>\n"; echo "<td align='left'>\n"; for ($i = 0; $i < count($id_classe); $i++) { if ($i > 0 && round($i / $nb_class_par_colonne) == $i / $nb_class_par_colonne) { echo "</td>\n"; echo "<td align='left'>\n"; } echo "<a href='saisie_absences.php?id_classe={$id_classe[$i]}&periode_num={$num_periode}' target='_blank'>" . get_class_from_id($id_classe[$i]) . "</a><br />\n"; } echo "</td>\n"; echo "</tr>\n"; echo "</table>\n"; } } // Fin is_posted //} } } echo "<p><br /></p>\n"; ?> </div> <?php require "../lib/footer.inc.php";
for ($loop = 0; $loop < $max_per; $loop++) { if (isset($tmp_per[$loop])) { echo "<input type='hidden' name='num_periode_" . $id_classe[$i] . "[]' value='{$tmp_per[$loop]}' />\n"; } } } else { $temoin_classe[$i] = 'n'; } } if ($temoin_classe[$i] == 'y') { echo "<input type='hidden' name='id_classe[]' value='{$id_classe[$i]}' />\n"; $first_grp[$id_classe[$i]] = $cpt; echo "<table class='boireaus' summary='Classe n°{$id_classe[$i]}'/>\n"; echo "<tr>\n"; echo "<th colspan='3'>\n"; echo "Classe de " . get_class_from_id($id_classe[$i]) . "\n"; echo "</th>\n"; echo "</tr>\n"; echo "<tr>\n"; echo "<th>\n"; //echo "Cocher/décocher\n"; echo "<p><a href='#' onClick='ModifCase(" . $id_classe[$i] . ",true);return false;'><img src='../images/enabled.png' width='15' height='15' alt='Tout cocher' /></a> / <a href='#' onClick='ModifCase(" . $id_classe[$i] . ",false);return false;'><img src='../images/disabled.png' width='15' height='15' alt='Tout décocher' /></a></p>\n"; echo "</th>\n"; echo "<th>Enseignement</th>\n"; echo "<th>Professeur</th>\n"; echo "</tr>\n"; $alt = 1; while ($lig_grp = mysqli_fetch_object($call_group)) { $alt = $alt * -1; echo "<tr class='lig{$alt} white_hover'>\n"; echo "<td>\n";
function tableau_eleves_req($id_aff, $id_req) { global $projet; $id_clas_act = array(); $clas_fut = array(); $avec_lv1 = array(); $sans_lv1 = array(); $avec_lv2 = array(); $sans_lv2 = array(); $avec_lv3 = array(); $sans_lv3 = array(); $avec_autre = array(); $sans_autre = array(); $avec_profil = array(); $sans_profil = array(); // Pour utiliser des listes d'affichage //$requete_definie=isset($_POST['requete_definie']) ? $_POST['requete_definie'] : (isset($_GET['requete_definie']) ? $_GET['requete_definie'] : 'n'); //$id_aff=isset($_POST['id_aff']) ? $_POST['id_aff'] : (isset($_GET['id_aff']) ? $_GET['id_aff'] : NULL); //$id_req=isset($_POST['id_req']) ? $_POST['id_req'] : (isset($_GET['id_req']) ? $_GET['id_req'] : NULL); //if(($requete_definie=='y')&&(isset($id_aff))&&(isset($id_req))) { $sql = "SELECT * FROM gc_affichages WHERE projet='{$projet}' AND id_aff='{$id_aff}' AND id_req='{$id_req}' ORDER BY type;"; $res_tmp = mysqli_query($GLOBALS["mysqli"], $sql); while ($lig_tmp = mysqli_fetch_object($res_tmp)) { switch ($lig_tmp->type) { case 'id_clas_act': if (!in_array($lig_tmp->valeur, $id_clas_act)) { $id_clas_act[] = $lig_tmp->valeur; } break; case 'clas_fut': if (!in_array($lig_tmp->valeur, $clas_fut)) { $clas_fut[] = $lig_tmp->valeur; } break; case 'avec_lv1': if (!in_array($lig_tmp->valeur, $avec_lv1)) { $avec_lv1[] = $lig_tmp->valeur; } break; case 'avec_lv2': if (!in_array($lig_tmp->valeur, $avec_lv2)) { $avec_lv2[] = $lig_tmp->valeur; } break; case 'avec_lv3': if (!in_array($lig_tmp->valeur, $avec_lv3)) { $avec_lv3[] = $lig_tmp->valeur; } break; case 'avec_autre': if (!in_array($lig_tmp->valeur, $avec_autre)) { $avec_autre[] = $lig_tmp->valeur; } break; case 'avec_profil': if (!in_array($lig_tmp->valeur, $avec_profil)) { $avec_profil[] = $lig_tmp->valeur; } break; case 'sans_lv1': if (!in_array($lig_tmp->valeur, $sans_lv1)) { $sans_lv1[] = $lig_tmp->valeur; } break; case 'sans_lv2': if (!in_array($lig_tmp->valeur, $sans_lv2)) { $sans_lv2[] = $lig_tmp->valeur; } break; case 'sans_lv3': if (!in_array($lig_tmp->valeur, $sans_lv3)) { $sans_lv3[] = $lig_tmp->valeur; } break; case 'sans_autre': if (!in_array($lig_tmp->valeur, $sans_autre)) { $sans_autre[] = $lig_tmp->valeur; } break; case 'sans_profil': if (!in_array($lig_tmp->valeur, $sans_profil)) { $sans_profil[] = $lig_tmp->valeur; } break; } } //} //========================= // Début de la requête à forger pour ne retenir que les élèves souhaités $sql_ele = "SELECT DISTINCT login FROM gc_eleves_options WHERE projet='{$projet}' AND classe_future!='Dep' AND classe_future!='Red'"; $sql_ele_id_classe_act = ""; $sql_ele_classe_fut = ""; //========================= //$chaine_lien_modif_requete="projet=$projet"; $chaine_classes_actuelles = ""; if (count($id_clas_act) > 0) { for ($i = 0; $i < count($id_clas_act); $i++) { if ($i > 0) { $sql_ele_id_classe_act .= " OR "; } $sql_ele_id_classe_act .= "id_classe_actuelle='{$id_clas_act[$i]}'"; if ($i > 0) { $chaine_classes_actuelles .= ", "; } $chaine_classes_actuelles .= get_class_from_id($id_clas_act[$i]); //$chaine_lien_modif_requete.="&id_clas_act[$i]=".$id_clas_act[$i]; } $sql_ele .= " AND ({$sql_ele_id_classe_act})"; } $chaine_classes_futures = ""; if (count($clas_fut) > 0) { for ($i = 0; $i < count($clas_fut); $i++) { if ($i > 0) { $sql_ele_classe_fut .= " OR "; } $sql_ele_classe_fut .= "classe_future='{$clas_fut[$i]}'"; if ($i > 0) { $chaine_classes_futures .= ", "; } if ($clas_fut[$i] == '') { $chaine_classes_futures .= 'Non.aff'; } else { $chaine_classes_futures .= $clas_fut[$i]; } //$chaine_lien_modif_requete.="&clas_fut[$i]=".$clas_fut[$i]; } $sql_ele .= " AND ({$sql_ele_classe_fut})"; } $chaine_avec_opt = ""; for ($i = 0; $i < count($avec_lv1); $i++) { $sql_ele .= " AND liste_opt LIKE '%|{$avec_lv1[$i]}|%'"; if ($chaine_avec_opt != "") { $chaine_avec_opt .= ", "; } $chaine_avec_opt .= "<span style='color:green;'>" . $avec_lv1[$i] . "</span>"; //$chaine_lien_modif_requete.="&avec_lv1[$i]=".$avec_lv1[$i]; } for ($i = 0; $i < count($avec_lv2); $i++) { $sql_ele .= " AND liste_opt LIKE '%|{$avec_lv2[$i]}|%'"; if ($chaine_avec_opt != "") { $chaine_avec_opt .= ", "; } $chaine_avec_opt .= "<span style='color:green;'>" . $avec_lv2[$i] . "</span>"; //$chaine_lien_modif_requete.="&avec_lv2[$i]=".$avec_lv2[$i]; } for ($i = 0; $i < count($avec_lv3); $i++) { $sql_ele .= " AND liste_opt LIKE '%|{$avec_lv3[$i]}|%'"; if ($chaine_avec_opt != "") { $chaine_avec_opt .= ", "; } $chaine_avec_opt .= "<span style='color:green;'>" . $avec_lv3[$i] . "</span>"; //$chaine_lien_modif_requete.="&avec_lv3[$i]=".$avec_lv3[$i]; } for ($i = 0; $i < count($avec_autre); $i++) { $sql_ele .= " AND liste_opt LIKE '%|{$avec_autre[$i]}|%'"; if ($chaine_avec_opt != "") { $chaine_avec_opt .= ", "; } $chaine_avec_opt .= "<span style='color:green;'>" . $avec_autre[$i] . "</span>"; //$chaine_lien_modif_requete.="&avec_autre[$i]=".$avec_autre[$i]; } $chaine_sans_opt = ""; for ($i = 0; $i < count($sans_lv1); $i++) { $sql_ele .= " AND liste_opt NOT LIKE '%|{$sans_lv1[$i]}|%'"; if ($chaine_sans_opt != "") { $chaine_sans_opt .= ", "; } $chaine_sans_opt .= "<span style='color:red;'>" . $sans_lv1[$i] . "</span>"; //$chaine_lien_modif_requete.="&sans_lv1[$i]=".$sans_lv1[$i]; } for ($i = 0; $i < count($sans_lv2); $i++) { $sql_ele .= " AND liste_opt NOT LIKE '%|{$sans_lv2[$i]}|%'"; if ($chaine_sans_opt != "") { $chaine_sans_opt .= ", "; } $chaine_sans_opt .= "<span style='color:red;'>" . $sans_lv2[$i] . "</span>"; //$chaine_lien_modif_requete.="&sans_lv2[$i]=".$sans_lv2[$i]; } for ($i = 0; $i < count($sans_lv3); $i++) { $sql_ele .= " AND liste_opt NOT LIKE '%|{$sans_lv3[$i]}|%'"; if ($chaine_sans_opt != "") { $chaine_sans_opt .= ", "; } $chaine_sans_opt .= "<span style='color:red;'>" . $sans_lv3[$i] . "</span>"; //$chaine_lien_modif_requete.="&sans_lv3[$i]=".$sans_lv3[$i]; } for ($i = 0; $i < count($sans_autre); $i++) { $sql_ele .= " AND liste_opt NOT LIKE '%|{$sans_autre[$i]}|%'"; if ($chaine_sans_opt != "") { $chaine_sans_opt .= ", "; } $chaine_sans_opt .= "<span style='color:red;'>" . $sans_autre[$i] . "</span>"; //$chaine_lien_modif_requete.="&sans_autre[$i]=".$sans_autre[$i]; } $chaine_avec_profil = ""; if (count($avec_profil) > 0) { $sql_ele_profil = ""; for ($i = 0; $i < count($avec_profil); $i++) { if ($i > 0) { $sql_ele_profil .= " OR "; } $sql_ele_profil .= "profil='{$avec_profil[$i]}'"; if ($chaine_avec_profil != "") { $chaine_avec_profil .= ", "; } $chaine_avec_profil .= "<span style='color:red;'>" . $avec_profil[$i] . "</span>"; //$chaine_lien_modif_requete.="&avec_profil[$i]=".$avec_profil[$i]; } $sql_ele .= " AND ({$sql_ele_profil})"; } $chaine_sans_profil = ""; if (count($sans_profil) > 0) { $sql_ele_profil = ""; for ($i = 0; $i < count($sans_profil); $i++) { if ($i > 0) { $sql_ele_profil .= " AND "; } $sql_ele_profil .= "profil!='{$sans_profil[$i]}'"; if ($chaine_sans_profil != "") { $chaine_sans_profil .= ", "; } $chaine_sans_profil .= "<span style='color:red;'>" . $sans_profil[$i] . "</span>"; //$chaine_lien_modif_requete.="&sans_profil[$i]=".$sans_profil[$i]; } $sql_ele .= " AND ({$sql_ele_profil})"; } $retour = ""; $tab_retour = array(); //$tab_ele=array(); $sql_ele .= ";"; //echo "$sql_ele<br />\n"; $cpt = 0; $res_ele = mysqli_query($GLOBALS["mysqli"], $sql_ele); while ($lig_ele = mysqli_fetch_object($res_ele)) { //$tab_ele[]=$lig_ele->login; //$retour.=get_nom_prenom_eleve($lig_ele->login,'avec_classe')."<br />"; $tab_retour[] = get_nom_prenom_eleve($lig_ele->login, 'avec_classe') . "<br />"; $cpt++; } sort($tab_retour); for ($i = 0; $i < count($tab_retour); $i++) { $retour .= $tab_retour[$i]; } return $retour; }
if(document.getElementById(champs[i]).checked==true) { document.getElementById('texte_'+champs[i]).style.fontWeight='bold'; } else { document.getElementById('texte_'+champs[i]).style.fontWeight='normal'; } } } </script>\n"; } else { $liste_classes=""; for($i=0;$i<count($id_classe);$i++) { if($i>0) {$liste_classes.=", ";} $liste_classes.=get_class_from_id($id_classe[$i]); echo "<input type='hidden' name='id_classe[]' value='".$id_classe[$i]."' />\n"; } echo "<p>Vous avez choisi les classes $liste_classes</p>\n"; $liste_champs=""; for($i=0;$i<count($tab_champs);$i++) { if(isset($_POST[$tab_champs[$i]])) { echo "<input type='hidden' name='".$tab_champs[$i]."' value='y' />\n"; if($i>0) {$liste_champs.=", ";} $liste_champs.=$tab_champs[$i]; } } echo "<p>Vous souhaitez faire apparaître les champs : $liste_champs</p>\n";
$nb_comptes++; } } } $msg .= "$nb_comptes comptes ont été supprimés."; } } elseif ($action == "reinit_password") { if ($mode != "classe") { $msg .= "Erreur : Vous devez sélectionner une classe."; } elseif ($mode == "classe") { if ($_POST['classe'] == "all") { $msg .= "Vous allez réinitialiser les mots de passe de tous les utilisateurs ayant le statut 'responsable'.<br />Si vous êtes vraiment sûr de vouloir effectuer cette opération, cliquez sur le lien ci-dessous :"; $msg .= "<br /><a href=\"reset_passwords.php?user_status=responsable&mode=html".add_token_in_url()."\" target='_blank'>Réinitialiser les mots de passe (Impression HTML)</a> - ou (<a href=\"reset_passwords.php?user_status=responsable&mode=html&affiche_adresse_resp=y".add_token_in_url()."\" target='_blank'>Impression HTML avec adresse</a>)"; $msg .= "<br /><a href=\"reset_passwords.php?user_status=responsable&mode=csv".add_token_in_url()."\" target='_blank'>Réinitialiser les mots de passe (Export CSV)</a>"; } else if (is_numeric($_POST['classe'])) { $msg .= "Vous allez réinitialiser les mots de passe de tous les utilisateurs ayant le statut 'responsable' pour la classe de ".get_class_from_id($_POST['classe']).".<br />Si vous êtes vraiment sûr de vouloir effectuer cette opération, cliquez sur le lien ci-dessous :"; $msg .= "<br /><a href=\"reset_passwords.php?user_status=responsable&user_classe=".$_POST['classe']."&mode=html".add_token_in_url()."\" target='_blank'>Réinitialiser les mots de passe (Impression HTML)</a> - ou (<a href=\"reset_passwords.php?user_status=responsable&user_classe=".$_POST['classe']."&mode=html&affiche_adresse_resp=y".add_token_in_url()."\" target='_blank'>Impression HTML avec adresse</a>)"; $msg .= "<br /><a href=\"reset_passwords.php?user_status=responsable&user_classe=".$_POST['classe']."&mode=csv".add_token_in_url()."\" target='_blank'>Réinitialiser les mots de passe (Export CSV)</a>"; } } }elseif ($action == "change_auth_mode") { $ldap_write_access=false; if ($gepiSettings['ldap_write_access'] == "yes") { $ldap_write_access = true; $ldap_server = new LDAPServer; } $nb_comptes = 0; $reg_auth_mode = (in_array($_POST['reg_auth_mode'], array("gepi", "ldap", "sso"))) ? $_POST['reg_auth_mode'] : "gepi"; if ($mode != "classe") { $msg .= "Erreur : Vous devez sélectionner une classe."; } elseif ($mode == "classe") {
echo "<p>\n"; echo "Afficher les " . $gepiSettings['denomination_eleves'] . " dont le <strong>prénom</strong> contient : <input type='text' name='rech_prenom' id='rech_prenom' value='' onchange=\"affichage_et_action('prenom')\" />\n"; echo "<input type='hidden' name='page' value='{$page}' />\n"; echo "<input type='button' name='Recherche' id='Recherche_prenom' value='Rechercher' onclick=\"cherche_eleves('prenom')\" />\n"; //echo $champ_quitter_page_ou_non; echo "</p>\n"; echo "</form>\n"; echo "<div id='liste_eleves'></div>\n"; echo "</div>\n"; echo "<script type='text/javascript'>\ndocument.getElementById('recherche_avec_js').style.display='';\naffichage_et_action('nom');\naffichage_et_action('prenom');\n\nif(document.getElementById('rech_nom')) {document.getElementById('rech_nom').focus();}\n</script>\n"; if (isset($id_classe)) { $sql = "SELECT DISTINCT e.login,e.nom,e.prenom FROM eleves e, j_eleves_classes jec WHERE jec.login=e.login AND jec.id_classe='{$id_classe}' ORDER BY e.nom,e.prenom;"; //echo "$sql<br />"; $res_ele = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_ele) > 0) { echo "<a name='classe'></a><p class='bold'>" . casse_mot($gepiSettings['denomination_eleves'], 'majf2') . " de la classe de " . get_class_from_id($id_classe) . ":</p>\n"; $tab_txt = array(); $tab_lien = array(); while ($lig_ele = mysqli_fetch_object($res_ele)) { $tab_txt[] = casse_mot($lig_ele->prenom, 'majf2') . " " . my_strtoupper($lig_ele->nom); $tab_lien[] = $_SERVER['PHP_SELF'] . "?login_ele=" . $lig_ele->login . "&id_classe=" . $id_classe; } echo "<blockquote>\n"; tab_liste($tab_txt, $tab_lien, 3); echo "</blockquote>\n"; } } if ($_SESSION['statut'] == 'scolarite') { $sql = "SELECT DISTINCT c.id,c.classe FROM classes c, j_scol_classes jsc WHERE jsc.id_classe=c.id AND jsc.login='******'login'] . "' ORDER BY classe"; } elseif ($_SESSION['statut'] == 'professeur') { $sql = "SELECT DISTINCT c.id,c.classe FROM classes c,j_groupes_classes jgc,j_groupes_professeurs jgp WHERE jgp.login = '******'login'] . "' AND jgc.id_groupe=jgp.id_groupe AND jgc.id_classe=c.id ORDER BY c.classe";
$sql="SELECT DISTINCT e.login, e.elenoet, e.nom, e.prenom FROM eleves e, j_eleves_classes jec WHERE jec.id_classe='$id_classe[$i]' AND jec.login=e.login ORDER BY e.nom,e.prenom, e.login;"; $res_ele=mysqli_query($GLOBALS["mysqli"], $sql); $tab_ele=array(); if(mysqli_num_rows($res_ele)>0) { $cpt=0; while($lig_ele=mysqli_fetch_object($res_ele)) { $tab_ele[$cpt]=array(); $tab_ele[$cpt]['login']=$lig_ele->login; $tab_ele[$cpt]['elenoet']=$lig_ele->elenoet; $tab_ele[$cpt]['nom']=$lig_ele->nom; $tab_ele[$cpt]['prenom']=$lig_ele->prenom; $cpt++; } $classe=get_class_from_id($id_classe[$i]); $nb_pages=Ceil($cpt/$nb_cell); //echo "\$nb_pages=$nb_pages<br />"; $cpt=0; for($j=0;$j<$nb_pages;$j++) { $pdf->AddPage("P"); $pdf->SetXY($x0,$y0); $bordure='LRBT'; //$bordure=''; $pdf->SetFont('DejaVu','B',$fonte_size_classe); $texte="Classe de $classe"; $pdf->Cell($largeur_utile_page,$hauteur_classe,$texte,$bordure,1,'C');
echo "<input type='hidden' name='num_periode' value='{$num_periode}' />\n"; echo "<input type='submit' name='Retour_affect' value='Retour aux affectations' />\n"; echo "</form>\n"; echo "</div>\n"; //=============================== $maxper = 0; for ($i = 0; $i < count($id_classe); $i++) { $sql = "SELECT MAX(num_periode) AS maxper FROM periodes WHERE id_classe='" . $id_classe[$i] . "';"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) > 0) { $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?<br />\n"; } } //echo "maxper=$maxper<br />"; echo "<form action='" . $_SERVER['PHP_SELF'] . "' name='form1' method='post'>\n"; echo add_token_field(); if ($_SESSION['statut'] != 'administrateur') { echo "<input type='hidden' name='id_grp_groupe' value='{$id_grp_groupe}' />\n"; } for ($i = 0; $i < count($id_classe); $i++) { echo "<input type='hidden' name='id_classe[]' value='{$id_classe[$i]}' />\n"; } for ($i = 0; $i < count($id_groupe); $i++) { echo "<input type='hidden' name='id_groupe[]' value='{$id_groupe[$i]}' />\n"; } echo "<input type='hidden' name='num_periode' value='{$num_periode}' />\n";
$tab_per[] = $lig_per->num_periode; } for ($loop = 0; $loop < count($num_periode); $loop++) { if (!in_array($num_periode[$loop], $tab_per)) { $msg .= "Numéro de période '{$num_periode[$loop]}' invalide.<br />"; unset($num_periode[$loop]); } } foreach ($num_periode as $key => $i) { // Contrôler que l'élève n'est pas déjà dans une autre classe $sql = "SELECT id_classe FROM j_eleves_classes WHERE\n\t\t\t\t\t(login = '******' and\n\t\t\t\t\tid_classe!='{$id_classe}' and\n\t\t\t\t\tperiode = '{$i}')"; $test_clas_per = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($test_clas_per) > 0) { $lig_clas_per = mysqli_fetch_object($test_clas_per); //$msg.=$login_eleve." est déjà dans une autre classe : <a href=../classes/classes_const.php?id_classe=$lig_clas_per->id_classe>".get_class_from_id($lig_clas_per->id_classe)."</a> en période $i.<br />\n"; $msg .= $login_eleve . " est déjà dans une autre classe : " . get_class_from_id($lig_clas_per->id_classe) . " en période {$i}.<br />\n"; } else { $sql = "SELECT login FROM j_eleves_classes WHERE\n\t\t\t\t\t\t(login = '******' and\n\t\t\t\t\t\tid_classe = '{$id_classe}' and\n\t\t\t\t\t\tperiode = '{$i}')"; $res_clas_per = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_clas_per) == 0) { $sql = "INSERT INTO j_eleves_classes VALUES('{$login_eleve}', '{$id_classe}', {$i}, '0');"; $reg_data = mysqli_query($GLOBALS["mysqli"], $sql); if (!$reg_data) { $msg .= "Erreur lors de l'inscription de {$nom_prenom} dans la classe {$classe} en période {$i}.<br />"; } else { //$msg.="$nom_prenom a été inscrit(e) dans la classe <a href=\"../classes/classes_const.php?id_classe=$id_classe\">$classe</a> en période $i.<br />"; $msg .= "{$nom_prenom} a été inscrit(e) dans la classe {$classe} en période {$i}.<br />"; // Ménage: $sql = "SELECT id FROM infos_actions WHERE titre LIKE 'Ajout dans une classe % effectuer pour %({$login_eleve})';"; $res_actions = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_actions) > 0) {
$sql="SELECT DISTINCT e.login, e.prenom, e.nom FROM eleves e, j_eleves_classes jec WHERE e.login=jec.login AND id_classe='$id_classe' ORDER BY e.nom, e.prenom"; $res_ele=mysqli_query($GLOBALS["mysqli"], $sql); $nb_ele=mysqli_num_rows($res_ele); if($nb_ele==0) { echo "<p>Aucun élève dans la classe ".get_class_from_id($id_classe).".</p>\n"; //echo "<p><a href='".$_SERVER['PHP_SELF']."?mode=select_eleves'>Retour au choix de la classe</a></p>\n"; require("../lib/footer.inc.php"); die(); } else { echo "<p class='bold'>Classe de ".get_class_from_id($id_classe).".</p>\n"; echo "<form enctype='multipart/form-data' action='".$_SERVER['PHP_SELF']."' method='post' name='formulaire'>\n"; echo add_token_field(); echo "<input type='hidden' name='id_classe' value='$id_classe' />\n"; echo "<input type='hidden' name='mode' value='select_eleves' />\n"; echo "<input type='hidden' name='is_posted' value='1' />\n"; $tab_lvr_ele=array(); $sql="SELECT * FROM notanet_lvr_ele;"; $res_lvr_ele=mysqli_query($GLOBALS["mysqli"], $sql); while($lig_lvr_ele=mysqli_fetch_object($res_lvr_ele)) { $tab_lvr_ele[$lig_lvr_ele->login]=$lig_lvr_ele->id_lvr; }
$sql = "select * from edt_calendrier WHERE numero_periode>0 AND classe_concerne_calendrier!='';"; //echo "$sql<br />"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) > 0) { while ($lig = mysqli_fetch_object($res)) { if (preg_match("/;/", $lig->classe_concerne_calendrier)) { $tab_classe = explode(";", $lig->classe_concerne_calendrier); } else { $tab_classe[] = $lig->classe_concerne_calendrier; } for ($loop = 0; $loop < count($tab_classe); $loop++) { $sql = "UPDATE periodes SET date_fin='" . $lig->jourfin_calendrier . "' WHERE (num_periode='" . $lig->numero_periode . "' and id_classe='" . $tab_classe[$loop] . "')"; //echo "$sql<br />"; $register = mysqli_query($GLOBALS["mysqli"], $sql); if (!$register) { $msg .= "Erreur lors de la définition de la date de fin pour la classe " . get_class_from_id($tab_classe[$loop]) . " en période {$lig->numero_periode}.<br />"; } else { $nb_reg++; } } } } if ($nb_reg > 0) { $msg .= "{$nb_reg} date(s) enregistrée(s).<br />"; } } // CSS et js particulier à l'EdT $javascript_specifique = "edt_organisation/script/fonctions_edt"; $style_specifique = "templates/" . NameTemplateEDT() . "/css/style_edt"; $utilisation_jsdivdrag = ""; $utilisation_prototype = "ok";
function devoirs_tel_jour($id_classe, $date_jour, $afficher_enseignement_sans_devoir = "y") { global $color_fond_notices; $dossier_documents = ""; $mode = ""; $tmp_tab = explode("/", $date_jour); $jour = $tmp_tab[0]; $mois = $tmp_tab[1]; $annee = $tmp_tab[2]; $timestamp_debut = mktime(0, 0, 0, $mois, $jour, $annee); $timestamp_fin = $timestamp_debut + 24 * 3600 - 1; $hier = $timestamp_debut - 24 * 3600; $demain = $timestamp_debut + 24 * 3600; $retour = "<div style='float:right; width: 35px;'>\n"; $retour .= "<a href=\"javascript: getWinDevoirsDeLaClasse().setAjaxContent('./ajax_devoirs_classe.php?id_classe={$id_classe}&today='+{$hier})\" title=\"Jour précédent\"><img src='../images/icons/back.png' width='16' height='16' alt='Jour précédent' /></a>\n"; $retour .= "<a href=\"javascript: getWinDevoirsDeLaClasse().setAjaxContent('./ajax_devoirs_classe.php?id_classe={$id_classe}&today='+{$demain})\" title=\"Jour suivant\"><img src='../images/icons/forward.png' width='16' height='16' alt='Jour suivant' /></a>\n"; $retour .= "</div>\n"; $retour .= "<p class='bold'>"; // Jour précédents... comment gérer les liens selon que c'est affiché en infobulle ou en page classique $retour .= get_class_from_id($id_classe) . " : Travaux à faire pour le {$date_jour}"; // Jour suivant $retour .= "</p>\n"; $retour .= "<table class='boireaus' style='margin:3px;' border='1' summary='CDT'>\n"; // Boucle sur les groupes de la classe //$groups=get_groups_for_clas($id_classe); $sql = "select g.id from groupes g, j_groupes_classes j where (g.id = j.id_groupe and j.id_classe = '" . $id_classe . "') ORDER BY j.priorite, g.name"; //echo "$sql<br />"; $query = mysqli_query($GLOBALS["mysqli"], $sql); $tab_champs = array('classes', 'profs'); $alt = 1; $cpt = 0; while ($lig = mysqli_fetch_object($query)) { $current_group = get_group($lig->id, $tab_champs); $id_groupe = $current_group['id']; unset($tmp_tab); unset($tab_dates); unset($tab_notices); unset($tab_dev); $tmp_tab = get_dates_notices_et_dev($id_groupe, "", "", $timestamp_debut, $timestamp_fin, "y", "y"); $tab_dates = $tmp_tab[0]; $tab_notices = $tmp_tab[1]; $tab_dev = $tmp_tab[2]; unset($tmp_tab); if ($afficher_enseignement_sans_devoir == "y" || count($tab_dev) > 0) { $retour .= ""; $alt = $alt * -1; $retour .= "<tr class='lig{$alt}'>\n"; $retour .= "<td style='width:12%; text-align: center; padding: 3px;'>\n"; $retour .= "<h3 class='see_all_h3'>" . $current_group['name'] . "</h3>\n"; //$retour.="<br />\n"; $retour .= "(<span style='font-size:small; font-variant:italic; '>" . $current_group['description'] . "</span>)<br /><span style='font-size:small;'>" . $current_group["profs"]["proflist_string"] . "</span>\n"; $retour .= "</td>\n"; $retour .= "<td style='width:40%; text-align:left; padding: 3px;'>\n"; for ($k = 0; $k < count($tab_dates); $k++) { if (isset($tab_dev[$tab_dates[$k]])) { foreach ($tab_dev[$tab_dates[$k]] as $key => $value) { $retour .= "<div class='see_all_notice couleur_bord_tableau_notice color_fond_notices_t' style='margin: 1px; padding: 1px; border: 1px solid black; width: 99%; background-color:" . $color_fond_notices['t'] . "'>" . $value['contenu']; $adj = my_affiche_docs_joints($value['id_ct'], "t"); if ($adj != '') { $retour .= "<div style='border: 1px dashed black'>\n"; $retour .= $adj; $retour .= "</div>\n"; } $retour .= "</div>\n"; } $cpt++; } else { $retour .= " \n"; } } $retour .= "</td>\n"; $retour .= "</tr>\n"; } } $retour .= "</table>\n"; if ($cpt == 0) { $retour .= "<p>Aucun travail n'est (<i>encore</i>) demandé pour cette date.</p>\n"; } return $retour; }
$temoin_ajout_ou_modif_ok="y"; } } } if($temoin_ajout_ou_modif_ok=="y") { if ($_POST['reg_statut']=='scolarite'){ $sql="SELECT c.id FROM classes c;"; $res_liste_classes=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_liste_classes)>0){ while($ligtmp=mysqli_fetch_object($res_liste_classes)) { $sql="INSERT INTO j_scol_classes SET id_classe='$ligtmp->id', login='******'new_login']."';"; $insert=mysqli_query($GLOBALS["mysqli"], $sql); if(!$insert){ $msg.="<br />Erreur lors de l'association avec la classe ".get_class_from_id($ligtmp->id); } } } } } } // //action s'il s'agit d'une modification // else if ((isset($user_login)) and ($user_login!='')) { // On regarde quel est le format du login, majuscule ou minuscule... $test = sql_count(sql_query("SELECT login FROM utilisateurs WHERE (login = '******')")); if ($test == "0") $user_login = strtoupper($user_login);
$test2 = mysqli_num_rows($res2); if ($test>0) { // On a des entrées... la catégorie a déjà été associée à des matières, donc on ne la supprime pas. $liste_matieres_associees=""; while($lig=mysqli_fetch_object($res)) { if($liste_matieres_associees!='') {$liste_matieres_associees.=", ";} $liste_matieres_associees.="<a href='index.php' target='_blank'>".$lig->matiere."</a>"; } $msg .= "La catégorie n'a pas pu être supprimée, car elle a déjà été associée à des matières (<i>$liste_matieres_associees</i>).<br/>"; } elseif ($test2>0) { $liste_classes_associees=""; while($lig=mysqli_fetch_object($res2)) { if($liste_classes_associees!='') {$liste_classes_associees.=", ";} $liste_classes_associees.="<a href='../groupes/edit_class.php?id_classe=$lig->id' target='_blank'>".get_class_from_id($lig->id)."</a>"; } $msg .= "La catégorie n'a pas pu être supprimée, car elle a déjà été associée à des enseignements pour des classes (<i>$liste_classes_associees</i>).<br/>"; } else { $res = mysqli_query($GLOBALS["mysqli"], "DELETE FROM matieres_categories WHERE id = '" . $_POST['categorie_id']."'"); if (!$res) { $msg .= "Erreur lors de la suppression de la catégorie.<br/>"; } else { $msg .= "La catégorie a bien été supprimée.<br/>"; } } } } } }
// Il faut supprimer toutes les périodes après le plus petit des num_periode // Il ne faut pas se retrouver avec une classe qui aurait des périodes 1, 2, 3 puis passerait à 5 sans période 4. $sql = "SELECT num_periode FROM periodes WHERE id_classe='" . $id_classe . "' ORDER BY num_periode DESC LIMIT 1;"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) == 0) { echo "<p style='color:red'>ANOMALIE : La classe " . $classe . " n'a actuellement aucune période.</p>\n"; require "../lib/footer.inc.php"; die; } else { $lig = mysqli_fetch_object($res); $max_per = $lig->num_periode; } sort($suppr_periode); for ($i = 0; $i < count($tab_liaisons_classes); $i++) { $id_classe_courant = $tab_liaisons_classes[$i]; $classe_courante = get_class_from_id($tab_liaisons_classes[$i]); echo "<p class='bold'>Traitement de la classe {$classe_courante} :</p>\n"; echo "<blockquote>\n"; $sql = "SELECT num_periode FROM periodes WHERE id_classe='" . $id_classe_courant . "' ORDER BY num_periode DESC LIMIT 1;"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) == 0) { echo "<p style='color:red'>ANOMALIE : La classe " . $classe_courante . " n'a actuellement aucune période.</p>\n"; } else { // Boucle sur la liste des périodes en contrôlant qu'elles ne sont pas dans $tab_periode_non_supprimable //for($j=0;$j<count($suppr_periode);$j++) { for ($j = $suppr_periode[0]; $j <= $max_per; $j++) { //if(!in_array($suppr_periode[$j],$tab_periode_non_supprimable)) { if (!in_array($j, $tab_periode_non_supprimable)) { // Nettoyer j_eleves_groupes //echo "Nettoyage des inscriptions d'élèves dans des groupes/enseignements pour la période $suppr_periode[$j] : "; //$sql="DELETE FROM j_eleves_groupes WHERE periode='$suppr_periode[$j]' AND id_groupe IN (SELECT id_groupe FROM j_groupes_classes WHERE id_classe='$id_classe_courant');";
echo "/> \n"; echo "<label for='rn_couleurs_alternees'>Afficher des couleurs alternées pour les lignes de matières</label>\n"; echo "</p>\n"; //echo "<p>Formule à afficher en bas de page (<em>relevé HTML</em>):</p>\n"; echo "<p>Formule à afficher en bas de page : \n"; $titre_infobulle = "Formule de bas de page\n"; $texte_infobulle = "La formule de bas de page (<em>par défaut</em>) peut être paramétrée dans <strong>Gestion des bases/Gestion des classes/<une_classe> Paramètres/Paramètres des relevés de notes</strong><br />ou<br /><strong>Gestion des bases/Gestion des classes/Paramétrage de plusieurs classes par lots/Paramètres des relevés de notes</strong><br />\n"; $texte_infobulle .= " <br />\n"; $texte_infobulle .= "Si la formule dans le champ ci-dessous est vide, c'est la formule définie dans <strong>Paramètres du relevé HTML</strong> qui est utilisée.<br />\n"; $texte_infobulle .= " <br />\n"; $texte_infobulle .= "Une différence entre les relevés HTML et PDF :<br />\n"; $texte_infobulle .= "Dans le cas du relevé HTML la formule de <strong>Paramètres du relevé HTML</strong> est affichée en plus de la formule ci-dessous.<br />\n"; $tabdiv_infobulle[] = creer_div_infobulle('a_propos_formule_bas_de_page', $titre_infobulle, "", $texte_infobulle, "", 35, 0, 'y', 'y', 'n', 'n'); echo "<a href=\"#\" onclick='return false;' onmouseover=\"afficher_div('a_propos_formule_bas_de_page','y',100,100);\" onmouseout=\"cacher_div('a_propos_formule_bas_de_page');\"><img src='../images/icons/ico_ampoule.png' width='15' height='25' alt='Aide sur formule de bas de page' /></a>"; echo "</p>\n"; echo "<table border='0' summary='Tableau des formules de bas de page'>\n"; for ($i = 0; $i < count($tab_id_classe); $i++) { echo "<tr><td><strong>" . get_class_from_id($tab_id_classe[$i]) . "</strong>: </td>"; echo "<td>\n\t\t\t<label for='rn_formule_" . $i . "' class='invisible'>Formule</label> \n\t\t\t\t\t<input type='text' name='rn_formule[{$i}]' id='rn_formule_" . $i . "' size='40' value=\""; $sql = "SELECT * FROM classes WHERE id='" . $tab_id_classe[$i] . "';"; $res_class_tmp = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_class_tmp) > 0) { $lig_class_tmp = mysqli_fetch_object($res_class_tmp); echo $lig_class_tmp->rn_formule; } echo "\" /></td></tr>\n"; } } echo "</table>\n"; echo "<script type='text/javascript'>\n\t{$tab_js_lignes_specifiques_releve_html};\n\t{$tab_js_lignes_specifiques_releve_pdf};\n\n\tfunction reinit_lignes_specifiques_pdf_html() {\n\t\tfor(i=0;i<tab_html.length;i++) {\n\t\t\t//alert(tab_html[i]);\n\t\t\tif(document.getElementById('tr_'+tab_html[i])) {\n\t\t\t\tdocument.getElementById('tr_'+tab_html[i]).style.backgroundColor='';\n\t\t\t}\n\t\t}\n\n\t\tfor(i=0;i<tab_pdf.length;i++) {\n\t\t\tif(document.getElementById('tr_'+tab_pdf[i])) {\n\t\t\t\tdocument.getElementById('tr_'+tab_pdf[i]).style.backgroundColor='';\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction griser_lignes_specifiques_html() {\n\t\treinit_lignes_specifiques_pdf_html();\n\t\tfor(i=0;i<tab_html.length;i++) {\n\t\t\tif(document.getElementById('tr_'+tab_html[i])) {\n\t\t\t\tdocument.getElementById('tr_'+tab_html[i]).style.backgroundColor='grey';\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction griser_lignes_specifiques_pdf() {\n\t\treinit_lignes_specifiques_pdf_html();\n\t\tfor(i=0;i<tab_pdf.length;i++) {\n\t\t\tif(document.getElementById('tr_'+tab_pdf[i])) {\n\t\t\t\tdocument.getElementById('tr_'+tab_pdf[i]).style.backgroundColor='grey';\n\t\t\t}\n\t\t}\n\t}\n\n</script>\n"; //echo "\$chaine_coef=$chaine_coef<br />";
for ($loop = 0; $loop < count($tab_tmp); $loop++) { if (!isset($tab_moy_pp_inscrits[$lig->id_groupe]) || !in_array($tab_tmp[$loop], $tab_moy_pp_inscrits[$lig->id_groupe])) { $tab_moy_pp_inscrits[$lig->id_groupe][] = $tab_tmp[$loop]; } } } elseif ($lig->type == 'epreuve_blanche') { $tab_moy_epb_inscrits[$lig->id_groupe] = $lig->valeur; } elseif ($lig->type == '') { $tab_dev_inscrits[] = $lig->id_dev; } } } echo "<table class='boireaus' summary='Liste des évaluations/moyennes'>\n"; echo "<tr>\n"; for ($i = 0; $i < $nb_classes; $i++) { echo "<th>" . get_class_from_id($id_classe[$i]) . "</th>\n"; } echo "</tr>\n"; echo "<tr>\n"; $alt = 1; $cpt = 0; $cpt_grp = 0; for ($i = 0; $i < $nb_classes; $i++) { $alt = $alt * -1; echo "<td class='lig{$alt}' style='text-align:left; vertical-align:top;'>\n"; $sql = "SELECT g.* FROM groupes g, j_groupes_classes jgc, j_groupes_matieres jgm WHERE jgc.id_groupe=g.id AND jgc.id_classe='{$id_classe[$i]}' AND jgm.id_matiere='{$matiere}' AND jgm.id_groupe=jgc.id_groupe AND g.id IN (SELECT id_groupe FROM ex_groupes WHERE id_exam='{$id_exam}') ORDER BY g.name;"; //echo "$sql<br />\n"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) > 0) { while ($lig = mysqli_fetch_object($res)) { if (!in_array($lig->id, $groupes_non_visibles['cn']) || !in_array($lig->id, $groupes_non_visibles['bull'])) {
// categorie_id=='0' pour la "catégorie" Aucune... non présente dans matieres_categories $sql="SELECT DISTINCT categorie_id, id_classe FROM j_groupes_classes jgc WHERE id_classe='$lig->id' and categorie_id!='0' AND categorie_id not in (select categorie_id from j_matieres_categories_classes where classe_id='$lig->id');"; $res2=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res2)>0) { while($lig2=mysqli_fetch_object($res2)) { $sql="SELECT id, nom_court, nom_complet, priority FROM matieres_categories WHERE id='$lig2->categorie_id'"; $res_cat=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res_cat)==0) { $texte_info_action.="<span style='color:red'>La catégorie n°$lig2->categorie_id associée à la classe n°$lig->id ($lig->classe) n'existe pas dans la table 'matieres_categories'.</span><br />Vous devriez revoir le paramétrage des catégories.<br />Une solution consiste à forcer le même paramétrage pour toutes les classes depuis la page de <a href='../matieres/index.php' target='_blank'>Gestion des matières</a><br />Sinon, vous pouvez contrôler et Enregistrer dans la page <a href='../groupes/edit_class.php?id_classe=$lig->id' target='_blank'>Gestion des classes/<$lig->classe>/Enseignements</a> (<i>voir le ou les icones <img src='../images/icons/flag2.gif' width='17' height='18' /></i>).<br />"; $nb_erreurs++; } else { $lig_cat=mysqli_fetch_object($res_cat); $texte_info_action.="Insertion de l'association de la catégorie de matière '$lig_cat->nom_court' (<i>'$lig_cat->nom_complet'</i>) avec la classe ".get_class_from_id($lig->id)." : "; $sql="INSERT INTO j_matieres_categories_classes SET classe_id='$lig->id', categorie_id='$lig2->categorie_id', priority='$lig_cat->priority', affiche_moyenne='0';"; $res3=mysqli_query($GLOBALS["mysqli"], $sql); if(!$res3) { $texte_info_action.="<span style='color:red'>Echec</span>"; $nb_erreurs++; } else { $texte_info_action.="<span style='color:green'>Succès</span>"; $nb_corrections++; } $texte_info_action.="<br />\n"; } } } $cpt++;
echo "</fieldset>\n"; } echo "</div>\n"; echo "<br />"; } else { $id_liste_classes = isset($_POST['id_liste_classes']) ? $_POST["id_liste_classes"] : NULL; if (!isset($id_liste_classes)) { echo "<p>Il faut choisir au moins une classe.</p>\n"; echo "<p><a href='" . $_SERVER['PHP_SELF'] . "'>Retour</a></p>\n"; } else { echo "<form method=\"post\" action=\"liste_pdf.php\" target='_blank' name=\"imprime_pdf\">\n"; $cpt = 0; echo "<p>Choisissez les groupes :</p>\n"; for ($i = 0; $i < count($id_liste_classes); $i++) { echo "<div style='float:left; margin:1em; width:25em; border:1px solid black;'>\n"; echo "<p class='bold'>Enseignements de " . get_class_from_id($id_liste_classes[$i]) . "</p>\n"; $sql = "SELECT DISTINCT jgc.id_groupe FROM j_groupes_classes jgc, groupes g WHERE g.id=jgc.id_groupe AND jgc.id_classe='" . $id_liste_classes[$i] . "' ORDER BY g.name;"; //echo "$sql<br />"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) == 0) { echo "<p style='color:red'>Aucun enseignement dans cette classe.</p>\n"; } else { //$tab_champs_grp=array('classes','profs'); $tab_champs_grp = array('classes'); while ($lig = mysqli_fetch_object($res)) { $current_group = get_group($lig->id_groupe, $tab_champs_grp); echo "<input type='checkbox' name='id_liste_groupes[]' id='id_groupe_{$cpt}' value='{$lig->id_groupe}' onchange='change_style_grp({$cpt})' />\n"; echo "<label for='id_groupe_" . $cpt . "' id='label_id_groupe_" . $cpt . "'>" . $current_group['name'] . " (<span style='font-size:small;'>" . $current_group['description']; if (strstr($current_group['classlist_string'], ",")) { echo " en " . $current_group['classlist_string']; }
echo "\$classe[$i]=".$classe[$i]."<br />"; } for($i=0;$i<count($periode);$i++){ echo "\$periode[$i]=".$periode[$i]."<br />"; } */ if (!empty($classe[0]) and !empty($periode[0])) { for ($i = 0; $i < count($classe); $i++) { for ($j = 0; $j < count($periode); $j++) { $sql = "SELECT 1=1 FROM periodes WHERE id_classe='" . $classe[$i] . "' AND nom_periode LIKE '" . my_ereg_replace("[^.a-zA-Z0-9_-]+", "%", html_entity_decode($periode[$j])) . "' AND verouiller='N';"; $test_per = mysql_query($sql); if (mysql_num_rows($test_per) > 0) { if ($message_erreur != '') { $message_erreur .= '<br />'; } $message_erreur .= "La période {$periode[$j]} n'est pas close pour " . get_class_from_id($classe[$i]); } } } } if ($message_erreur == '') { $_SESSION['classe'] = $classe; $_SESSION['eleve'] = $eleve; $_SESSION['periode'] = $periode; $_SESSION['periode_ferme'] = $periode_ferme; $_SESSION['type_bulletin'] = $type_bulletin; $_SESSION['coefficients_a_1'] = $coefficients_a_1; $_SESSION['tri_par_etab_origine'] = $tri_par_etab_origine; //========================= // AJOUT: boireaus 20080102 if (isset($bull_pdf_debug)) {
$sql_avec_profil=""; $sql_sans_profil=""; //========================= $sql="SELECT * FROM gc_affichages WHERE projet='$projet' AND id_aff='$id_aff' AND id_req='$id_req' ORDER BY type;"; $res=mysqli_query($GLOBALS["mysqli"], $sql); while($lig=mysqli_fetch_object($res)) { switch($lig->type) { case 'id_clas_act': $id_clas_act[]=$lig->valeur; if(!isset($tab_requete[0])) {$tab_requete[0]="Classe actuelle (<span style='color:black;'>";$tab_requete_csv[0]="Classe actuelle (";} else {$tab_requete[0].=", ";$tab_requete_csv[0].=", ";} if(($lig->valeur=='Red')||($lig->valeur=='Arriv')) { $tab_requete[0].=$lig->valeur;$tab_requete_csv[0].=$lig->valeur; } else { $tab_requete[0].=get_class_from_id($lig->valeur);$tab_requete_csv[0].=get_class_from_id($lig->valeur); } $lien_affect.="&id_clas_act[]=$lig->valeur"; //$sql_ele.=" AND id_classe_actuelle='$lig->valeur'"; if($sql_ele_id_classe_act!='') {$sql_ele_id_classe_act.=" OR ";} $sql_ele_id_classe_act.="id_classe_actuelle='$lig->valeur'"; break; case 'clas_fut': $clas_fut[]=$lig->valeur; if(!isset($tab_requete[1])) {$tab_requete[1]="Classe future (<span style='color:black;'>";$tab_requete_csv[1]="Classe future (";} else {$tab_requete[1].=", ";$tab_requete_csv[1].=", ";} if(($lig->valeur=='Red')||($lig->valeur=='Dep')) { $tab_requete[1].=$lig->valeur;$tab_requete_csv[1].=$lig->valeur;
break; default: $regime = "Régime inconnu???"; break; } return $regime; } // Compteur pour gérer les 2 relevés par page en PDF $compteur_releve = 0; // Compteur pour les insertions de saut de page en HTML $compteur_releve_bis = 0; // Initialisation pour récup global dans releve_html() et signalement ensuite s'il s'agit de deux relevés pour des parents séparés $nb_releves = 1; for ($loop_classe = 0; $loop_classe < count($tab_id_classe); $loop_classe++) { $id_classe = $tab_id_classe[$loop_classe]; $classe = get_class_from_id($id_classe); for ($loop_periode_num = 0; $loop_periode_num < count($tab_periode_num); $loop_periode_num++) { $periode_num = $tab_periode_num[$loop_periode_num]; //$compteur_releve=0; if (isset($tab_releve[$id_classe][$periode_num]['eleve'])) { unset($tmp_tab); unset($rg); //$tri_par_etab_orig="y"; if ($tri_par_etab_orig == 'y') { for ($k = 0; $k < count($tab_releve[$id_classe][$periode_num]['eleve']); $k++) { $rg[$k] = $k; $tmp_tab[$k] = $tab_releve[$id_classe][$periode_num]['eleve'][$k]['etab_id']; } array_multisort($tmp_tab, SORT_DESC, SORT_NUMERIC, $rg, SORT_ASC, SORT_NUMERIC); } for ($i = 0; $i < count($tab_releve[$id_classe][$periode_num]['eleve']); $i++) {
function supp_classe() { $this->setVarGlobal('choix_info', 'resultat_classe'); foreach ($_SESSION['choix_classe'] as $classe) { foreach ($_SESSION['choix_profil'] as $profil) { $nombre = $this->data->del_by_classe_profil($classe, $profil); $this->table[] = Array("classe" => get_class_from_id($classe), "profil" => $profil, "nombre" => $nombre); } } $this->vue->LoadTemplate('nettoyage.php'); $this->vue->MergeBlock('b1', $this->table); $this->vue->show(); }
<?php /* DIV contenant le graphique */ ?> <div> <?php if ( $cpt_donnees != '0' and $donnee_select != '') { // DEBUG /* echo "<pre>"; print_r($donnee_select); echo "</pre>"; */ if($echelle_x=="C") { $tmp_tab=$donnee_select; unset($donnee_select); foreach($tmp_tab as $key => $value) { $donnee_select[get_class_from_id($key)]=$value; } } $_SESSION['donnee_e'] = ''; $_SESSION['donnee_e'] = $donnee_select; ?> <img src="../lib/graph_<?php echo $type_graphique; ?>.php?echelle_x=<?php echo $echelle_x; ?>&echelle_y=<?php echo $echelle_y; ?>&donnee_label=<?php echo $donnee_label; ?>&donnee_titre[0]=<?php echo $donnee_titre[0]; ?>" alt="Graphique" style="border: 0px; margin: 0px; padding: 0px;"/> <?php /* <a href="graph_<?php echo $type_graphique; ?>.php?echelle_x=<?php echo $echelle_x; ?>&echelle_y=<?php echo $echelle_y; ?>&donnee_label=<?php echo $donnee_label; ?>&donnee_titre[0]=<?php echo $donnee_titre[0]; ?>" alt="Graphique" style="border: 0px; margin: 0px; padding: 0px;"/>fdfdfdf</a> */ ?> <?php } else { ?>Aucune donnée correspondant à votre recherche n'a été trouvée<?php } ?> </div> <?php if ( $cpt_donnees != '0' and $donnee_select != '') { ?> <?php /* DIV contenant le tableau des données */ ?> <div> <?php
</p> <?php if (isset($_POST['recherche_protagoniste'])) { //recherche_ele($rech_nom,$_SERVER['PHP_SELF']); recherche_protagoniste($rech_nom, $_SERVER['PHP_SELF']); ?> <p class='center'><input type='submit' name='Ajouter' value='Ajouter' /></p> <?php } elseif (isset($id_classe)) { $sql = "SELECT DISTINCT e.login,e.nom,e.prenom FROM eleves e, j_eleves_classes jec WHERE jec.login=e.login AND jec.id_classe='{$id_classe}' ORDER BY e.nom,e.prenom;"; //echo "$sql<br />"; $res_ele = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_ele) > 0) { ?> <p>Elèves de la classe de <?php echo get_class_from_id($id_classe); ?> :</p> <blockquote> <?php $nombreligne = mysqli_num_rows($res_ele); $nbcol = 3; // Nombre de lignes dans chaque colonne: $nb_par_colonne = round($nombreligne / $nbcol); ?> <table width='100%'> <caption class='invisible'>Tableau de choix des élèves</caption> <tr valign='top' align='center'> <td align='left'> <?php
$nb_total_pages++; } } $pref_output_mode_pdf=get_output_mode_pdf(); $date=date("Ymd_Hi"); $nom_fich='Trombino_'; if((isset($groupe))&&($groupe!=0)) { $tab_champs=array('matieres', 'classes'); $tmp_group=get_group($groupe, $tab_champs); $nom_fich.=$tmp_group['name']."_-_"; $nom_fich.=$tmp_group['description']."_-_"; $nom_fich.=$tmp_group['matiere']['matiere']."_-_"; $nom_fich.=$tmp_group['classlist_string']."_"; } elseif(isset($classe)) { $nom_fich.=get_class_from_id($classe); } $nom_fich=remplace_accents($nom_fich, "all"); $nom_fich.=$date.'.pdf'; header('Content-Type: application/pdf'); $pdf->Output($nom_fich, $pref_output_mode_pdf); die(); } else { echo "Choix invalide."; } ?>
$max_per = 0; for ($i = 0; $i < count($id_classe); $i++) { $nb_per_classe = get_period_number($id_classe[$i]); if ($nb_per_classe > $max_per) { $max_per = $nb_per_classe; } } $titre = "<span id='span_avis_conseil'>Avis du conseil de classe</span>"; //$texte="<div id='contenu_infobulle_avis_conseil_classe'>Avis du conseil de classe</div>"; $texte = "\n<div style='float:right; width:16px'><a href='#' onclick=\"affiche_bull_simp2(); return false;\" title=\"Voir le bulletin simplifié.\"><img src='../images/icons/bulletin.png' class='icone16' alt='BullSimp' /></a></div>\n<input type='hidden' name='current_login_ele' id='current_login_ele' value='' />\n<input type='hidden' name='current_id_classe' id='current_id_classe' value='' />\n<div id='contenu_infobulle_avis_conseil_classe'>Avis du conseil de classe</div>"; $tabdiv_infobulle[] = creer_div_infobulle('div_avis_conseil_classe', $titre, "", $texte, "", 30, 0, 'y', 'y', 'n', 'n'); echo "<script type='text/javascript'>\n\t// <![CDATA[\n\tfunction affiche_avis_conseil(login_eleve, id_classe) {\n\t\tdocument.getElementById('current_login_ele').value=login_eleve;\n\t\tdocument.getElementById('current_id_classe').value=id_classe;\n\n\t\tnew Ajax.Updater(\$('contenu_infobulle_avis_conseil_classe'),'../lib/ajax_action.php?mode=tab_avis_conseil&ele_login='******'get'});\n\t\tafficher_div('div_avis_conseil_classe', 'y', 10, 10);\n\t}\n\n\tfunction affiche_bull_simp2() {\n\t\tlogin_eleve=document.getElementById('current_login_ele').value;\n\t\tid_classe=document.getElementById('current_id_classe').value;\n\t\tnum_per1=1;\n\t\tnum_per2={$max_per};\n\n\t\tdocument.getElementById('titre_entete_bull_simp').innerHTML='Bulletin simplifié de '+login_eleve+' période '+num_per1+' à '+num_per2;\n\t\tnew Ajax.Updater(\$('corps_bull_simp'),'../saisie/ajax_edit_limite.php?choix_edit=2&login_eleve='+login_eleve+'&id_classe='+id_classe+'&periode1='+num_per1+'&periode2='+num_per2,{method: 'get'});\n\n\t\tafficher_div('div_bull_simp', 'y', 10, 10);\n\t}\n\t//]]>\n</script>\n"; $cpt = 0; for ($i = 0; $i < count($id_classe); $i++) { $nb_per_classe = get_period_number($id_classe[$i]); echo "<p>Classe de <b>" . get_class_from_id($id_classe[$i]) . "</b><br />\n"; echo "<input type='hidden' name='id_classe[{$i}]' value='" . $id_classe[$i] . "' />\n"; $sql = "SELECT DISTINCT e.* FROM eleves e, j_eleves_classes jec WHERE (jec.id_classe='" . $id_classe[$i] . "' AND jec.login=e.login) ORDER BY e.nom,e.prenom,e.naissance;"; //echo "$sql<br />"; $res_ele = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_ele) == 0) { echo "Aucun élève dans cette classe.</p>\n"; } else { echo "<table class='boireaus' border='1' summary='Saisie avis'>\n"; //=========================== echo "<tr>\n"; echo "<th rowspan='4' colspan='2'>Elève</th>\n"; echo "<th colspan='3'>Avis du chef d'établissement</th>\n"; echo "<th colspan='3'>Avis du conseil de classe</th>\n"; echo "</tr>\n"; echo "<tr>\n";
fwrite($f, $content); fclose($f); $tab_fichiers_a_zipper[] = $dossier_export . "/index.html"; } } else { // C'est une liste de classes/enseignements qui a été choisie $chaine_info_classes = ""; $chaine_classes = ""; $chaine_id_classe = ""; for ($i = 0; $i < count($id_classe); $i++) { if ($i > 0) { $chaine_info_classes .= "_"; $chaine_classes .= ", "; $chaine_id_classe .= ", "; } $nom_classe[$i] = get_class_from_id($id_classe[$i]); $nom_classe_clean[$i] = preg_replace("/[^A-Za-z0-9]/", "_", remplace_accents($nom_classe[$i], 'all')); $chaine_info_classes .= $nom_classe_clean[$i]; $chaine_classes .= $nom_classe[$i]; $chaine_id_classe .= "'" . $id_classe[$i] . "'"; } // Créer une page index.html de la liste des classes //if(count($id_classe)>1) { // Préparation de l'arborescence $nom_export = "export_cdt_classes_" . $chaine_info_classes . "_" . strftime("%Y%m%d_%H%M%S"); if ($action == 'acces') { $chemin_acces = "documents/" . $dirname . "/" . $nom_export . "/index.html"; $res = enregistrement_creation_acces_cdt($chemin_acces, $description_acces, $date1_acces, $date2_acces, $id_groupe); if (!$res) { echo "<p style='color:red;'>Erreur lors de l'enregistrement de la mise en place de l'accès.</p>\n"; require "../lib/footer.inc.php";
$k = '0'; while ($k < $nombreligne) { $pb = 'no'; $login_eleve = old_mysql_result($call_eleves, $k, 'login'); $id_eleve = old_mysql_result($call_eleves, $k, 'id_eleve'); if (isset($_POST['ajout_eleve_' . $id_eleve])) { $i = 1; while ($i < $nb_periode) { $tab_per_ajout_eleve = $_POST['ajout_eleve_' . $id_eleve]; if (isset($tab_per_ajout_eleve[$i])) { // Contrôler que l'élève n'est pas déjà dans une autre classe $sql = "SELECT id_classe FROM j_eleves_classes WHERE\n\t\t\t\t\t(login = '******' and\n\t\t\t\t\tid_classe!='{$id_classe}' and\n\t\t\t\t\tperiode = '{$i}')"; $test_clas_per = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($test_clas_per) > 0) { $lig_clas_per = mysqli_fetch_object($test_clas_per); $msg_complement .= get_nom_prenom_eleve($login_eleve) . " est déjà dans une autre classe : " . get_class_from_id($lig_clas_per->id_classe) . " en période {$i}<br />\n"; $reg_ok = 'no'; } else { $sql = "SELECT login FROM j_eleves_classes WHERE\n\t\t\t\t\t\t(login = '******' and\n\t\t\t\t\t\tid_classe = '{$id_classe}' and\n\t\t\t\t\t\tperiode = '{$i}')"; $res_clas_per = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_clas_per) == 0) { $sql = "INSERT INTO j_eleves_classes VALUES('{$login_eleve}', '{$id_classe}', {$i}, '0');"; $reg_data = mysqli_query($GLOBALS["mysqli"], $sql); if (!$reg_data) { $reg_ok = 'no'; } else { // Ménage: $sql = "SELECT id FROM infos_actions WHERE titre LIKE 'Ajout dans une classe % effectuer pour %({$login_eleve})';"; $res_actions = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_actions) > 0) { while ($lig_action = mysqli_fetch_object($res_actions)) {
global $tab_conteneurs_enfants; $sql = "SELECT id FROM cn_conteneurs where parent='{$id_parent}';"; //echo "$sql<br />\n"; $res_conteneurs_enfants = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_conteneurs_enfants) > 0) { while ($lig = mysqli_fetch_object($res_conteneurs_enfants)) { $tab_conteneurs_enfants[] = $lig->id; recherche_conteneurs_enfants($lig->id); } } } // Boucle sur les classes for ($loop_classe = 0; $loop_classe < count($tab_id_classe); $loop_classe++) { //============================== if ($mode_bulletin != 'pdf') { echo "<script type='text/javascript'>\n\tdocument.getElementById('td_classe').innerHTML='" . get_class_from_id($tab_id_classe[$loop_classe]) . "';\n</script>\n"; flush(); } //============================== //$id_classe=2; $id_classe = $tab_id_classe[$loop_classe]; // Tableau destiné à stocker toutes les infos $tab_releve[$id_classe] = array(); // ++++++++++++++++++++++++++++++++++ // A REVOIR: PEUT-ETRE QU'ON IMPRIME PAS L'ADRESSE SUR LE RELEVE, MAIS SEULEMENT SUR LE BULLETIN //$affiche_adresse = sql_query1("SELECT display_address FROM classes WHERE id='".$id_classe."'"); //echo "\$affiche_adresse=$affiche_adresse<br />"; // ++++++++++++++++++++++++++++++++++ if ($choix_periode == 'intervalle') { $tab_periode_num[0] = "intervalle"; }