$tab=explode("-",$lig->date); $annee=$tab[0]; $mois=$tab[1]; $jour=$tab[2]; $date_defaut=$jour."/".$mois."/".$annee; $note_sur=$lig->note_sur; echo "<tr>\n"; echo "<td style='font-weight:bold;'>Date de l'épreuve :</td>\n"; echo "<td>\n"; if($etat!='clos') { echo "<input type='text' name='date' id='date_epreuve' value='$date_defaut' size='10' onchange='changement()' onKeyDown=\"clavier_date(this.id,event);\" />\n"; //echo "<a href=\"#calend\" onClick=\"".$cal->get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\"><img src=\"../lib/calendrier/petit_calendrier.gif\" border=\"0\" alt=\"Petit calendrier\" /></a>\n"; echo img_calendrier_js("date_epreuve", "img_bouton_date_epreuve"); } else { echo $date_defaut; } echo "</td>\n"; echo "</tr>\n"; echo "<tr>\n"; echo "<td style='font-weight:bold; vertical-align:top;'>Description :</td>\n"; echo "<td>\n"; //echo "<input type='text' name='description' value='' />"; if($etat!='clos') { echo "<textarea class='wrap' name=\"no_anti_inject_description\" rows='4' cols='40' onchange='changement()'>".$lig->description."</textarea>\n"; }
$date_defaut=$jour."/".$mois."/".$annee; */ $tab = explode("-", $lig->date); $annee = $tab[0]; $mois = $tab[1]; $jour = $tab[2]; $date_defaut = $jour . "/" . $mois . "/" . $annee; echo "<tr>\n"; echo "<td style='font-weight:bold;'>Date de l'examen :</td>\n"; echo "<td>\n"; //if($etat!='clos') { //echo "<input type='text' name='date' value='$date_defaut' size='10' onchange='changement()' />\n"; //echo "<input type='text' name='date' id='date_examen' value='$date_defaut' size='10' onchange='changement()' onKeyDown=\"clavier_date_plus_moins(this.id,event);\" />\n"; //echo "<a href=\"#calend\" onClick=\"".$cal->get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\"><img src=\"../lib/calendrier/petit_calendrier.gif\" border=\"0\" alt=\"Petit calendrier\" /></a>\n"; echo "<input type='text' name='date' id='date_examen' value='{$date_defaut}' size='10' onchange='changement()' onKeyDown=\"clavier_date(this.id,event);\" />\n"; echo img_calendrier_js("date_examen", "img_bouton_date_examen"); //} //else { // echo $date_defaut; //} echo "</td>\n"; echo "</tr>\n"; echo "<tr>\n"; echo "<td style='font-weight:bold; vertical-align:top;'>Description :</td>\n"; echo "<td>\n"; //echo "<input type='text' name='description' value='' />"; //if($etat!='clos') { echo "<textarea class='wrap' name=\"no_anti_inject_description\" rows='4' cols='40' onchange='changement()'>" . $lig->description . "</textarea>\n"; //} //else { // echo nl2br($lig->description);
$res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) > 0) { echo "<p>La ou les dates suivantes sont déjà associées à l'événement n°{$id_ev} : <strong>"; $cpt = 0; while ($lig = mysqli_fetch_object($res)) { if ($cpt > 0) { echo ", "; } echo formate_date($lig->date_evenement, "y", "court") . "<input type='hidden' name='date_heure_ev[]' value='" . $lig->date_evenement . "' />"; $cpt++; } echo "</strong><br /><span style='font-size:x-small'>(<em>il sera possible de supprimer certaines de ces salles en ne les associant pas à une date à l'étape suivante</em>)</span></p>"; } //+++++++++++++++++++++++++++++++++++++++++++++++++++++ $titre_infobulle = "Ajout de dates"; $texte_infobulle = "<form action=\"" . $_SERVER['PHP_SELF'] . "\" method=\"post\" target=\"_blank\">\n\t<p>\n\t\t<input type='text' name='date_ev' id='date_ev' size='10' value=\"" . strftime("%d/%m/%Y") . "\" onKeyDown=\"clavier_date(this.id,event);\" onchange='changement()' AutoComplete=\"off\" />\n\t\t" . img_calendrier_js("date_ev", "img_bouton_date_ev") . " \n\t\t<input type='text' name='heure_ev' id='heure_ev' size='5' value=\"" . strftime("%H:%M") . "\" onKeyDown=\"clavier_heure(this.id,event);\" onchange='changement()' AutoComplete=\"off\" />\n\t\t<img src='../images/icons/ico_ampoule.png' class='icone16' alt='Aide' title=\"Vous pouvez utiliser les flèches Haut/Bas du clavier pour modifier les dates et heures.\n\nAttention : Seules les dates et heures correctement formatées\n seront validées:\n Dates au format jj/mm/aaaa et heures au format hh:mm\">\n\t\t<br />\n\t\t<input type='button' value=\"Ajouter\" onclick=\"ajouter_date_ev()\" />\n\t</p>\n</form>"; $tabdiv_infobulle[] = creer_div_infobulle('div_ajout_date', $titre_infobulle, "", $texte_infobulle, "", 18, 0, 'y', 'y', 'n', 'n'); echo "<p><a href=\"javascript:afficher_div('div_ajout_date','y',100,100);\">Ajouter des dates</a></p><div id='div_dates' style='margin-left:3em;'></div>"; //+++++++++++++++++++++++++++++++++++++++++++++++++++++ echo "<style type='text/css'>\n.div_3_colonnes {\n\t-webkit-columns: 3;\n\t-moz-columns: 3;\n\tcolumns: 3;\n\n\t-webkit-column-gap: 3em;\n\t-moz-column-gap: 3em;\n\tcolumn-gap: 3em;\n}\n</style>"; $tab_salle = get_tab_salle_cours(); $titre_infobulle = "Ajout de lieux"; $texte_infobulle = "<p>Choisissez le ou les lieux à ajouter</p>"; $texte_infobulle .= "<div class='div_3_colonnes'>"; for ($loop = 0; $loop < count($tab_salle['list']); $loop++) { $texte_infobulle .= "<p id='p_lien_ajout_salle_" . $tab_salle['list'][$loop]['id_salle'] . "'><a href=\"javascript:ajouter_salle_ev(" . $tab_salle['list'][$loop]['id_salle'] . ")\" id='lien_ajout_salle_" . $tab_salle['list'][$loop]['id_salle'] . "'>" . $tab_salle['list'][$loop]['designation_complete'] . "</a></p>"; } //$texte_infobulle.="</td></tr></table>"; $texte_infobulle .= "</div>"; $tabdiv_infobulle[] = creer_div_infobulle('div_ajout_lieu', $titre_infobulle, "", $texte_infobulle, "", 25, 0, 'y', 'y', 'n', 'n'); echo "<p><a href=\"javascript:afficher_div('div_ajout_lieu','y',100,100);\">Ajouter des lieux</a></p><div id='div_lieux' style='margin-left:3em;'></div>";
<form method="post" action="creer_sequence.php"> <p> <label for="idSeq">Titre de la séquence</label> <input type="text" id="idSeq" name="titresequence" value="" /> <label for="idGroupe">Enseignement concerné</label> ' . $aff_select_groups . ' </p>'; $ts = date("U"); for ($a = 0; $a < $_POST['nbre_sequences']; $a++) { echo ' <div style="border:2px solid gray;padding: 5px 5px 5px 5px;background-color:' . $color_fond_notices["c"] . ';"> <p> <label for="idCR' . $a . '" style="font-weight: bold;color: red;">Compte-rendu ' . ($a + 1) . '</label> - <label for="idDate' . $a . '">Date</label> <input type="text" id="idDate' . $a . '" name="dateseance[' . $a . ']" value="' . date("d/m/Y", $ts) . '" size="12" onKeyDown="clavier_date(this.id,event);" AutoComplete="off" />'; echo img_calendrier_js("idDate" . $a, "img_bouton_idDate" . $a); echo ' </p> <p>'; $oCKeditor = new CKeditor('../ckeditor/'); $oCKeditor->editor('cr[' . $a . ']', ''); echo '</p> </div> <br />'; $ts = $ts + 86400; } echo ' <p> <input type="submit" name="enregistrer" value="Enregistrer" /> </p>'; }
if ($mode == 'groupe') { $sql = "SELECT DISTINCT sp.* FROM sp_saisies sp, j_eleves_groupes jeg WHERE jeg.id_groupe='{$id_groupe}' AND jeg.login=sp.login;"; } else { $sql = "SELECT DISTINCT sp.* FROM sp_saisies sp, j_eleves_classes jec WHERE jec.id_classe='{$id_classe}' AND jec.login=sp.login;"; } //echo "$sql<br />"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) > 0) { while ($lig = mysqli_fetch_object($res)) { if (!isset($tab_totaux[$lig->login][$lig->id_type])) { $tab_totaux[$lig->login][$lig->id_type] = 0; } $tab_totaux[$lig->login][$lig->id_type]++; } } echo "\n<form action=\"" . $_SERVER['PHP_SELF'] . "\" method=\"post\" style=\"width: 100%;\" name=\"formulaire_choix_date\">\n\t<!--fieldset class='fieldset_opacite50' style='margin-bottom:1em;'-->\n\t<p style='margin-bottom:1em;'>\n\t\t<a href='index.php'><img src='../images/icons/back.png' alt='Retour' class='back_link'/> Retour</a>\n\t\t | <a href='" . $_SERVER['PHP_SELF'] . "'>Choisir une autre classe</a>\n\t\t{$ajout_lien}\n\t\t | \n\t\t<input type='text' name='display_date' id='display_date' size='10' value='{$display_date}' \n\t\t\t\t\tonkeydown='clavier_date_plus_moins(this.id,event);' />" . img_calendrier_js("display_date", "img_bouton_display_date") . "\n\t\t<input type='submit' value='Changer de date' />"; if (isset($id_groupe)) { echo "\n\t\t<input type='hidden' name='id_groupe' value='{$id_groupe}' />"; } if (isset($id_classe)) { echo "\n\t\t<input type='hidden' name='id_classe' value='{$id_classe}' />"; } echo "\n\t\t<input type='hidden' name='id_creneau' value='{$id_creneau}' />\n\t\t<input type='hidden' name='mode' value='{$mode}' />\n\t</p>\n\t<!--/fieldset-->\n</form>\n\n{$message_groupe_ou_classe}\n\n{$message_creneau}\n\n<form action=\"" . $_SERVER['PHP_SELF'] . "\" method=\"post\" style=\"width: 100%;\" name=\"formulaire_saisie_sp\">\n\t<fieldset class='fieldset_opacite50'>\n\t\t<div style='float:right; width:20em;'><input type='submit' value=\"Enregistrer les saisies pour le créneau " . $tab_creneaux[$id_creneau]['nom_creneau'] . "\" /></div>\n\t\t<p class='bold'>Saisies pour le " . strftime("%A %d/%m/%Y", $ts_display_date) . "</p>\n\t\t" . add_token_field() . "\n\t\t<input type='hidden' name='validation_saisie' value='y' />\n\t\t" . (isset($id_groupe) ? "<input type='hidden' name='id_groupe' value='{$id_groupe}' />" : "") . "\n\t\t" . (isset($id_classe) ? "<input type='hidden' name='id_classe' value='{$id_classe}' />" : "") . "\n\t\t<input type='hidden' name='id_creneau' value='{$id_creneau}' />\n\t\t<input type='hidden' name='display_date' value='{$display_date}' />\n\t\t<input type='hidden' name='mode' value='{$mode}' />\n\n\t\t<table class='boireaus boireaus_alt'>\n\t\t\t<thead>\n\t\t\t\t<tr>\n\t\t\t\t\t<th>Élève</th>\n\t\t\t\t\t<th>Classe</th>\n\t\t\t\t\t<th>Totaux</th>"; foreach ($tab_creneaux as $current_id_creneau => $current_creneau) { if ($current_id_creneau == $id_creneau) { echo "\n\t\t\t\t\t<th title=\"" . $current_creneau['nom_creneau'] . " : " . $current_creneau['debut_court'] . " -> " . $current_creneau['fin_court'] . "\">" . $current_creneau['nom_creneau'] . "</th>"; } else { echo "\n\t\t\t\t\t<th title=\"" . $current_creneau['nom_creneau'] . " : " . $current_creneau['debut_court'] . " -> " . $current_creneau['fin_court'] . "\"><a href='" . $_SERVER['PHP_SELF'] . "?{$param_lien}&display_date={$display_date}&id_creneau={$current_id_creneau}' onclick=\"return confirm_abandon (this, change, '{$themessage}')\" title=\"Passer au créneau " . $current_creneau['nom_creneau'] . "\">" . $current_creneau['nom_creneau'] . "</a></th>"; } } if ($active_module_trombinoscopes) {
$timestamp_date_debut_cdt_mail = mktime(0, 0, 0, $tmp_tab_date[1], $tmp_tab_date[0], $tmp_tab_date[2]); } } if ($envoi_mail == "y") { $contexte_affichage_docs_joints = "visu_eleve"; } //include("../lib/calendrier/calendrier.class.php"); //$cal1 = new Calendrier("form_envoi_cdt_mail", "date_debut_cdt_mail"); // Choisir qui a le droit if ($_SESSION['statut'] != 'eleve' && $_SESSION['statut'] != 'responsable') { //echo "<span id='lien_mail' style='display:none'> - <a href='see_all.php?id_classe=$id_classe&login_eleve=$selected_eleve_login&id_groupe=$id_groupe&ordre=$current_ordre&imprime=$current_imprime' onclick=\"\" title=\"Envoyer par mail une partie du cahier de textes (par exemple pour envoyer à un parent d'élève qui a oublié ses compte et mot de passe).\">Mail</a></span>\n"; echo "<span id='lien_mail' style='display:none'> - <a href=\"javascript:afficher_div('div_envoi_cdt_par_mail','y',10,10)\" title=\"Envoyer par mail une partie du cahier de textes (par exemple pour envoyer à un parent d'élève qui a oublié ses compte et mot de passe).\">Mail</a></span>\n\t\t\t<script type='text/javascript'>document.getElementById('lien_mail').style.display=''</script>\n"; echo "</div>\n"; $titre_infobulle = "Envoi du CDT par mail"; $texte_infobulle = "<form action='" . $_SERVER['PHP_SELF'] . "' name='form_envoi_cdt_mail' method='post'>\n\t<input type='hidden' name='envoi_mail' value='y' />\n\t<input type='hidden' name='id_classe' value='{$id_classe}' />\n\t<input type='hidden' name='login_eleve' value='{$login_eleve}' />\n\t<input type='hidden' name='id_groupe' value='{$id_groupe}' />\n\t<input type='hidden' name='current_ordre' value='{$current_ordre}' />\n\t<input type='hidden' name='imprime' value='{$current_imprime}' />\n\t<p>Précisez à quelle adresse vous souhaitez envoyer le contenu du cahier de textes :<br />\n\tMail : <input type='text' name='mail_dest' value='' /><br />\n\tIndiquez également, quelle partie du cahier de textes vous souhaitez envoyer :<br />\n\tA partir du : <input type='text' name='date_debut_cdt_mail' id='date_debut_cdt_mail' size='10' value='" . $date_debut_cdt_mail . "' onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" />"; $texte_infobulle .= img_calendrier_js("date_debut_cdt_mail", "img_bouton_date_debut_cdt_mail"); //$texte_infobulle.="<a href=\"#calend\" onClick=\"".$cal1->get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\"><img src=\"../lib/calendrier/petit_calendrier.gif\" alt=\"Calendrier\" border=\"0\" /></a>"; $texte_infobulle .= "<input type='submit' value='Envoyer' />\n</form>"; $tabdiv_infobulle[] = creer_div_infobulle('div_envoi_cdt_par_mail', $titre_infobulle, "", $texte_infobulle, "", 30, 0, 'y', 'y', 'n', 'n'); } //================================================ echo "<hr />\n"; echo "<div id='div_compte_rendu_envoi_mail' style='text-align:center;'></div>"; $tab_id_grp = array(); $tab_grp = array(); $tab_dates = array(); $tab_dates2 = array(); $tab_timestamp_dates = array(); //$tab_notices_exclues_mail=array(); $sql = "SELECT DISTINCT id_groupe FROM j_groupes_classes WHERE id_classe='{$id_classe}' ORDER BY priorite;"; $res = mysqli_query($GLOBALS["mysqli"], $sql);
//============================================= //$cal2 = new Calendrier("form3", "choix_date2"); $titre = "Choix de la date"; //$texte="<input type='text' name='choix_date' id='choix_date' size='10' value='$display_date'"; $texte = "<form name='form3' action='" . $_SERVER['PHP_SELF'] . "' method='post'>\n"; $texte .= "<p align='center'>\n"; //$texte.="<input type='hidden' name='id_div' id='choix_date_id_div' value='' />\n"; //$texte.="<input type='hidden' name='statut' id='choix_date_statut' value='' />\n"; //$texte.="<input type='hidden' name='id_classe' id='choix_date_id_classe' value='' />\n"; //$texte.=add_token_field(); //$texte.="<input type='hidden' id='csrf_alea' name='csrf_alea' value='".$_SESSION['gepi_alea']."' />\n"; $texte .= add_token_field(true); $texte .= "<input type='hidden' name='periode2' id='choix_date_periode2' value='' />\n"; $texte .= "<input type='text' name='choix_date2' id='choix_date2' size='10' value='' onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" />\n"; //$texte.="<a href='#calend' onClick=\"".$cal2->get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170).";\"><img src='../lib/calendrier/petit_calendrier.gif' alt='Calendrier' border='0' /></a>\n"; $texte .= img_calendrier_js("choix_date2", "img_bouton_choix_date2"); $texte .= "<br />\n"; //$texte.="<input type='button' name='choix_date_valider2' value='Valider' onclick=\"g_date()\" />\n"; $texte .= "<input type='submit' name='choix_date_valider2' value='Valider' />\n"; $texte .= "</p>\n"; $texte .= "</form>\n"; $tabdiv_infobulle[] = creer_div_infobulle('infobulle_choix_date2', $titre, "", $texte, "", 14, 0, 'y', 'y', 'n', 'n'); //============================================= if ($acces_app_ele_resp == 'manuel') { // Le mode global paramétré est 'manuel' // Si des paramétrages particuliers sont à autre chose que 'manuel', on bascule/modifie vers 'manuel'. echo "<form method='post' action='" . $_SERVER['PHP_SELF'] . "' name='form_manuel'>\n"; //echo "<p align='center'><input type='submit' name='submit' value='Valider' /></p>\n"; //echo add_token_field(); //echo "<input type='hidden' id='csrf_alea' name='csrf_alea' value='".$_SESSION['gepi_alea']."' />\n"; echo add_token_field(true);
if ($nom_periode[$k] == '') { $nom_periode[$k] = "période " . $k; } $alt = $alt * -1; //$cal[$k] = new Calendrier("formulaire", "date_fin_period_".$k); echo "<tr class='lig{$alt}'>\n"; echo "<td style='padding: 5px;'>Période {$k}</td>\n"; echo "<td style='padding: 5px;'><input type='text' id='nom_period_{$k}' name='nom_period[{$k}]'"; echo " onchange='changement()'"; echo " value=\"" . $nom_periode[$k] . "\" size='30' /></td>\n"; echo "<td style='padding: 5px;'><input type='text' id='date_fin_period_{$k}' name='date_fin_period[{$k}]'"; echo " onchange='changement()'"; echo " onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\""; echo " value=\"" . strftime("%d/%m/%Y", mysql_date_to_unix_timestamp($date_fin_periode[$k])) . "\" size='10' />"; //echo "<a href=\"#calend\" onClick=\"".$cal[$k]->get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\"><img src=\"../lib/calendrier/petit_calendrier.gif\" border=\"0\" alt=\"Petit calendrier\" /></a>\n"; echo img_calendrier_js("date_fin_period_" . $k, "img_bouton_date_fin_period_" . $k); echo "</td>\n"; echo "</tr>\n"; $k++; } ?> </table> <!--/center--> <?php } ?> <center><input type='submit' value='Enregistrer' style='margin: 30px 0 30px 0;'/></center> <input type='hidden' name='is_posted' value="yes" /> <input type='hidden' name='id_classe' value='<?php echo $id_classe; ?>
?> </span> </p> <p class="ligneCaps" title="Les dates de début et de fin d'année sont utilisées pour limiter les saisies à des dates situées dans l'année scolaire (cahier de textes, absences,...)"> <label for='date_debut_annee' class="cellTab70"> Date de fin de l'année scolaire : </label> <span class="cellTab"> <input type="text" name="date_fin_annee" id="date_fin_annee" size="10" value="<?php echo $date_fin_annee; ?> " onchange='changement()' onKeyDown="clavier_date(this.id,event);" AutoComplete="off" /> <?php echo img_calendrier_js("date_fin_annee", "img_bouton_date_fin_annee"); ?> </span> <br /> </p> <p class="ligneCaps"> <label for='gepiSchoolRne' class="cellTab70"> Numéro RNE de l'établissement : </label> <span class="cellTab"> <input type="text" name="gepiSchoolRne" size="8" value="<?php echo getSettingValue("gepiSchoolRne"); ?> " onchange='changement()' /> </span>
if ($_SESSION['statut'] == "administrateur" || getSettingAOui("EdtIcalUpload" . casse_mot($_SESSION['statut'], "majf"))) { include "../ckeditor/ckeditor.php"; echo "\n<h3 class='gepi'>Envoi de fichiers emploi du temps au format ICAL/ICS</h3>\n<div style='margin-left:3em;'>\n<form enctype='multipart/form-data' action='" . $_SERVER['PHP_SELF'] . "' id='form_envoi' method='post'>\n\t<fieldset class='fieldset_opacite50'>\n\t\t" . add_token_field() . "\n\t\t<p>Veuillez choisir la classe et fournir le fichier ICS/ICAL :<br />\n\t\tClasse : <select name='id_classe'>"; foreach ($tab_classe as $id_classe => $classe) { $sql = "SELECT 1=1 FROM edt_ics WHERE id_classe='{$id_classe}';"; $test = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($test) > 0) { $commentaire = " - (un emploi du temps est déjà saisi/importé)"; } else { $commentaire = ""; } echo "\n\t\t\t\t<option value='{$id_classe}'>" . $classe . $commentaire . "</option>"; } echo "\n\t\t</select><br />\n\t\t<input type=\"file\" size=\"65\" name=\"fich_ics_file\" id='input_ics_file' class='fieldset_opacite50' />\n\t\t<input type='hidden' name='mode' value='upload' />\n\t\t<input type='hidden' name='is_posted' value='yes' />\n\n\t\t<input type='submit' id='input_submit2' value='Valider' />\n\t\t<input type='button' id='input_button2' value='Valider' style='display:none;' onclick=\"check_champ_file()\" /></p>"; if (acces_depos_message()) { echo "\n\n\t\t<br />\n\n\t\t<p><input type='checkbox' name='deposer_message' id='deposer_message' value='y' onchange=\"checkbox_change('deposer_message'); change_affichage_details_message();\" /><label for='deposer_message' id='texte_deposer_message'> Déposer un message en page d'accueil à destination des utilisateurs suivants\n\t\t<span id='span_nbsp_destinataires'> :</span>\n\t\t<span id='span_nbsp_destinataires_bis' style='display:none;'>...</span>\n\t\t</label></p>\n\t\t<div id='div_details_message'>\n\t\t\t<ul>\n\t\t\t\t<li><input type='checkbox' name='destinataire[]' id='destinataire_administrateur' value='administrateur' onchange=\"checkbox_change('destinataire_administrateur')\" /><label for='destinataire_administrateur' id='texte_destinataire_administrateur'> administrateurs</label></li>\n\t\t\t\t<li><input type='checkbox' name='destinataire[]' id='destinataire_scolarite' value='scolarite' onchange=\"checkbox_change('destinataire_administrateur')\" /><label for='destinataire_scolarite' id='texte_destinataire_scolarite'> comptes scolarité suivant cette classe</label></li>\n\t\t\t\t<li><input type='checkbox' name='destinataire[]' id='destinataire_cpe' value='cpe' onchange=\"checkbox_change('destinataire_cpe')\" /><label for='destinataire_cpe' id='texte_destinataire_cpe'> cpe</label></li>\n\t\t\t\t<li><input type='checkbox' name='destinataire[]' id='destinataire_professeur' value='professeur' onchange=\"checkbox_change('destinataire_professeur')\" /><label for='destinataire_professeur' id='texte_destinataire_professeur'> professeurs de la classe</label></li>\n\t\t\t\t<li><input type='checkbox' name='destinataire[]' id='destinataire_eleve' value='eleve' onchange=\"checkbox_change('destinataire_eleve')\" /><label for='destinataire_eleve' id='texte_destinataire_eleve'> élèves de la classe</label></li>\n\t\t\t\t<li><input type='checkbox' name='destinataire[]' id='destinataire_responsable' value='responsable' onchange=\"checkbox_change('destinataire_responsable')\" /><label for='destinataire_responsable' id='texte_destinataire_responsable'> parents d'élèves de la classe</label></li>\n\t\t\t</ul>\n\n\t\t\t<p>Le message sera visible du <input type='text' name = 'display_date_debut' id= 'display_date_debut' size='10' value = \"" . $display_date_debut . "\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" title=\"Vous pouvez modifier les dates à l'aide des flèches Haut/bas du clavier.\" />" . img_calendrier_js("display_date_debut", "img_bouton_display_date_debut") . " au <input type='text' name = 'display_date_fin' id= 'display_date_fin' size='10' value = \"" . $display_date_fin . "\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" title=\"Vous pouvez modifier les dates à l'aide des flèches Haut/bas du clavier.\" />" . img_calendrier_js("display_date_fin", "img_bouton_display_date_fin") . ".</p>\n\n\t\t\t<p><i title=\"La suppression du message ne supprimera pas l'emploi du temps.\nLa suppression permet seulement à l'utilisateur d'alléger\nsa page d'accueil une fois le message lu.\">Le destinataire peut supprimer ce message : </i>\n\t\t\t<label for='suppression_possible_oui'>Oui </label><input type='radio' name='suppression_possible' id='suppression_possible_oui' value='oui' checked='checked' />\n\t\t\t<label for='suppression_possible_non'>Non </label><input type='radio' name='suppression_possible' id='suppression_possible_non' value='non' /><br />\n\t\t\tLa suppression de ces messages EDT est toujours possible pour les comptes administrateur, scolarite et cpe.</p>"; $oCKeditor = new CKeditor('../ckeditor/'); $oCKeditor->editor('message', $contenu); echo "\n\t\t\t<p>Dans le cas où vous déposez un message, vous pouvez, en précisant le numéro de semaine ci-dessous, faire pointer le lien EDT du message directement sur la semaine souhaitée : \n\t\t\t\t<select name='num_semaine_annee'>\n\t\t\t\t\t<option value=''></option>"; if (strftime("%m") >= 8) { $annee = strftime("%Y"); } else { $annee = strftime("%Y") - 1; } for ($n = 36; $n < 52; $n++) { $tmp_tab = get_days_from_week_number($n, $annee); echo "\n\t\t\t\t\t<option value='{$n}|{$annee}'>Semaine n° {$n} - (du " . $tmp_tab['num_jour'][1]['jjmmaaaa'] . " au " . $tmp_tab['num_jour'][7]['jjmmaaaa'] . ")</option>"; } $annee++; for ($n = 1; $n < 28; $n++) { $m = $n < 10 ? "0" . $n : $n;
$date = htmlspecialchars(@old_mysql_result($req, 0, "date")); $heure = htmlspecialchars(@old_mysql_result($req, 0, "heure")); $description = htmlspecialchars(@old_mysql_result($req, 0, "description")); echo "<input type=\"hidden\" name=\"is_posted\" value=\"modif\" />\n"; echo "<input type=\"hidden\" name=\"id_inter\" value=\"".$id_inter."\" />\n"; } else { $date = ""; $heure = ""; $description = ""; echo "<input type=\"hidden\" name=\"is_posted\" value=\"ajout\" />\n"; } echo "<H2>Ajout d'un item</H2>\n"; echo "<p>un item correspond à une entité (<em>stage, intervention dans les établissements, réunion,...</em>) à laquelle les utilisateurs peuvent s'inscrire.</p>\n"; echo "<table cellpadding=\"6\">\n"; echo "<tr><td>Date<br />(<em>au format AAAA/MM/JJ ou JJ/MM/AAAA</em>) : </td><td style='vertical-align:bottom;'><input type=\"text\" name=\"date\" id=\"date_item\" value=\"$date\" size=\"20\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" title=\"Vous pouvez modifier la date à l'aide des flèches Up et Down du pavé de direction.\" />"; echo img_calendrier_js("date_item", "img_bouton_date_item"); echo "</td></tr>\n"; echo "<tr><td>Heure : </td><td><input type=\"text\" name=\"heure\" value=\"$heure\" size=\"20\" /></td></tr>\n"; echo "<tr><td>Description (<em>lieu, ...</em>) : </td><td><input type=\"text\" name=\"description\" value=\"$description\" size=\"50\" /></td></tr>\n"; echo "</table>\n"; echo "<input type=\"submit\" name=\"Enregistrer\" value=\"Envoyer\" />\n"; echo "</form>\n"; require("../lib/footer.inc.php"); die(); } echo "<p class=bold><a href=\"../accueil.php\"><img src='../images/icons/back.png' alt='Retour' class='back_link'/> Retour</a> | <a href=\"./inscription_config.php?action=ajout\">Ajouter un item</a> | <a href=\"javascript:centrerpopup('help.php',800,500,'scrollbars=yes,statusbar=no,resizable=yes')\">Aide</a></p>\n"; echo "<form name=\"formulaire2\" method=\"post\" action=\"inscription_config.php\">\n"; echo add_token_field(); echo "<H2>Activation / Désactivation</H2>\n";
genDateSelector("end_", $eday, $emonth, $eyear, "more_years"); ?> </td> </tr> </table> <?php echo "</li>\n"; // 20150810 $sql = "SELECT * FROM edt_calendrier WHERE numero_periode!='0' AND etabferme_calendrier='1' ORDER BY numero_periode;"; $res = mysqli_query($GLOBALS["mysqli"], $sql); $cpt_per = 0; if (mysqli_num_rows($res) > 0) { echo "<li style='margin-top:1em;'><p>Vous pouvez définir les dates de début et fin de périodes :<br />\n\t<a href='javascript:ajout_un_an_dates_per()'>Ajouter un an aux dates et fins de périodes ci-dessous</a></p>\n\t<ul>\n"; while ($lig = mysqli_fetch_object($res)) { echo "\n\t\t<li>\n\t\t\t<p style='text-indent:-3em;margin-left:3em;'>\n\t\t\t\t<input type='checkbox' name='maj_dates_per[]' id='maj_dates_per_" . $cpt_per . "' value='" . $lig->id_calendrier . "' onchange=\"checkbox_change(this.id)\" /><label for='maj_dates_per_" . $cpt_per . "' id='texte_maj_dates_per_" . $cpt_per . "'> " . $lig->nom_calendrier . "</label> :<br />\n\t\t\t\tDébut :<input type='text' name='debut_per_" . $lig->id_calendrier . "' id='debut_per_" . $cpt_per . "' value='" . gmstrftime("%d/%m/%Y", $lig->debut_calendrier_ts) . "' onchange=\"document.getElementById('maj_dates_per_" . $cpt_per . "').checked=true;checkbox_change('maj_dates_per_" . $cpt_per . "');\" size='8' onkeydown=\"clavier_date_plus_moins(this.id,event);document.getElementById('maj_dates_per_" . $cpt_per . "').checked=true;checkbox_change('maj_dates_per_" . $cpt_per . "');\" AutoComplete='off' /> à 00h00 " . img_calendrier_js("debut_per_" . $cpt_per, "img_bouton_debut_per_" . $cpt_per) . "<br />\n\t\t\t\tFin :<input type='text' name='fin_per_" . $lig->id_calendrier . "' id='fin_per_" . $cpt_per . "' value='" . gmstrftime("%d/%m/%Y", $lig->fin_calendrier_ts) . "' onchange=\"document.getElementById('maj_dates_per_" . $cpt_per . "').checked=true;checkbox_change('maj_dates_per_" . $cpt_per . "');\" size='8' onkeydown=\"clavier_date_plus_moins(this.id,event);document.getElementById('maj_dates_per_" . $cpt_per . "').checked=true;checkbox_change('maj_dates_per_" . $cpt_per . "');\" AutoComplete='off' /> à 23h59 " . img_calendrier_js("fin_per_" . $cpt_per, "img_bouton_fin_per_" . $cpt_per) . "\n\t\t\t</p>\n\t\t\t<p>\n\t\t\t\t" . strftime("%Y-%m-%d %H:%M:%S", $lig->debut_calendrier_ts) . " à \n\t\t\t\t" . strftime("%Y-%m-%d %H:%M:%S", $lig->fin_calendrier_ts) . "\n\t\t\t</p>\n\t\t</li>"; $cpt_per++; } echo "\n\t</ul>\n\t<p style='margin-top:1em;'>NOTES :</p>\n\t<ul>\n\t\t<li>Vous pourrez modifier ces dates par la suite s'il faut affiner ou corriger.</li>\n\t\t<li>Seules les périodes cochées verront leurs dates de début et fin modifiées.</li>\n\t</ul>\n</li>\n"; } echo "<li style='margin-top:1em;'>\n"; echo "<script type='text/javascript'>\n\t/*\n\tfunction maj_dates_periodes() {\n\t\tfor(i=0;i<{$cpt_per};i++) {\n\n\t\t}\n\t}\n\t*/\n\n\tfunction ajout_un_an_dates_per() {\n\t\tfor(i=0;i<{$cpt_per};i++) {\n\t\t\tif(document.getElementById('maj_dates_per_'+i)) {\n\t\t\t\tdocument.getElementById('maj_dates_per_'+i).checked=true;\n\t\t\t\tcheckbox_change('maj_dates_per_'+i);\n\t\t\t}\n\t\t\tif(document.getElementById('debut_per_'+i)) {\n\t\t\t\ttmp_date=document.getElementById('debut_per_'+i).value;\n\t\t\t\ttab=tmp_date.split('/');\n\t\t\t\tdocument.getElementById('debut_per_'+i).value=tab[0]+'/'+tab[1]+'/'+eval(eval(tab[2])+1);\n\t\t\t}\n\t\t\tif(document.getElementById('fin_per_'+i)) {\n\t\t\t\ttmp_date=document.getElementById('fin_per_'+i).value;\n\t\t\t\ttab=tmp_date.split('/');\n\t\t\t\tdocument.getElementById('fin_per_'+i).value=tab[0]+'/'+tab[1]+'/'+eval(eval(tab[2])+1);\n\t\t\t}\n\t\t}\n\t}\n\n\t" . js_checkbox_change_style() . "\n</script>"; // Sauvegarde temporaire: $sql = "CREATE TABLE IF NOT EXISTS tempo_utilisateurs\n(login VARCHAR( 50 ) NOT NULL PRIMARY KEY,\npassword VARCHAR(128) NOT NULL,\nsalt VARCHAR(128) NOT NULL,\nemail VARCHAR(50) NOT NULL,\nidentifiant1 VARCHAR( 10 ) NOT NULL ,\nidentifiant2 VARCHAR( 50 ) NOT NULL ,\nstatut VARCHAR( 20 ) NOT NULL ,\nauth_mode ENUM('gepi','ldap','sso') NOT NULL default 'gepi',\ndate_reserve DATE DEFAULT '0000-00-00',\ntemoin VARCHAR( 50 ) NOT NULL\n);"; $creation_table = mysqli_query($GLOBALS["mysqli"], $sql); echo "<p>Pour pouvoir imposer les mêmes comptes parents et/ou élèves d'une année sur l'autre (<em>pour se connecter dans Gepi, consulter les cahiers de textes, les notes,...</em>), il convient avant d'initialiser la nouvelle année (<em>opération qui vide/nettoye un certain nombre de tables</em>) de mettre en réserve dans une table temporaire les login, mot de passe, email et statut des parents/élèves de façon à leur redonner le même login et restaurer l'accès lors de l'initialisation.</p>\n"; echo "<p>"; $sql = "SELECT 1=1 FROM utilisateurs WHERE statut='eleve';"; if ($debug_ele == 'y') { echo "<span style='color:green;'>{$sql}</span><br />"; }
function affiche_edt2($login_eleve, $id_classe, $login_prof, $type_affichage, $ts_display_date, $affichage = "semaine", $x0 = 350, $y0 = 150, $largeur_edt = 800, $hauteur_une_heure = 60) { //echo "y0=$y0<br />"; global $debug_edt; global $hauteur_jour, $hauteur_entete; global $tab_group_edt; //+++++++++++++++++++++ // 20150622 /* global $tab_coord_creneaux; if((!isset($tab_coord_creneaux))||(!is_array($tab_coord_creneaux))) { $tab_coord_creneaux=array(); } */ global $jours; global $largeur_jour; global $x_jour; global $premiere_heure; global $marge_secu; global $hauteur_titre; global $affichage_complementaire_sur_edt; //+++++++++++++++++++++ global $complement_liens_edt; //+++++++++++++++++++++ global $tab_coord_prises; $tab_coord_prises = array(); $param_lien_edt = ""; if ($login_eleve != "") { $param_lien_edt .= "login_eleve={$login_eleve}&"; } elseif ($id_classe != "") { $param_lien_edt .= "id_classe={$id_classe}&"; } elseif ($login_prof != "") { $param_lien_edt .= "login_prof={$login_prof}&"; } $param_lien_edt .= "type_affichage={$type_affichage}&"; if (isset($complement_liens_edt) && $complement_liens_edt != "") { $param_lien_edt .= $complement_liens_edt . "&"; } $html = ""; global $mode_infobulle; $chaine_alea = remplace_accents(rand(1, 1000000) . "_" . microtime(), "all"); $html .= "<script type='text/javascript'>\n\tfunction edt_semaine_suivante(num_semaine_annee) {\n\t\t//alert('plop');\n\t\tnew Ajax.Updater(\$('div_edt_" . $chaine_alea . "'),'../edt/index2.php?num_semaine_annee='+num_semaine_annee+'&mode=afficher_edt_js&{$param_lien_edt}&largeur_edt={$largeur_edt}&y0={$y0}&hauteur_une_heure={$hauteur_une_heure}&hauteur_jour={$hauteur_jour}',{method: 'get'});\n\t}\n</script>\n\n<div id='div_edt_" . $chaine_alea . "'>"; $ts_debut_annee = getSettingValue('begin_bookings'); $ts_fin_annee = getSettingValue('end_bookings'); $display_date = strftime("%d/%m/%Y", $ts_display_date); $num_semaine = strftime("%V", $ts_display_date); if ($num_semaine < 10) { // Le %V a l'air de déjà renvoyer le mois sur 2 chiffres $num_semaine_annee = "0" . $num_semaine . "|" . strftime("%Y", $ts_display_date); $num_semaine_annee = preg_replace("/^[0]{2,}/", "0", $num_semaine_annee); } else { $num_semaine_annee = $num_semaine . "|" . strftime("%Y", $ts_display_date); } $tab_jour = get_tab_jour_ouverture_etab(); if ($affichage == "semaine") { $largeur_jour = $largeur_edt / count($tab_jour); $tab_jours_aff = array(); if (in_array("lundi", $tab_jour)) { $tab_jours_aff[] = 1; } if (in_array("mardi", $tab_jour)) { $tab_jours_aff[] = 2; } if (in_array("mercredi", $tab_jour)) { $tab_jours_aff[] = 3; } if (in_array("jeudi", $tab_jour)) { $tab_jours_aff[] = 4; } if (in_array("vendredi", $tab_jour)) { $tab_jours_aff[] = 5; } if (in_array("samedi", $tab_jour)) { $tab_jours_aff[] = 6; } if (in_array("dimanche", $tab_jour)) { $tab_jours_aff[] = 7; } } else { $largeur_jour = $largeur_edt; $tab_jours_aff = array($affichage); } $hauteur_titre = 10; $hauteur_entete = 40; $opacity_couleur = 0.5; $marge_secu = 6; $font_size = ceil($hauteur_une_heure / 5); $font_size2 = ceil($hauteur_une_heure / 8); $font_size3 = ceil($hauteur_une_heure / 10); $tab_group_edt = array(); $tab_aid_edt = array(); $tab_couleur_matiere = array(); $tab_prof = array(); $tab_salle = get_tab_salle_cours(); //$html=""; //$html="\$num_semaine_annee=$num_semaine_annee<br />"; $tab = explode("|", $num_semaine_annee); $num_semaine = $tab[0]; $annee = $tab[1]; /* $_SESSION['edt_ics_num_semaine']=$num_semaine; $_SESSION['edt_ics_annee']=$annee; */ $jours = get_days_from_week_number($num_semaine, $annee); /* echo "<pre>"; print_r($jours); echo "</pre>"; */ $info_type_semaine = ""; $info_type_semaine_html = ""; $type_semaine = get_type_semaine($num_semaine); //echo "\$type_semaine=$type_semaine<br />"; if ($type_semaine != "") { $info_type_semaine = " - Semaine {$type_semaine}"; $info_type_semaine_html = " <span style='font-size:" . $font_size2 . "pt;' title=\"Semaine {$type_semaine}\">({$type_semaine})</span>"; } //================================================================================= $premiere_heure = 8; //$derniere_heure=16.5; $derniere_heure = 17; // Récupérer les horaires de début et de fin de journée dans le module EDT $sql = "SELECT * FROM edt_creneaux ORDER BY heuredebut_definie_periode ASC LIMIT 1;"; if ($debug_edt == "y") { echo "{$sql}<br />"; } $res_premiere_heure = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_premiere_heure) > 0) { $lig_premiere_heure = mysqli_fetch_object($res_premiere_heure); if ($debug_edt == "y") { echo "Première heure du jour : " . $lig_premiere_heure->heuredebut_definie_periode; } $tmp_tab = explode(":", $lig_premiere_heure->heuredebut_definie_periode); $premiere_heure = $tmp_tab[0] + $tmp_tab[1] / 60; if ($debug_edt == "y") { echo " soit " . $premiere_heure . "<br />"; } } $sql = "SELECT * FROM edt_creneaux ORDER BY heuredebut_definie_periode DESC LIMIT 1;"; $res_derniere_heure = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_derniere_heure) > 0) { $lig_derniere_heure = mysqli_fetch_object($res_derniere_heure); $tmp_tab = explode(":", $lig_derniere_heure->heurefin_definie_periode); $derniere_heure = $tmp_tab[0] + $tmp_tab[1] / 60; } //================================================================================= $tmp_tab = explode(".", $premiere_heure); $heure_debut_jour = $tmp_tab[0]; $min_debut_jour = 0; if (isset($tmp_tab[1])) { $min_debut_jour = floor(($premiere_heure - $tmp_tab[0]) * 60); } $sec_debut_jour = 0; // Hauteur du DIV de la journée $hauteur_jour = ($derniere_heure - $premiere_heure) * $hauteur_une_heure; $y_max = $y0 + $hauteur_entete + $hauteur_jour; //================================================================== $x_jour = array(); if ($affichage == "semaine") { // Affichage des N jours de la semaine //==================================== // Recherche du numéro de semaine précédente $num_semaine_annee_precedente = ""; if (strftime("%V", $jours['num_jour'][1]['timestamp']) <= strftime("%V", $ts_fin_annee)) { if (strftime("%V", $jours['num_jour'][7]['timestamp']) > 1) { if ($num_semaine - 1 > 9) { $num_semaine_annee_precedente = $num_semaine - 1 . "|" . $annee; } else { $num_semaine_annee_precedente = "0" . ($num_semaine - 1) . "|" . $annee; } } else { $num_semaine_annee_precedente = "52|" . ($annee - 1); } } elseif (strftime("%V", $jours['num_jour'][1]['timestamp']) > strftime("%V", $ts_debut_annee)) { if ($num_semaine - 1 > 9) { $num_semaine_annee_precedente = $num_semaine - 1 . "|" . $annee; } else { $num_semaine_annee_precedente = "0" . ($num_semaine - 1) . "|" . $annee; } } // Semaine précédente if ($num_semaine_annee_precedente != "") { //background-color:silver; $x_courant = $x0 - 32; $html .= "<div style='position:absolute; top:" . ($y0 + floor(($hauteur_entete - 16) / 2)) . "px; left:" . $x_courant . "px; width:30px; height:" . $hauteur_entete . "px; text-align:center;' title=\"Semaine précédente\"><a href='" . $_SERVER['PHP_SELF'] . "?" . $param_lien_edt . "num_semaine_annee=" . $num_semaine_annee_precedente . "'><img src='../images/arrow_left.png' class='icone16' alt='Précédent' /></a></div>"; } //==================================== //==================================== // Bandeaux verticaux des jours for ($i = 0; $i < count($tab_jour); $i++) { $x_courant = $x0 + $i * $largeur_jour; $x_jour[$i] = $x_courant; // Abscisse du jour au-dessus de l'entête (pour debug) if ($debug_edt == "y") { $html .= "<div style='position:absolute; top:" . ($y0 - $hauteur_entete - 2) . "px; left:" . $x_courant . "px; width:" . $largeur_jour . "px; height:" . $hauteur_entete . "px;'>" . $x_jour[$i] . "</div>"; } // Nom du jour en entête $html .= "<div style='position:absolute; top:" . $y0 . "px; left:" . $x_courant . "px; width:" . $largeur_jour . "px; height:" . $hauteur_entete . "px; border:1px solid black; text-align:center; background-color:silver;' title=\"" . $jours['num_jour'][$i + 1]['jjmmaaaa'] . "\">" . ucfirst($tab_jour[$i]) . "<br /><span style='font-size:x-small'>" . $jours['num_jour'][$i + 1]['jjmmaaaa'] . "</span></div>"; // Bande verticale de la journée $y_courant = $y0 + $hauteur_entete; $html .= "<div style='position:absolute; top:" . $y_courant . "px; left:" . $x_courant . "px; width:" . $largeur_jour . "px; height:" . $hauteur_jour . "px; border:1px solid black; background-color:white;z-index:1;'></div>"; // Pour avoir les traits verticaux $html .= "<div style='position:absolute; top:" . $y_courant . "px; left:" . $x_courant . "px; width:" . $largeur_jour . "px; height:" . $hauteur_jour . "px; border:1px solid black;z-index:4;'></div>"; } //==================================== //==================================== // Semaine suivante $num_semaine_annee_suivante = ""; if (strftime("%V", $jours['num_jour'][1]['timestamp']) >= strftime("%V", $ts_debut_annee)) { if (strftime("%V", $jours['num_jour'][7]['timestamp']) >= 52) { $num_semaine_annee_suivante = "01|" . ($annee + 1); } else { $num_semaine_annee_suivante = $num_semaine + 1 . "|" . $annee; } } elseif (strftime("%V", $jours['num_jour'][1]['timestamp']) < strftime("%V", $ts_fin_annee)) { if ($num_semaine - 1 > 9) { $num_semaine_annee_suivante = $num_semaine + 1 . "|" . $annee; } else { $num_semaine_annee_suivante = "0" . ($num_semaine + 1) . "|" . $annee; } } if ($num_semaine_annee_suivante != "") { //background-color:silver; $x_courant = $x0 + $largeur_edt; $html .= "<div style='position:absolute; top:" . ($y0 + floor(($hauteur_entete - 16) / 2)) . "px; left:" . $x_courant . "px; width:30px; height:" . $hauteur_entete . "px; text-align:center; z-index:20;' title=\"Semaine suivante\"><a href='" . $_SERVER['PHP_SELF'] . "?" . $param_lien_edt . "num_semaine_annee=" . $num_semaine_annee_suivante . "'"; if ($mode_infobulle == "y") { $html .= " onclick=\"edt_semaine_suivante('{$num_semaine_annee_suivante}'); return false;\""; } $html .= "><img src='../images/arrow_right.png' class='icone16' alt='Suivant' /></a></div>"; } //==================================== } else { //==================================== // Jour précédent // Boucler sur 7 jours pour trouver le précédent jour ouvré $display_date_precedente = ""; $display_date_precedente_num_jour = ""; $ts_test = $ts_display_date; $cpt = 0; while ($cpt < 7 && $ts_test > $ts_debut_annee) { $ts_test -= 3600 * 24; if (in_array(strftime("%A", $ts_test), $tab_jour)) { $display_date_precedente = strftime("%d/%m/%Y", $ts_test); $display_date_precedente_num_jour = strftime("%u", $ts_test); break; } $cpt++; } if ($display_date_precedente != "") { //background-color:silver; $x_courant = $x0 - 32; $html .= "<div style='position:absolute; top:" . ($y0 + floor(($hauteur_entete - 16) / 2)) . "px; left:" . $x_courant . "px; width:30px; height:" . $hauteur_entete . "px; text-align:center;' title=\"Jour précédent\"><a href='" . $_SERVER['PHP_SELF'] . "?" . $param_lien_edt . "affichage=" . $display_date_precedente_num_jour . "&display_date=" . $display_date_precedente . "'><img src='../images/arrow_left.png' class='icone16' alt='Précédent' /></a></div>"; } //==================================== //==================================== // Colonne du jour $x_courant = $x0; $x_jour[0] = $x_courant; // Abscisse du jour au-dessus de l'entête (pour debug) if ($debug_edt == "y") { $html .= "<div style='position:absolute; top:" . ($y0 - $hauteur_entete - 2) . "px; left:" . $x_courant . "px; width:" . $largeur_jour . "px; height:" . $hauteur_entete . "px;'>" . $x_jour[0] . "</div>"; } // Nom du jour en entête $html .= "\n\t<form action='" . $_SERVER['PHP_SELF'] . "' id='form_chgt_date' method='post'>\n\t\t<input type='hidden' name='affichage' value='jour'>\n\t\t<input type='hidden' name='display_date' id='display_date' value='' onchange=\"document.getElementById('form_chgt_date').submit();\">\n\t\t<!--input type='text' name='display_date' id='display_date' value=''-->\n\t</form>\n\n\t<div style='position:absolute; top:" . $y0 . "px; left:" . $x_courant . "px; width:" . $largeur_jour . "px; height:" . $hauteur_entete . "px; border:1px solid black; text-align:center; background-color:silver;' title=\"" . $jours['num_jour'][$affichage]['jjmmaaaa'] . $info_type_semaine . "\">\n\n\t\t<div style='float:right; width:16px;'>" . img_calendrier_js("display_date", "img_bouton_display_date") . "</div>\n\n\t\t<span onclick=\"action_edt_cours('')\" title=\"Cliquez...\">" . ucfirst($jours['num_jour'][$affichage]['nom_jour']) . "</span><br />\n\t\t<span style='font-size:x-small'>" . $jours['num_jour'][$affichage]['jjmmaaaa'] . "</span>{$info_type_semaine_html}\n\t</div>"; // Bande verticale de la journée $y_courant = $y0 + $hauteur_entete; $html .= "<div style='position:absolute; top:" . $y_courant . "px; left:" . $x_courant . "px; width:" . $largeur_jour . "px; height:" . $hauteur_jour . "px; border:1px solid black; background-color:white;z-index:1;'></div>"; // Pour avoir les traits verticaux $html .= "<div style='position:absolute; top:" . $y_courant . "px; left:" . $x_courant . "px; width:" . $largeur_jour . "px; height:" . $hauteur_jour . "px; border:1px solid black;z-index:4;'></div>"; //==================================== //==================================== // Jour suivant // Boucler sur 7 jours pour trouver le jour ouvré suivant $display_date_suivante = ""; $display_date_suivante_num_jour = ""; $ts_test = $ts_display_date; $cpt = 0; while ($cpt < 7 && $ts_test < $ts_fin_annee) { $ts_test += 3600 * 24; if (in_array(strftime("%A", $ts_test), $tab_jour)) { $display_date_suivante = strftime("%d/%m/%Y", $ts_test); $display_date_suivante_num_jour = strftime("%u", $ts_test); break; } $cpt++; } if ($display_date_suivante != "") { //background-color:silver; $x_courant = $x0 + $largeur_jour; $html .= "<div style='position:absolute; top:" . ($y0 + floor(($hauteur_entete - 16) / 2)) . "px; left:" . $x_courant . "px; width:30px; height:" . $hauteur_entete . "px; text-align:center; z-index:20;' title=\"Jour suivant\"><a href='" . $_SERVER['PHP_SELF'] . "?" . $param_lien_edt . "affichage=" . $display_date_suivante_num_jour . "&display_date=" . $display_date_suivante . "'><img src='../images/arrow_right.png' class='icone16' alt='Suivant' /></a></div>"; } //==================================== } //================================================================== // Affichage des heures sur la droite $heure_ronde_debut_jour = floor($premiere_heure); $heure_courante = $heure_ronde_debut_jour; $heure_ronde_debut_jour = floor($derniere_heure); $hauteur_texte = 12; // A la louche $hauteur_demi_texte = ceil($hauteur_texte / 2); while ($heure_courante < $heure_ronde_debut_jour) { $y_courant = $y0 + $hauteur_entete + ($heure_courante - $premiere_heure) * $hauteur_une_heure - $hauteur_demi_texte; $html .= "<div style='position:absolute; top:" . $y_courant . "px; left:" . ($x0 + $largeur_edt) . "px; width:30px; height:" . $hauteur_une_heure . "px; text-align:center;'>" . $heure_courante . "H</div>"; $heure_courante++; } //================================================================== //================================================================== // Affichage des noms de créneaux sur la gauche $sql = "SELECT * FROM edt_creneaux ORDER BY heuredebut_definie_periode;"; $res_creneaux = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_creneaux) > 0) { while ($lig = mysqli_fetch_object($res_creneaux)) { $tab_h = explode(":", $lig->heuredebut_definie_periode); $c = $tab_h[0] + $tab_h[1] / 60 - $premiere_heure; $y1_courant = $y0 + $hauteur_entete + round($c * $hauteur_une_heure); $tab_h = explode(":", $lig->heurefin_definie_periode); $c = $tab_h[0] + $tab_h[1] / 60 - $premiere_heure; $y2_courant = $y0 + $hauteur_entete + round($c * $hauteur_une_heure); $hauteur_courante = $y2_courant - $y1_courant; /* // 20150622 $tab_coord_creneaux['creneau'][$lig->id_definie_periode]['ordonnees'][0]=$y1_courant; $tab_coord_creneaux['creneau'][$lig->id_definie_periode]['ordonnees'][1]=$y2_courant; */ $style_fond_creneau = "background-color:white;"; if ($lig->type_creneaux == "pause") { $style_fond_creneau = "background-color:silver;"; } elseif ($lig->type_creneaux == "repas") { $style_fond_creneau = "background-color:grey;"; } // Nom du créneau sur la gauche $html .= "<div style='position:absolute; top:" . $y1_courant . "px; left:" . ($x0 - 32) . "px; width:30px; height:" . $hauteur_courante . "px; text-align:center; border:1px solid black; vertical-align:middle;" . $style_fond_creneau . "' title=\"Créneau {$lig->nom_definie_periode}\nDe {$lig->heuredebut_definie_periode} à {$lig->heurefin_definie_periode}.\"><div style='position:relative; width:2em; height:1em;'>" . $lig->nom_definie_periode . "</div></div>"; // Bandes horizontales du créneau $html .= "<div style='position:absolute; top:" . $y1_courant . "px; left:" . $x0 . "px; width:" . $largeur_edt . "px; height:" . $hauteur_courante . "px; border:1px solid silver; z-index:2;" . $style_fond_creneau . "'></div>"; // Debug if ($debug_edt == "y") { $html .= "<div style='position:absolute; top:" . $y1_courant . "px; left:" . ($x0 + $largeur_edt + 30) . "px; width:" . $largeur_edt . "px; height:" . $hauteur_courante . "px; color:red; z-index:2;'>{$y1_courant}</div>"; } } } //================================================================== $tab_cours = array(); $tab_nom_classe = array(); /* $sql="SELECT * FROM edt_cours ec, edt_creneaux ecr WHERE ec.id_groupe IN (SELECT id_groupe from j_eleves_groupes WHERE login = '******') AND (ec.id_semaine='' OR ec.id_semaine='0' OR ec.id_semaine='$type_semaine') AND ec.id_definie_periode=ecr.id_definie_periode ORDER BY heuredebut_definie_periode;"; //echo "$sql<br />"; $res_cours_de_la_semaine=mysqli_query($GLOBALS["mysqli"], $sql); while($lig=mysqli_fetch_object($res_cours_de_la_semaine)) { if($debug_edt=="y") { echo "<pre style='border:1px solid red; margin:0.5em;'>"; print_r($lig); echo "</pre>"; } $ts_debut=mysql_date_to_unix_timestamp($lig->date_debut); $horaire_debut=strftime("%H:%M", $ts_debut); $ts_fin=mysql_date_to_unix_timestamp($lig->date_fin); $horaire_fin=strftime("%H:%M", $ts_fin); $num_jour=strftime("%u", $ts_debut)-1; $jour_debut_jour=strftime("%d", $ts_debut); $mois_debut_jour=strftime("%m", $ts_debut); $annee_debut_jour=strftime("%Y", $ts_debut); $ts_debut_jour=mktime($heure_debut_jour,$min_debut_jour,$sec_debut_jour,$mois_debut_jour,$jour_debut_jour,$annee_debut_jour); $duree_en_min=floor(($ts_fin-$ts_debut)/60); $hauteur_courante=floor($duree_en_min*$hauteur_une_heure/60); //$hauteur_courante=floor($duree_en_min*$hauteur_une_heure/60)-ceil($marge_secu/2); //$duree_depuis_debut_journee=floor(($ts_debut-$ts_debut_jour)/3600); $duree_depuis_debut_journee=floor(10*($ts_debut-$ts_debut_jour)/3600)/10; //$y_courant=$y0+$hauteur_entete+$duree_depuis_debut_journee*$hauteur_une_heure; $y_courant=$y0+$hauteur_entete+$duree_depuis_debut_journee*$hauteur_une_heure+ceil($marge_secu/2); if($debug_edt=="y") { $html.="\$jour_debut_jour=$jour_debut_jour<br />"; $html.="\$ts_debut_jour=$ts_debut_jour<br />"; $html.="\$ts_debut=$ts_debut<br />"; $html.="\$duree_depuis_debut_journee=$duree_depuis_debut_journee<br />"; $html.="y_courant=$y_courant<br />"; } $cpt_courant=0; if(isset($tab_cours[$num_jour]['y'][$y_courant])) { $cpt_courant=count($tab_cours[$num_jour]['y'][$y_courant]); } $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['hauteur']=$hauteur_courante; // A FAIRE : Stocker dans des tableaux les retours de fonction qui suivent pour ne pas faire plusieurs fois les mêmes appels $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['matiere']=get_tab_matiere_gepi_pour_matiere_ics($lig->matiere_ics); $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['prof']=get_tab_prof_gepi_pour_prof_ics($lig->prof_ics); $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['salle']=$lig->salle_ics; $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['id_cours']=$lig->id; $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['id_classe']=$lig->id_classe; if(!array_key_exists($lig->id_classe, $tab_nom_classe)) { $tab_nom_classe[$lig->id_classe]=get_nom_classe($lig->id_classe); } $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['classe']=$tab_nom_classe[$lig->id_classe]; $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['horaire_debut']=$horaire_debut; $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['horaire_fin']=$horaire_fin; // Stockage des identifiants de cours que n'ont pas les élèves faute de suivre la matière if(($_SESSION['statut']=='eleve')&& ($tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['matiere']['association_faite']=="y")&& (!in_array($tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['matiere']['matiere'], $tab_matieres_eleve))) { $tab_id_cours_exclu[]=$tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['id_cours']; } } */ //================================================================== // On passe à l'affichage du contenu du ou des jours //for($num_jour=1;$num_jour<=count($tab_jour);$num_jour++) { for ($loop_jour = 0; $loop_jour < count($tab_jours_aff); $loop_jour++) { $num_jour = $tab_jours_aff[$loop_jour]; $jour_sem = $jours['num_jour'][$num_jour]['nom_jour']; $jour_debut_jour = $jours['num_jour'][$num_jour]['jj']; $mois_debut_jour = $jours['num_jour'][$num_jour]['mm']; $annee_debut_jour = $jours['num_jour'][$num_jour]['aaaa']; $ts_debut_jour = mktime($heure_debut_jour, $min_debut_jour, $sec_debut_jour, $mois_debut_jour, $jour_debut_jour, $annee_debut_jour); if ($debug_edt == "y") { echo "num_jour={$num_jour}<br />"; echo "heure_debut_jour={$heure_debut_jour}<br />"; echo "min_debut_jour={$min_debut_jour}<br />"; echo "ts_debut_jour={$ts_debut_jour}<br />"; } // A REVOIR On suppose là qu'il n'y a qu'un id_calendrier. // A revoir quand on enregistrera des id_calendrier autres // id_groupe, id_aid, duree, heuredeb_dec, id_semaine, id_cours $ajout_sql = ""; if ($login_eleve != "") { //$ajout_sql.="ec.id_groupe IN (SELECT id_groupe from j_eleves_groupes WHERE login = '******') AND "; $ajout_sql .= "(ec.id_groupe IN (SELECT id_groupe from j_eleves_groupes WHERE login = '******') OR ec.id_aid IN (SELECT DISTINCT id_aid FROM j_aid_eleves WHERE login = '******')) AND "; } if ($id_classe != "") { //$ajout_sql.="ec.id_groupe IN (SELECT id_groupe from j_groupes_classes WHERE id_classe = '".$id_classe."') AND "; $ajout_sql .= "(ec.id_groupe IN (SELECT id_groupe from j_groupes_classes WHERE id_classe = '" . $id_classe . "') OR \n\t\t\t\t\tec.id_aid IN (SELECT DISTINCT id_aid FROM j_aid_eleves jae, j_eleves_classes jec \n\t\t\t\t\t\t\t\t\t\t\tWHERE jae.login=jec.login AND jec.id_classe='" . $id_classe . "')) AND "; } if ($login_prof != "") { //$ajout_sql.="ec.id_groupe IN (SELECT id_groupe from j_groupes_professeurs WHERE login = '******') AND "; $ajout_sql .= "ec.login_prof = '" . $login_prof . "' AND "; } //20150206 // A FAIRE : Prendre en compte un id_calendrier en fonction de la semaine choisie // A VERIFIER : Est-ce id_calendar ou id_calendrier (il y a les 2 dans la table) // Pour un emploi du temps élève, recuperer la classe associée à la semaine // puis tester l'id_calendrier dans edt_cours // Pour un emploi du temps prof, problème si ce n'est pas la même période EDT (id_calendrier) selon les classes // Cela dit le prof n'étant pas sensé être avec 2 classes différentes à un même instant, // il ne devrait pas y avoir de collision (sauf cas de l'EDT mal rempli avec un même enseignement regroupement de deux classes, inscrit à deux moments) // POUR LE MOMENT : Si il y a plusieurs id_calendrier remplis dans edt_cours la requête ci-dessous va cumuler les EDT. //20150205 $afficher_sem_AB = isset($_POST['afficher_sem_AB']) ? $_POST['afficher_sem_AB'] : (isset($_GET['afficher_sem_AB']) ? $_GET['afficher_sem_AB'] : "n"); if ($afficher_sem_AB == "y") { $avec_contrainte_semaine = ""; } else { $avec_contrainte_semaine = "(ec.id_semaine='' OR ec.id_semaine='0' OR ec.id_semaine='{$type_semaine}') AND "; } $sql = "SELECT DISTINCT * FROM edt_cours ec, edt_creneaux ecr WHERE\n\t\t\t\t\t\tec.jour_semaine = '" . $jour_sem . "' AND\n\t\t\t\t\t\t{$ajout_sql}\n\t\t\t\t\t\t{$avec_contrainte_semaine}\n\t\t\t\t\t\tec.id_definie_periode=ecr.id_definie_periode \n\t\t\t\t\tORDER BY heuredebut_definie_periode;"; //echo "<div style='margin-left:1000px'>"; //echo "$sql<br />"; //echo "</div>"; $res = mysqli_query($GLOBALS["mysqli"], $sql); while ($lig = mysqli_fetch_object($res)) { /* echo "<div style='margin-left:1000px'><pre>"; print_r($lig); echo "</pre></div>"; */ $tab_debut = explode(":", $lig->heuredebut_definie_periode); $heure_debut = $tab_debut[0]; $min_debut = $tab_debut[1]; $sec_debut = 0; $ts_debut = mktime($heure_debut, $min_debut, $sec_debut, $mois_debut_jour, $jour_debut_jour, $annee_debut_jour); $horaire_debut = $heure_debut . ":" . $min_debut; $tab_fin = explode(":", $lig->heurefin_definie_periode); $heure_fin = $tab_fin[0]; $min_fin = $tab_fin[1]; $sec_fin = 0; $ts_fin = mktime($heure_fin, $min_fin, $sec_fin, $mois_debut_jour, $jour_debut_jour, $annee_debut_jour); // Problème avec les cours à cheval sur les créneaux de 1/2h du midi. //$duree_courante=(($ts_fin-$ts_debut)/60)*($lig->duree/2); $duree_courante = 60 * ($lig->duree / 2); if ($lig->heuredeb_dec == "0.5") { $ts_debut += ceil(($ts_fin - $ts_debut) / 2); } $horaire_cours_courant = "\nDébut du cours : " . strftime("%H:%M", $ts_debut) . ""; $horaire_cours_courant .= "\nDurée du cours : " . $duree_courante . "minutes"; $duree_depuis_debut_journee = floor(10 * ($ts_debut - $ts_debut_jour) / 3600) / 10; $y_courant = $y0 + $hauteur_entete + $duree_depuis_debut_journee * $hauteur_une_heure + ceil($marge_secu / 2); //$hauteur_courante=$hauteur_une_heure*floor(10*($ts_fin-$ts_debut)/3600)/10-ceil($marge_secu/2); $hauteur_courante = floor($hauteur_une_heure * $lig->duree / 2) - $marge_secu; $largeur_courante = $largeur_jour - $marge_secu; if ($affichage == "semaine") { $x_courant = $x0 + $largeur_jour * ($num_jour - 1) + ceil($marge_secu / 2); } else { $x_courant = $x0 + ceil($marge_secu / 2); } if ($debug_edt == "y") { $html .= "\$jour_debut_jour={$jour_debut_jour}<br />"; $html .= "\$ts_debut_jour={$ts_debut_jour}<br />"; $html .= "\$ts_debut={$ts_debut}<br />"; $html .= "\$duree_depuis_debut_journee={$duree_depuis_debut_journee}<br />"; $html .= "y_courant={$y_courant}<br />"; } $cpt_courant = 0; if (isset($tab_cours[$num_jour]['y'][$y_courant])) { $cpt_courant = count($tab_cours[$num_jour]['y'][$y_courant]); } $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['hauteur'] = $hauteur_courante; if ($ts_debut + 600 > $ts_fin_annee || $ts_debut - 600 < $ts_debut_annee) { $bgcolor_courant = "silver"; $contenu_cellule = "Hors année scolaire"; $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['contenu_cellule'] = $contenu_cellule; $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['bgcolor_cellule'] = $bgcolor_courant; } elseif ($id_classe != "" && check_ts_vacances($ts_debut + 600, $id_classe)) { $bgcolor_courant = "silver"; $contenu_cellule = nom_ts_vacances($ts_debut + 600, $id_classe); $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['contenu_cellule'] = $contenu_cellule; $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['bgcolor_cellule'] = $bgcolor_courant; } else { $chaine_nom_enseignement = ""; $chaine_matiere = ""; $chaine_liste_classes = ""; $chaine_noms_profs = ""; $chaine_proflist_string = ""; $chaine_salle_courante = ""; $chaine_salle_courante_span_title = ""; $chaine_type_semaine_du_cours_courant = ""; if ("{$lig->id_semaine}" != "" && "{$lig->id_semaine}" != "0") { $chaine_type_semaine_du_cours_courant = "\nSemaine : " . $lig->id_semaine; } /* else { $chaine_type_semaine_du_cours_courant="\nSemaine : standard"; } */ if ($lig->id_groupe != "" && $lig->id_groupe != "0") { if (!isset($tab_group_edt[$lig->id_groupe])) { $tab_group_edt[$lig->id_groupe] = get_group($lig->id_groupe, array('matieres', 'classes', 'profs')); } $current_group = $tab_group_edt[$lig->id_groupe]; $chaine_nom_enseignement = $current_group['name'] . " (" . $current_group['description'] . ") en " . $current_group['classlist_string'] . " avec " . $current_group['profs']['proflist_string']; $chaine_matiere = $current_group['matiere']['matiere']; $chaine_proflist_string = $current_group['profs']['proflist_string']; if (!isset($tab_couleur_matiere[$current_group['matiere']['matiere']])) { $tab_couleur_matiere[$current_group['matiere']['matiere']] = get_couleur_edt_matiere($current_group['matiere']['matiere']); } $bgcolor_courant = $tab_couleur_matiere[$current_group['matiere']['matiere']]; $chaine_liste_classes = $current_group['classlist_string']; $cpt_prof = 0; foreach ($current_group['profs']['users'] as $current_prof_login => $current_prof) { if ($cpt_prof > 0) { $chaine_noms_profs .= ", "; } $chaine_noms_profs .= $current_prof['nom']; /* if(!isset($tab_prof[$lig->login_prof])) { $tab_prof[$lig->login_prof]['nom']=$current_prof['nom']; $tab_prof[$lig->login_prof]['designation']=$current_prof['civilite']." ".$current_prof['nom'].mb_substr($current_prof['prenom'],0,1); } */ $cpt_prof++; } } elseif ($lig->id_aid != "") { // A FAIRE Remplir un $tab_edt_aid pour ne pas faire plusieurs fois les mêmes requêtes: if (!isset($tab_aid_edt[$lig->id_aid])) { $sql = "SELECT a.nom AS nom_aid, ac.nom, ac.nom_complet FROM aid a, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\taid_config ac \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE a.indice_aid=ac.indice_aid AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ta.id='" . $lig->id_aid . "';"; $res_aid = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_aid) == 0) { $tab_aid_edt[$lig->id_aid]['nom_general_court'] = "AID"; $tab_aid_edt[$lig->id_aid]['nom_general_complet'] = "AID"; $tab_aid_edt[$lig->id_aid]['nom_aid'] = "AID"; $tab_aid_edt[$lig->id_aid]['proflist_string'] = "..."; } else { $lig_aid = mysqli_fetch_object($res_aid); $tab_aid_edt[$lig->id_aid]['nom_general_court'] = $lig_aid->nom; $tab_aid_edt[$lig->id_aid]['nom_general_complet'] = $lig_aid->nom_complet; $tab_aid_edt[$lig->id_aid]['nom_aid'] = $lig_aid->nom_aid; $sql = "SELECT u.civilite, u.nom, u.prenom FROM utilisateurs u, j_aid_utilisateurs jau \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE u.login=jau.id_utilisateur AND \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tjau.id_aid='" . $lig->id_aid . "'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tORDER BY u.nom, u.prenom;"; $res_aid_prof = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_aid_prof) == 0) { $tab_aid_edt[$lig->id_aid]['proflist_string'] = "..."; } else { $tab_aid_edt[$lig->id_aid]['proflist_string'] = ""; $cpt_aid_prof = 0; while ($lig_aid_prof = mysqli_fetch_object($res_aid_prof)) { if ($cpt_aid_prof > 0) { $tab_aid_edt[$lig->id_aid]['proflist_string'] .= ", "; } $tab_aid_edt[$lig->id_aid]['proflist_string'] .= $lig_aid_prof->civilite . " " . $lig_aid_prof->nom . " " . mb_substr($lig_aid_prof->prenom, 0, 1); $cpt_aid_prof++; } } } } $current_aid = $tab_aid_edt[$lig->id_aid]; $chaine_nom_enseignement = $current_aid['nom_aid'] . " (" . $current_aid['nom_general_court'] . ") (" . $current_aid['nom_general_complet'] . ") avec " . $current_aid['proflist_string']; $chaine_matiere = $current_aid['nom_aid']; if (!isset($tab_prof[$lig->login_prof])) { $sql = "SELECT * FROM utilisateurs WHERE login='******';"; $res_prof = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_prof) > 0) { $lig_prof = mysqli_fetch_object($res_prof); $tab_prof[$lig->login_prof]['nom'] = $lig_prof->nom; $tab_prof[$lig->login_prof]['designation'] = $lig_prof->civilite . " " . $lig_prof->nom . " " . mb_substr($lig_prof->prenom, 0, 1); } else { $tab_prof[$lig->login_prof]['nom'] = "..."; $tab_prof[$lig->login_prof]['designation'] = "..."; } } $chaine_noms_profs = $tab_prof[$lig->login_prof]['nom']; $chaine_proflist_string = $current_aid['proflist_string']; $bgcolor_courant = "azure"; } else { // On ne devrait pas passer là $chaine_nom_enseignement = "Cours..."; $chaine_matiere = "Matière"; if (!isset($tab_prof[$lig->login_prof])) { $sql = "SELECT * FROM utilisateurs WHERE login='******';"; $res_prof = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res_prof) > 0) { $lig_prof = mysqli_fetch_object($res_prof); $tab_prof[$lig->login_prof]['nom'] = $lig_prof->nom; $tab_prof[$lig->login_prof]['designation'] = $lig_prof->civilite . " " . $lig_prof->nom . " " . mb_substr(${$lig_prof}->prenom, 0, 1); } else { $tab_prof[$lig->login_prof]['nom'] = "..."; $tab_prof[$lig->login_prof]['designation'] = "..."; } } $chaine_noms_profs = $tab_prof[$lig->login_prof]['nom']; $chaine_proflist_string = $tab_prof[$lig->login_prof]['designation']; $bgcolor_courant = "white"; } if (isset($tab_salle['indice'][$lig->id_salle])) { $chaine_salle_courante_span_title = " en salle " . $tab_salle['indice'][$lig->id_salle]['designation_complete']; $chaine_salle_courante = "<br /><span style='font-size:" . $font_size3 . "pt;' title=\"Salle " . $tab_salle['indice'][$lig->id_salle]['designation_complete'] . "\">" . $tab_salle['indice'][$lig->id_salle]['designation_courte'] . "</span>"; } if ($type_affichage == "prof") { $liste_classes = ""; if ($chaine_liste_classes != "") { $liste_classes = "<br />" . $chaine_liste_classes; } $contenu_cellule = "<span style='font-size:" . $font_size . "pt;' title=\"" . $chaine_nom_enseignement . $chaine_salle_courante_span_title . $chaine_type_semaine_du_cours_courant . $horaire_cours_courant . "\">" . $chaine_matiere . "</span>" . $liste_classes . $chaine_salle_courante; } else { $contenu_cellule = "<span style='font-size:" . $font_size . "pt;' title=\"" . $chaine_nom_enseignement . $chaine_salle_courante_span_title . $chaine_type_semaine_du_cours_courant . $horaire_cours_courant . "\">" . $chaine_matiere . "</span><br />\n\t\t\t\t<span style='font-size:" . $font_size2 . "pt;' title=\"" . $chaine_proflist_string . "\">" . $chaine_noms_profs . "</span>" . $chaine_salle_courante; } if ($lig->id_semaine != '0' && $lig->id_semaine != '') { $contenu_cellule .= " <span class='fieldset_opacite50' style='float:right; font-size:" . $font_size2 . "pt;' title=\"Semaine " . $lig->id_semaine . "\">" . $lig->id_semaine . "</span>"; } $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['matiere'] = $chaine_matiere; $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['prof'] = $chaine_noms_profs; $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['salle'] = $chaine_salle_courante; $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['id_cours'] = $lig->id_cours; $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['id_classe'] = $id_classe; if (!array_key_exists($id_classe, $tab_nom_classe)) { $tab_nom_classe[$id_classe] = get_nom_classe($id_classe); } $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['classe'] = $tab_nom_classe[$id_classe]; $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['horaire_debut'] = $horaire_debut; // Problème avec l'heure de fin calculée avec les créneaux. //$tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['horaire_fin']=$horaire_fin; //$contenu_cellule.=" ".$hauteur_courante; //$contenu_cellule.=" ".$font_size; $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['contenu_cellule'] = $contenu_cellule; $tab_cours[$num_jour]['y'][$y_courant][$cpt_courant]['bgcolor_cellule'] = $bgcolor_courant; } } if (isset($tab_cours[$num_jour])) { if ($debug_edt == "y") { echo "\$tab_cours[{$num_jour}]<pre>"; print_r($tab_cours[$num_jour]); echo "</pre>"; } // +++++++++++++++++++++++++++ // +++++++++++++++++++++++++++ // On force ça pour le moment: //$type_edt="classe"; // +++++++++++++++++++++++++++ // +++++++++++++++++++++++++++ //if($type_edt=="classe") { $tab_collisions = array(); $tab_collisions2 = array(); //foreach($tab_cours as $num_jour => $tab) { $tab = $tab_cours[$num_jour]; /* if($num_jour==0) { echo "\$tab_cours[$num_jour]<pre>"; print_r($tab_cours[$num_jour]); echo "</pre>"; } */ foreach ($tab['y'] as $y_courant => $tab2) { for ($loop = 0; $loop < count($tab2); $loop++) { $hauteur_courante = $tab2[$loop]['hauteur']; $y_courant_fin = $y_courant + $hauteur_courante; if (isset($tab2[$loop]['id_cours'])) { $id_cours_courant = $tab2[$loop]['id_cours']; foreach ($tab_cours[$num_jour]['y'] as $y3 => $tab3_cours) { /* echo "y3=$y3<pre>"; print_r($tab3_cours); echo "</pre>"; */ for ($loop3 = 0; $loop3 < count($tab3_cours); $loop3++) { if ($tab3_cours[$loop3]['id_cours'] != $id_cours_courant) { $y_test_debut = $y3; $y_test_fin = $y3 + $tab3_cours[$loop3]['hauteur']; $id_cours_test = $tab3_cours[$loop3]['id_cours']; if ($y_test_debut >= $y_courant && $y_test_debut < $y_courant_fin) { if (!isset($tab_collisions[$id_cours_courant]) || !in_array($id_cours_test, $tab_collisions[$id_cours_courant])) { $tab_collisions[$id_cours_courant][] = $id_cours_test; } } elseif ($y_courant >= $y_test_debut && $y_courant < $y_test_fin) { if (!isset($tab_collisions[$id_cours_courant]) || !in_array($id_cours_test, $tab_collisions[$id_cours_courant])) { $tab_collisions[$id_cours_courant][] = $id_cours_test; } } } } } } /* // DEBUG if($id_cours_courant==602) { echo "<div style='position:absolute; top:800px; left:1000px;'>"; echo "\$tab_collisions[$id_cours_courant]<pre>"; print_r($tab_collisions[$id_cours_courant]); echo "</pre>"; echo "</div>"; } if($id_cours_courant==603) { echo "<div style='position:absolute; top:900px; left:1000px;'>"; echo "\$tab_collisions[$id_cours_courant]<pre>"; print_r($tab_collisions[$id_cours_courant]); echo "</pre>"; echo "</div>"; } */ } } //} $tab_coord_prises = array(); //foreach($tab_cours as $num_jour => $tab) { $tab = $tab_cours[$num_jour]; foreach ($tab['y'] as $y_courant => $tab2) { for ($loop = 0; $loop < count($tab2); $loop++) { //$hauteur_courante=$tab2[$loop]['hauteur']; $hauteur_courante = $tab2[$loop]['hauteur'] - floor($marge_secu / 2); /* $title="".$tab2[$loop]['matiere']['nom_complet']; if($tab2[$loop]['prof']['designation']!="") { $title.=" avec ".$tab2[$loop]['prof']['designation']; } if($tab2[$loop]['salle']!="") { $title.=" en salle ".$tab2[$loop]['salle']; } $title.="\nDe ".$tab2[$loop]['horaire_debut']." à ".$tab2[$loop]['horaire_fin']."."; */ $contenu_courant_ajout = ""; $text_color = ""; if (isset($tab2[$loop]['id_cours'])) { $id_cours_courant = $tab2[$loop]['id_cours']; //$x_courant=$x_jour[$num_jour]+$marge_secu; $x_courant = $x_jour[$loop_jour] + $marge_secu; $largeur_courante = $largeur_jour - 2 * $marge_secu; //$text_color=""; //$font_size=""; $style_font_size1 = " style='font-size:normal;'"; $style_font_size2 = " style='font-size:x-small;'"; //$contenu_courant_ajout=""; if (isset($tab_collisions[$id_cours_courant])) { /* // DEBUG if($id_cours_courant==602) { echo "<div style='position:absolute; top:1000px; left:1000px;'>"; echo "\$id_cours_courant=$id_cours_courant"; echo "</div>"; } if($id_cours_courant==603) { echo "<div style='position:absolute; top:1100px; left:1000px;'>"; echo "\$id_cours_courant=$id_cours_courant"; echo "</div>"; } */ $style_font_size1 = " style='font-size:x-small;'"; $style_font_size2 = " style='font-size:xx-small;'"; if ($debug_edt == "y") { $contenu_courant_ajout .= "<br />nb_col=" . count($tab_collisions[$id_cours_courant]); } // Compter les collisions effectives $nb = count($tab_collisions[$id_cours_courant]); foreach ($tab_collisions[$id_cours_courant] as $id_cours_test) { $nb = min($nb, count($tab_collisions[$id_cours_test])); } // DEBUG if ($debug_edt == "y") { $contenu_courant_ajout .= "<br />nb_reel=" . $nb; } // Largeur du div de ce cours //$largeur_courante=floor($largeur_jour/($nb+1))-2*$marge_secu; // On donne au moins 1px de large... par sécurité //$largeur_courante=max(floor($largeur_jour/($nb+1))-2*$marge_secu,1); $largeur_courante = max(floor($largeur_jour / ($nb + 1)) - 1 * $marge_secu, 1); //$font_size="font-size:x-small;"; //$font_size="font-size:smaller;"; $tmp_tab = array(); $tmp_tab[] = $id_cours_courant; //foreach($tab_collisions as $tmp_current_id_cours => $tmp_current_id_cours_collision) { foreach ($tab_collisions[$id_cours_courant] as $tmp_current_id_cours_collision) { $tmp_tab[] = $tmp_current_id_cours_collision; } sort($tmp_tab); $chaine = ""; for ($loop2 = 0; $loop2 < count($tmp_tab); $loop2++) { if ($chaine != "") { $chaine .= "|"; } $chaine .= $tmp_tab[$loop2]; } //while($x_courant<$x_jour[$num_jour]+$largeur_jour) { while ($x_courant < $x_jour[$loop_jour] + $largeur_jour) { /* if(($id_cours_courant==602)||($id_cours_courant==603)) { $contenu_courant_ajout.="\$id_cours_courant=$id_cours_courant, \$x_courant=$x_courant et \$x_jour[$loop_jour]+$largeur_jour=".$x_jour[$loop_jour]."+".$largeur_jour."<br />\n"; } */ if (check_pas_de_collision($x_courant, $y_courant, $x_courant + $largeur_courante, $y_courant + $hauteur_courante)) { $text_color = ""; break; } else { $x_courant += $largeur_courante + floor($marge_secu / 2); //$x_courant+=floor($largeur_jour/($nb+1))+$marge_secu; //$x_courant+=floor($largeur_jour/($nb+1)); $text_color = "color:red;"; } } if ($text_color != "") { //$x_courant=$x_jour[$num_jour]; $x_courant = $x_jour[$loop_jour]; } $tab_coord_prises[] = $x_courant . "," . $y_courant . "," . ($x_courant + $largeur_courante) . "," . ($y_courant + $hauteur_courante); if ($debug_edt == "y") { $title .= "\nCoordonnées : " . $x_courant . "," . $y_courant . "," . ($x_courant + $largeur_courante) . "," . ($y_courant + $hauteur_courante); } } } /* $contenu_courant="<span title=\"$title\"$style_font_size1>".$tab2[$loop]['matiere']['matiere']."</span>"; // Ne pas inclure ce qui suit pour l'emploi du temps du prof if($type_edt!="prof") { $contenu_courant.="<br /><span$style_font_size2 title=\"".$tab2[$loop]['prof']['designation']."\">".$tab2[$loop]['prof']['nom']."</span>"; } else { $contenu_courant.="<br /><span$style_font_size2 title=\"".$tab2[$loop]['classe']."\">".$tab2[$loop]['classe']."</span>"; } // Ne pas inclure ce qui suit pour l'emploi du temps d'une salle $contenu_courant.="<br /><span$style_font_size2 title=\"Salle ".$tab2[$loop]['salle']."\">".$tab2[$loop]['salle']."</span>"; if($debug_edt=="y") { $contenu_courant.="<br />id_cours=".$id_cours_courant; } $contenu_courant.=$contenu_courant_ajout; // Fond blanc pour masquer les lignes d'heures $html.="<div id='div_fond_masque_cours_".$tab2[$loop]['id_cours']."' style='position:absolute; top:".$y_courant."px; left:".$x_courant."px; width:".$largeur_courante."px; height:".$hauteur_courante."px; background-color:white; z-index:18; '></div>"; // Cadre de couleur avec une opacité réglable if(!isset($tab_couleur_matiere[$tab2[$loop]['matiere']['matiere']])) { $tab_couleur_matiere[$tab2[$loop]['matiere']['matiere']]=get_couleur_edt_matiere($tab2[$loop]['matiere']['matiere']); } $couleur_courante=$tab_couleur_matiere[$tab2[$loop]['matiere']['matiere']]; $html.="<div id='div_fond_couleur_cours_".$tab2[$loop]['id_cours']."' style='position:absolute; top:".$y_courant."px; left:".$x_courant."px; width:".$largeur_courante."px; height:".$hauteur_courante."px; border:1px solid black; background-color:".$couleur_courante."; opacity:$opacity_couleur; z-index:19; text-align:center;".$text_color.$font_size."' title='$title'></div>"; // Cadre du contenu de la cellule $html.="<div id='div_texte_cours_".$tab2[$loop]['id_cours']."' style='position:absolute; top:".$y_courant."px; left:".$x_courant."px; width:".$largeur_courante."px; height:".$hauteur_courante."px; border:1px solid black; z-index:20; text-align:center; overflow:hidden; ".$text_color.$font_size."' title='$title'>".$contenu_courant."</div>"; */ // Cadre de couleur avec une opacité réglable $html .= "<div style='position:absolute; \n\t\t\t\t\t\t\t\t\t\ttop:" . $y_courant . "px; \n\t\t\t\t\t\t\t\t\t\tleft:" . $x_courant . "px; \n\t\t\t\t\t\t\t\t\t\twidth:" . $largeur_courante . "px; \n\t\t\t\t\t\t\t\t\t\theight:" . $hauteur_courante . "px; \n\t\t\t\t\t\t\t\t\t\ttext-align:center; \n\t\t\t\t\t\t\t\t\t\tborder:1px solid black; \n\t\t\t\t\t\t\t\t\t\tbackground-color:" . $tab2[$loop]['bgcolor_cellule'] . ";\n\t\t\t\t\t\t\t\t\t\topacity:{$opacity_couleur}; \n\t\t\t\t\t\t\t\t\t\tz-index:19;'></div>"; // Cadre du contour de la cellule $html .= "<div style='position:absolute; \n\t\t\t\t\t\t\t\t\t\ttop:" . $y_courant . "px; \n\t\t\t\t\t\t\t\t\t\tleft:" . $x_courant . "px; \n\t\t\t\t\t\t\t\t\t\twidth:" . $largeur_courante . "px; \n\t\t\t\t\t\t\t\t\t\theight:" . $hauteur_courante . "px; \n\t\t\t\t\t\t\t\t\t\ttext-align:center; \n\t\t\t\t\t\t\t\t\t\tborder:1px solid black; \n\t\t\t\t\t\t\t\t\t\tline-height:" . $font_size . "pt;\n\t\t\t\t\t\t\t\t\t\tz-index:20;'>" . "</div>"; // Cadre du contenu de la cellule $decalage_vertical = floor($marge_secu / 2); if ($hauteur_courante > $hauteur_une_heure) { $decalage_vertical = floor(($hauteur_courante - $hauteur_une_heure) / 2); } $html .= "<div style='position:absolute; \n\t\t\t\t\t\t\t\t\t\ttop:" . ($y_courant + $decalage_vertical) . "px; \n\t\t\t\t\t\t\t\t\t\tleft:" . $x_courant . "px; \n\t\t\t\t\t\t\t\t\t\twidth:" . $largeur_courante . "px; \n\t\t\t\t\t\t\t\t\t\theight:" . ($hauteur_courante - $decalage_vertical) . "px; \n\t\t\t\t\t\t\t\t\t\ttext-align:center; \n\t\t\t\t\t\t\t\t\t\tline-height:" . $font_size . "pt;\n\t\t\t\t\t\t\t\t\t\toverflow: hidden;\n\t\t\t\t\t\t\t\t\t\tz-index:21;'"; if (isset($tab2[$loop]['id_cours'])) { $html .= "\n\t\t\t\t\t\t\t\t\t\tonclick=\"action_edt_cours('" . $tab2[$loop]['id_cours'] . "')\""; } $html .= ">"; // DEBUG: $chaine_debug = ""; //$chaine_debug="<span style='font-size:xx-small;color:lime;'>".$y0."+".$hauteur_entete."+".$y_courant."=".($y0+$hauteur_entete+$y_courant)."</span> "; $html .= $chaine_debug; $html .= $tab2[$loop]['contenu_cellule'] . " " . $contenu_courant_ajout . " " . $text_color . "</div>"; //} } } //} //} } } /* echo "<div style='position:absolute; top:1500px;'>"; echo "\$tab_cours[5]<pre>"; print_r($tab_cours[5]); echo "</pre>"; echo "</div>"; */ //================================================================== if (isset($affichage_complementaire_sur_edt) && $affichage_complementaire_sur_edt == "absences2") { $html .= affiche_abs2_sur_edt2(); } $html .= "</div>"; return $html; }
$timestamp_suivant = $timestamp + 3600 * 24; $annee_suivant = strftime("%Y", $timestamp_suivant); $mois_suivant = strftime("%m", $timestamp_suivant); $jour_suivant = strftime("%d", $timestamp_suivant); $jour_sanction_suivant = $jour_suivant . "/" . $mois_suivant . "/" . $annee_suivant; echo " | <a href='" . $_SERVER['PHP_SELF'] . "?jour_sanction={$jour_sanction_precedent}'"; echo " onclick=\"return confirm_abandon (this, change, '{$themessage}')\""; echo ">Jour précédent</a>"; echo " | "; echo "<input type='text' name='jour_sanction' id='jour_sanction' size='10' value=\"" . $jour_sanction . "\" onKeyDown=\"clavier_date_plus_moins(this.id,event);\" />\n"; /* echo "<a href=\"#calend\" onclick=\"".$cal->get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170).";"; //echo "return confirm_abandon (this, change, '$themessage')"; echo "\"><img src=\"../lib/calendrier/petit_calendrier.gif\" border=\"0\" alt=\"Petit calendrier\" /></a>\n"; */ echo img_calendrier_js("jour_sanction", "img_bouton_jour_sanction"); echo " <input type='submit' name='valide_jour' value=\"Go\" "; echo "onclick=\"return confirm_abandon (this, change, '{$themessage}')\" "; echo "/>\n"; echo " | <a href='" . $_SERVER['PHP_SELF'] . "?jour_sanction={$jour_sanction_suivant}'"; echo " onclick=\"return confirm_abandon (this, change, '{$themessage}')\""; echo ">Jour suivant</a>"; echo "</p>\n"; echo "</form>\n"; //=========================================================== // Formulaire de saisie du statut "effectuée" d'une retenue ou d'un travail echo "<form enctype='multipart/form-data' action='" . $_SERVER['PHP_SELF'] . "' method='post' name='formulaire2'>\n"; //echo add_token_field(); echo add_token_field(true); echo "<input type='hidden' name='jour_sanction' value='{$jour_sanction}' />\n"; $cpt_sanctions = 0;
echo "<label for='facultatif_N' style='cursor: pointer;'>"; echo "La note de l'évaluation n'entre dans le calcul de la moyenne que si elle améliore la moyenne."; echo "</label>"; echo "</td></tr></table></div>\n"; //==================================== // Date // ==== echo "<a name=\"calend\"></a><h3 class='gepi'>Date de l'évaluation (<em>format jj/mm/aaaa</em>) : </h3>\n\t<div style='margin-left:2em;'>\n\tDate : <input type='text' name = 'display_date' id='display_date' size='10' value = \"" . $display_date . "\" onKeyDown=\"clavier_date(this.id,event);\" onchange=\"changement();\" AutoComplete=\"off\" title=\"Vous pouvez modifier la date à l'aide des flèches Up et Down du pavé de direction.\" />"; //echo "<a href=\"#calend\" onClick=\"".$cal->get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\"><img src=\"../lib/calendrier/petit_calendrier.gif\" border=\"0\" alt=\"Petit calendrier\" /></a>\n"; echo img_calendrier_js("display_date", "img_bouton_display_date"); echo "<br />\n"; echo "<b>Remarque</b> : c'est cette date qui est prise en compte pour l'édition des relevés de notes à différentes périodes de l'année."; echo "</div>\n"; echo "<a name=\"calend\"></a><h3 class='gepi'>Date de visibilité de l'évaluation pour les élèves et responsables (<em>format jj/mm/aaaa</em>) : </h3>\n\t<div style='margin-left:2em;'>\n\tDate : <input type='text' name='date_ele_resp' id='date_ele_resp' size='10' value=\"" . $date_ele_resp . "\" onKeyDown=\"clavier_date(this.id,event);\" onchange=\"changement();\" AutoComplete=\"off\" title=\"Vous pouvez modifier la date à l'aide des flèches Up et Down du pavé de direction.\" />"; //echo "<a href=\"#calend\" onClick=\"".$cal2->get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\"><img src=\"../lib/calendrier/petit_calendrier.gif\" border=\"0\" alt=\"Petit calendrier\" /></a>\n"; echo img_calendrier_js("date_ele_resp", "img_bouton_date_ele_resp"); echo "<br />\n"; echo "<b>Remarque</b> : Cette date permet de ne rendre la note visible qu'une fois que le devoir est corrigé en classe."; echo "</div>\n"; //==================================== // Relevé de notes // =============== echo "<h3 class='gepi'>Affichage sur le relevé de notes</h3>\n"; echo "<div style='margin-left:2em;'>\n"; echo "<table summary='Visibilité'>\n"; echo "<tr><td><label for='display_parents' style='cursor: pointer;'>"; echo "Faire <b>apparaître cette évaluation</b> sur le <b>relevé de notes</b> de l'élève : "; echo "</label>"; echo "</td><td><input type='checkbox' name='display_parents' id='display_parents' value='1' onchange=\"changement();\" "; if ($display_parents == 1) { echo " checked";
<option selected value="<?php echo $key;?>" ><?php echo $value;?></option> <?php else : ?> <option value="<?php echo $key;?>"><?php echo $value;?></option> <?php endif;?> <?php endforeach ?> </select> ou : </p> <label for="du">du</label> <input name="du" id="du" type="text" tabindex="4" value="<?php echo $_SESSION['stats_periodes']['du']; ?>" size="10" maxlength="10" style="border: 1px solid #000000;" onKeyDown="clavier_date(this.id,event);" AutoComplete="off" /> <?php echo img_calendrier_js("du", "img_bouton_du"); ?> <label for="au">au</label> <input name="au" id="au" type="text" tabindex="5" value="<?php echo $_SESSION['stats_periodes']['au']; ?>" size="10" maxlength="10" style="border: 1px solid #000000;" onKeyDown="clavier_date(this.id,event);" AutoComplete="off" /> <?php echo img_calendrier_js("au", "img_bouton_au"); ?> <br /> <br /> <input type="submit" value="Enregistrer" class="submit"/> </fieldset> <div> <fieldset class="individus"><legend class="individus">Sélection</legend> <p class="selected">Données complètes : </p> <p class="selected"> Établissement <input type="checkbox" name="etab_all" id="etab_all0" <?php if (isset($_SESSION['etab_all']))echo'checked'; ?>/> Élèves <input type="checkbox" name="eleve_all" id="eleve_all" <?php if (isset($_SESSION['eleve_all']))echo'checked'; ?>/> Personnels
//$cal4 = new Calendrier("form2", "date_fin_disc"); //======================= echo "<p>Intervalle de dates : du "; //echo "<input type='text' name='date_debut_disc' value='' />\n"; echo "<input type='text' name = 'date_debut_disc' id = 'date_debut_disc2' size='10' value = \"".$date_debut_disc."\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" />\n"; //echo "<a href=\"#\" onClick=\"".$cal3->get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\"><img src=\"../lib/calendrier/petit_calendrier.gif\" alt=\"Calendrier\" border=\"0\" /></a>\n"; //echo "<a href=\"javascript:".$cal3->get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\"><img src=\"../lib/calendrier/petit_calendrier.gif\" alt=\"Calendrier\" border=\"0\" /></a>\n"; echo img_calendrier_js("date_debut_disc2", "img_bouton_date_debut_disc2"); echo " au "; //echo "<input type='text' name='date_fin_disc' value='' />\n"; echo "<input type='text' name = 'date_fin_disc' id = 'date_fin_disc2' size='10' value = \"".$date_fin_disc."\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" />\n"; //echo "<a href=\"#\" onClick=\"".$cal4->get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\"><img src=\"../lib/calendrier/petit_calendrier.gif\" alt=\"Calendrier\" border=\"0\" /></a>\n"; //echo "<a href=\"javascript:".$cal4->get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\"><img src=\"../lib/calendrier/petit_calendrier.gif\" alt=\"Calendrier\" border=\"0\" /></a>\n"; echo img_calendrier_js("date_fin_disc2", "img_bouton_date_fin_disc2"); echo "</p>\n"; echo "<p>Choisissez ce que vous souhaitez afficher :</p>\n"; echo "<p>Les élèves \n"; echo "<a href='javascript:topten_coche(true)'><img src='../images/enabled.png' width='15' height='15' alt='Tout cocher' /></a>/\n"; echo "<a href='javascript:topten_coche(false)'><img src='../images/disabled.png' width='15' height='15' alt='Tout décocher' /></a>\n"; echo "<br />\n"; echo "<input type='checkbox' name='topten_incidents' id='topten_incidents' value='y' /><label for='topten_incidents'>responsables du plus grand nombre d'".$mod_disc_terme_incident."s,</label><br />\n"; echo "<input type='checkbox' name='topten_sanctions' id='topten_sanctions' value='y' /><label for='topten_sanctions'>qui ont le plus de ".$mod_disc_terme_sanction."s (<i>travail, retenue, exclusion,...</i>),</label><br />\n"; echo "<input type='checkbox' name='topten_retenues' id='topten_retenues' value='y' /><label for='topten_retenues'>qui ont le plus de retenues (<em>et assimilées</em>),</label><br />\n"; echo "<input type='checkbox' name='topten_exclusions' id='topten_exclusions' value='y' /><label for='topten_exclusions'>qui ont le plus d'exclusions (<em>et assimilées</em>).</label><br />\n"; echo "Ne retenir que les <input type='text' name='nb_ele' value='10' size='2' /> premiers.<br />\n";
<?php include_once "../lib/calendrier/calendrier.class.php"; $k = '1'; $alt = 1; while ($k < $per + 1) { $alt = $alt * -1; //$cal[$per][$k] = new Calendrier("formulaire", "date_fin_".$per."_".$k); echo "<tr class='lig{$alt}'>\n"; echo "<th>Période " . $k . "</th>\n"; echo "<td><input type='text' name='nb_" . $per . "_" . $k . "' value=\"\" size='30' /></td>\n"; echo "<td><input type='text' name='date_fin_" . $per . "_" . $k . "' id='date_fin_" . $per . "_" . $k . "' value=\"\" size='10' "; echo " onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\""; echo "/>"; //echo "<a href=\"#calend\" onClick=\"".$cal[$per][$k]->get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\"><img src=\"../lib/calendrier/petit_calendrier.gif\" border=\"0\" alt=\"Petit calendrier\" /></a>\n"; echo img_calendrier_js('date_fin_' . $per . '_' . $k, 'img_bouton_date_fin_' . $per . '_' . $k); echo "</td>\n"; echo "</tr>\n"; $k++; } ?> </table> <p>Prénom et nom du signataire des bulletins<?php if ($gepiSettings['active_mod_ects'] == "y") { echo " et des attestations ECTS"; } ?> (chef d'établissement ou son représentant) : <br /><input type="text" size="30" name="<?php echo "nb_" . $per . "_reg_suivi_par";
if(isset($tab_ele)) { for($loop=0;$loop<count($tab_ele);$loop+=2) { echo "\$tab_ele[$loop]=".$tab_ele[$loop]."<br />"; } } if(isset($login_ele_prec)) { echo "\$login_ele_prec=$login_ele_prec<br />"; } if(isset($login_ele_suiv)) { echo "\$login_ele_suiv=$login_ele_suiv<br />"; } echo "</div>"; */ } else { $affichage_div_edt = "n"; echo "\n<div style='float:left; width:8em;'>\n\t<form id='form_chgt_date' action='" . $_SERVER['PHP_SELF'] . "' method='post'>\n\t\t<input type='hidden' name='login_eleve' value='{$login_eleve}' />\n\t\t<input type='hidden' name='affichage' value='jour' />\n\t\t<input type='text' name='display_date' id='display_date' value='{$display_date}' size='8' onchange=\"document.getElementById('form_chgt_date').submit();\" onBlur=\"document.getElementById('form_chgt_date').submit();\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" title=\"Vous pouvez taper la date manuellement.\n\nVous pouvez aussi, utiliser les flèches Haut Bas du pavé de direction de votre clavier pour passer au jour précédent/suivant (la validation du choix se fait en cliquant ensuite hors du champ de formulaire de saisie de la date).\n\nEnfin, vous pouvez sélectionner la date en cliquant sur l'image Calendrier.\" />\n\t\t" . img_calendrier_js("display_date", "img_bouton_display_date") . "\n\t</form>\n</div>"; // Cadre Choix élève sous le bandeau d'entête echo "\n<div id='div_sous_bandeau' style='float:left; width:80%; height:" . $hauteur_div_sous_bandeau . "px; text-align:center;'>\n\t<!--\n\t\tCadre vide pour conserver l'espace au-dessus \n\t\tIl faut pouvoir adapter la hauteur en fonction de la réduction ou non du bandeau d'entête\n\t-->\n\t<p class='bold'>"; if (isset($login_ele_prec) && $login_ele_prec != "") { echo "<a href='" . $_SERVER['PHP_SELF'] . "?login_eleve=" . $login_ele_prec . "&display_date={$display_date}&affichage=jour' title=\"Voir la page pour {$nom_prenom_ele_prec}\"><img src=\"../images/arrow_left.png\" class='icone16' alt=\"{$nom_prenom_ele_prec}\" /></a> "; } echo $info_eleve; if (isset($login_ele_suiv) && $login_ele_suiv != "") { echo " <a href='" . $_SERVER['PHP_SELF'] . "?login_eleve=" . $login_ele_suiv . "&display_date={$display_date}&affichage=jour' title=\"Voir la page pour {$nom_prenom_ele_suiv}\"><img src=\"../images/arrow_right.png\" class='icone16' alt=\"{$nom_prenom_ele_suiv}\" /></a>"; } echo "</p>\n\n\t<!-- Proposer le choix de l'élève pour un parent (s'il y a plusieurs élèves) -->\n\n</div>"; } //<div style='clear:both'></div> //================================= $x_courant = $x1 + $largeur1 + $marge_droite; //=================================
echo "<p class='noprint' style='color:green;'>Les ".$mod_disc_terme_incident."s affichés présentent aussi ce qui concerne les éventuels autres protagonistes des $mod_disc_terme_incident.<br /> Les informations concernant les autres protagonistes des incidents ne sont pas affichés<br /> <a href='".$_SERVER['PHP_SELF']."?lien_refermer=$lien_refermer&login_ele=$login_ele&restreindre_affichage_a_eleve_seul=y'>Masquer ce qui concerne les autres protagonistes</a>.</p>"; } echo "<form action='".$_SERVER['PHP_SELF']."' name='form_date_disc' method='post' class='noprint' style='max-width:40em; text-align:center;' /> <fieldset class='fieldset_opacite50'> <input type='hidden' name='lien_refermer' value='$lien_refermer' /> <p>Extraire les ".$mod_disc_terme_incident."s entre le <input type='text' name = 'date_debut_disc' id= 'date_debut_disc' size='10' value = \"".$date_debut_disc."\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" /> ".img_calendrier_js("date_debut_disc", "img_bouton_date_debut_disc")." et le <input type='text' name = 'date_fin_disc' id= 'date_fin_disc' size='10' value = \"".$date_fin_disc."\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" />". img_calendrier_js("date_fin_disc", "img_bouton_date_fin_disc")." <input type='submit' name='restreindre_intervalle_dates' value='Valider' /> <input type='hidden' name='login_ele' value=\"$login_ele\" /> </p> </fieldset> </form>\n"; $mode=""; echo tab_mod_discipline($login_ele, $mode, $date_debut_disc, $date_fin_disc, $restreindre_affichage_a_eleve_seul); require("../lib/footer.inc.php"); die(); } //===============================
echo img_calendrier_js("display_date", "img_bouton_display_date"); echo "</td>\n"; echo "</tr>\n"; } else { echo "<tr style='display:none;'>\n"; echo "<td style='background-color: #aae6aa; font-weight: bold;'>Date:</td>\n"; echo "<td>\n"; echo "<input type='hidden' name='display_date' id='display_date' size='10' autocomplete='off' onfocus=\"javascript:this.select()\" value=\"" . $display_date . "\" onKeyDown=\"clavier_date(this.id,event);\" />\n"; echo "</td>\n"; echo "</tr>\n"; } echo "<tr>\n"; echo "<td style='background-color: #aae6aa; font-weight: bold;'>Date de visibilité (si le droit est ouvert) :</td>\n"; echo "<td>\n"; echo "<input type='text' name='vision_famille' id='vision_famille' size='10' value=\"" . $vision_famille . "\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" />\n"; echo img_calendrier_js("vision_famille ", "img_bouton_vision_famille "); echo "</td>\n"; echo "</tr>\n"; echo "</table>\n"; echo "</div>\n"; echo "<input type='hidden' name='is_posted' value='1' />\n"; echo "<input type='hidden' name='id_racine' value='{$id_racine}' />\n"; echo "<input type='hidden' name='id_dev' value='{$id_dev}' />\n"; if (isset($id_eval)) { echo "<input type='hidden' name='id_eval' value='{$id_eval}' />\n"; } if ($aff_nom_court == 'y') { echo "<script type='text/javascript'>\n\tdocument.formulaire.nom_court.focus();\n</script>\n"; } echo "<p style='text-align:center;'><input type=\"submit\" name='ok' value=\"Enregistrer\" style=\"font-variant: small-caps;\" /></p>\n"; echo "</form>\n";
$res = sql_query($sql); $logs_number = sql_count($res); $row = sql_row($res, 0); $annee = mb_substr($row[0], 0, 4); $mois = mb_substr($row[0], 5, 2); $jour = mb_substr($row[0], 8, 2); echo "<p>Nombre d'entrées actuellement présentes dans le journal de connexion : <b>" . $logs_number . "</b><br />\n"; echo "Actuellement, le journal contient l'historique des connexions depuis le <b>" . $jour . "/" . $mois . "/" . $annee . "</b></p>\n"; echo "<p><b>ATTENTION : </b>En validant le bouton ci-dessous, <b>toutes les entrées du journal de connexion (hormis les connexions en cours) seront supprimées</b>.</p>\n"; echo "<form action=\"options_connect.php\" name=\"form_sup_logs\" method=\"post\">\n\t<fieldset id='mdp_perdus' style='border: 1px solid grey; background-image: url(\"../images/background/opacite50.png\");'>\n\t<legend style='border: 1px solid grey; background-color: white;'>Suppression complète des log</legend>\n"; echo add_token_field(); echo "<center><input type=\"submit\" name=\"valid_sup_logs\" value=\"Valider\" onclick=\"return confirmlink(this, 'Êtes-vous sûr de vouloir supprimer tout l\\'historique du journal de connexion ?', 'Confirmation')\" /></center>\n"; echo "<input type=hidden name=mode_navig value='{$mode_navig}' />\n"; echo "\n\t</fieldset>\n</form><br/>\n"; ?> <hr class="header" style="margin-top: 32px; margin-bottom: 24px;"/> <h3 class='gepi'>Suppression d'une partie des entrées du journal de connexion</h3> <?php echo "<form action=\"options_connect.php\" method=\"post\" id='form_suppr_connexions'>\n\t<fieldset id='mdp_perdus' style='border: 1px solid grey; background-image: url(\"../images/background/opacite50.png\");'>\n\t<legend style='border: 1px solid grey; background-color: white;'>Suppression des log</legend>\n"; echo add_token_field(); echo "<center>\n"; echo "<input type=submit value=\"Supprimer les journaux de connexions\" />\n"; //include("../lib/calendrier/calendrier.class.php"); //$cal = new Calendrier("form_suppr_abs", "date_limite"); echo " antérieurs au <input type='text' name='date_limite' id='date_limite' size='10' value='{$jour}/{$mois}/{$annee}' onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" title=\"Vous pouvez modifier la date à l'aide des flèches Up et Down du pavé de direction.\" />\n"; //echo "<a href=\"#calend\" onClick=\"".$cal->get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\"><img src=\"../lib/calendrier/petit_calendrier.gif\" border=\"0\" alt=\"Petit calendrier\" /></a>"; echo img_calendrier_js("date_limite", "img_bouton_date_limite"); echo "</center>\n"; echo "<input type='hidden' name='clean_log_old' value='y' />\n"; echo "\n\t</fieldset>\n</form><br />\n"; require "../lib/footer.inc.php";
echo "\$id_absence=".$id_absence."<br />"; */ if (isset($tab_id_absence) && count($tab_id_absence) > 1) { echo "<p>Faire une proposition de remplacement ou un appel à remplacement pour l'absence de :</p>\n\t<ul>"; for ($loop = 0; $loop < count($tab_id_absence); $loop++) { echo "\n\t\t<li><a href='proposer_remplacement.php?id_absence=" . $tab_id_absence[$loop]['id_absence'] . "'>" . civ_nom_prenom($tab_id_absence[$loop]['login_user']) . "</a></li>"; } echo "\n\t</ul>"; echo "<p>Ou contrôler/modifier la saisie pour l'absence de :</p>\n\t<ul>"; for ($loop = 0; $loop < count($tab_id_absence); $loop++) { echo "\n\t\t<li><a href='saisir_absence.php?id_absence=" . $tab_id_absence[$loop]['id_absence'] . "&login_user[]=" . $tab_id_absence[$loop]['login_user'] . "'>" . civ_nom_prenom($tab_id_absence[$loop]['login_user']) . "</a></li>"; } echo "\n\t</ul>"; require "../lib/footer.inc.php"; die; } echo "\n<form action=\"" . $_SERVER['PHP_SELF'] . "#debut_de_page\" method=\"post\" style=\"width: 100%;\" name=\"formulaire_saisie_details\">\n\t<fieldset class='fieldset_opacite50'>\n\n\t\t" . (isset($id_absence) ? "<div style='float:right; width:10em;text-align:center;'><p><a href='proposer_remplacement.php?id_absence={$id_absence}'>Faire une proposition de remplacement ou un appel à remplacement</a>.</p><p style='color:red'>A FAIRE: Indiquer le nombre de créneaux déjà remplacés sur le nombre de créneaux libérés.</p></div>" : "") . "\n\n\t\t" . add_token_field() . "\n\t\t" . (isset($id_absence) ? "<input type='hidden' name='id_absence' value='" . $id_absence . "' />" : "") . "\n\n\t\t<p>Vous souhaitez saisir une absence pour le ou les professeurs suivants :<br /><span class='bold'>"; $tab_prof = array(); for ($loop = 0; $loop < count($login_user); $loop++) { $tab_prof[$loop] = get_info_user($login_user[$loop]); if ($loop > 0) { echo ", "; } echo "<input type='hidden' name='login_user[]' value='" . $login_user[$loop] . "' />"; echo $tab_prof[$loop]['denomination']; } echo "</span></p>\n\n\t\t<p>Veuillez préciser les dates/heures de début et de fin de l'" . (isset($id_absence) ? "<span class='bold'>absence n°{$id_absence}</span>" : "absence") . " :</p>\n\n\t\t<table class='boireaus boireaus_alt'>\n\t\t\t<tr>\n\t\t\t\t<th>Date de début</th>\n\t\t\t\t<td style='text-align:left;'>\n\t\t\t\t\t<input type='text' name='display_date_debut' id='display_date_debut' size='10' value=\"" . (isset($display_date_debut) ? $display_date_debut : "") . "\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" />\n\t\t" . img_calendrier_js("display_date_debut", "img_bouton_display_date_debut") . "\n\t\t\t\t\t à/en \n\t\t\t\t\t<input type='text' name = 'display_heure_debut' id= 'display_heure_debut' size='5' value = \"" . (isset($display_heure_debut) ? $display_heure_debut : "") . "\" onKeyDown=\"clavier_heure(this.id,event);\" AutoComplete=\"off\" />\n\t\t\t\t\t" . choix_heure('display_heure_debut', 'div_choix_heure_debut', 'return') . "\n\t\t\t\t</td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<th>Date de fin</th>\n\t\t\t\t<td style='text-align:left;'>\n\t\t\t\t\t<input type='text' name='display_date_fin' id='display_date_fin' size='10' value=\"" . (isset($display_date_fin) ? $display_date_fin : "") . "\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" />\n\t\t" . img_calendrier_js("display_date_fin", "img_bouton_display_date_fin") . "\n\t\t\t\t\t à/en \n\t\t\t\t\t<input type='text' name = 'display_heure_fin' id= 'display_heure_fin' size='5' value = \"" . (isset($display_heure_fin) ? $display_heure_fin : "") . "\" onKeyDown=\"clavier_heure(this.id,event);\" AutoComplete=\"off\" />\n\t\t\t\t\t" . choix_heure('display_heure_fin', 'div_choix_heure_fin', 'return') . "\n\t\t\t\t</td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<th>Titre/motif</th>\n\t\t\t\t<td style='text-align:left;'>\n\t\t\t\t\t<input type='text' name='titre' id='titre' size='50' value=\"" . (isset($titre) ? $titre : "") . "\" />\n\t\t\t\t</td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<th>Description/détails</th>\n\t\t\t\t<td>"; $oCKeditor = new CKeditor('../ckeditor/'); $oCKeditor->editor('description', preg_replace("/\\\\n/", "", $description)); echo "\n\t\t\t\t</td>\n\t\t\t</tr>\n\n\t\t</table>\n\n\t\t<input type='hidden' name='enregistrer_dates' value='y' />\n\n\t\t<p style='color:red'><input type='checkbox' name='info_ele_parents' id='info_ele_parents' value='y' /><label for='info_ele_parents'> Informer sans attendre les parents en page d'accueil.</label><br />\n\t\t<span style='color:red'>Cette option n'est pas encore implémentée...</span></p>\n\n\t\t<p><input type='submit' value='Valider' /></p>\n\n\t</fieldset>\n</form>"; require "../lib/footer.inc.php";
} } echo "\n\t\t</table>"; for ($loop = 0; $loop < count($id_classe); $loop++) { echo "\n\t\t<input type='hidden' name='id_classe[]' value='" . $id_classe[$loop] . "' />"; } for ($loop = 0; $loop < count($engagement_ele); $loop++) { echo "\n\t\t<input type='hidden' name='engagement_ele[]' value='" . $engagement_ele[$loop] . "' />"; } for ($loop = 0; $loop < count($engagement_resp); $loop++) { echo "\n\t\t<input type='hidden' name='engagement_resp[]' value='" . $engagement_resp[$loop] . "' />"; } echo "\n\t\t<div class='noprint'>\n\t\t<p>\n\t\t\t<input type='radio' name='action' id='action_export_csv' value='export_csv' onchange=\"checkbox_change('action_export_csv');checkbox_change('action_message');\" checked /><label for='action_export_csv' id='texte_action_export_csv' style='font-weight:bold;'>Exporter en CSV</label><br />\n\t\t\t<input type='radio' name='action' id='action_message' value='message' onchange=\"checkbox_change('action_export_csv');checkbox_change('action_message');\" /><label for='action_message' id='texte_action_message'>Déposer un message dans le Panneau d'affichage Gepi</label><br />\n\t\t\tTexte du message :"; $contenu = ""; $oCKeditor = new CKeditor('../ckeditor/'); $oCKeditor->editor('message', $contenu); $annee = strftime("%Y"); $mois = strftime("%m"); $jour = strftime("%d"); $display_date_debut = $jour . "/" . $mois . "/" . $annee; $annee = strftime("%Y", time() + 86400); $mois = strftime("%m", time() + 86400); $jour = strftime("%d", time() + 86400); $display_date_fin = $jour . "/" . $mois . "/" . $annee; echo "\n\t\t\t<br />\n\n\t\t\t<i>Le message sera affiché :</i><br />\n\t\t\tde la date : <input type='text' name = 'display_date_debut' id= 'display_date_debut' size='10' value = \"" . $display_date_debut . "\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" />" . img_calendrier_js("display_date_debut", "img_bouton_display_date_debut") . "\n\t\t\t à la date : <input type='text' name = 'display_date_fin' id = 'display_date_fin' size='10' value = \"" . $display_date_fin . "\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" />" . img_calendrier_js("display_date_fin", "img_bouton_display_date_fin") . "<br />(<span style='font-size:small'>Respectez le format jj/mm/aaaa</span>)<br />\n\n\t\t\t<i>Le destinataire peut supprimer ce message : </i>\n\t\t\t<label for='suppression_possible_oui' id='texte_suppression_possible_oui'>Oui </label><input type='radio' name='suppression_possible' id='suppression_possible_oui' value='oui' onchange=\"checkbox_change('suppression_possible_oui');checkbox_change('suppression_possible_non');\" />\n\t\t\t<label for='suppression_possible_non' id='texte_suppression_possible_non' style='font-weight:bold;'>Non </label><input type='radio' name='suppression_possible' id='suppression_possible_non' value='non' checked='checked' onchange=\"checkbox_change('suppression_possible_oui');checkbox_change('suppression_possible_non');\" />\n\t\t</p>\n\n\t\t<p><input type='submit' value='Valider' /></p>\n\n\t\t</div>\n\t</fieldset>\n</form>\n\n<script type='text/javascript' language='javascript'>\n\n\t" . js_checkbox_change_style('checkbox_change', 'texte_', 'n') . "\n\n\tfunction modif_case(statut){\n\t\t// statut: true ou false\n\t\tfor(k=0;k<{$cpt};k++){\n\t\t\tif(document.getElementById('login_user_'+k)){\n\t\t\t\tdocument.getElementById('login_user_'+k).checked=statut;\n\t\t\t\tcheckbox_change('login_user_'+k);\n\t\t\t}\n\t\t}\n\t}\n</script>"; /* echo "<pre>"; print_r($tab_engagements); echo "</pre>"; */ require "../lib/footer.inc.php";
if (isset($id_ev)) { echo "\n\t\t\t\t\t<input type=\"hidden\" name=\"id_ev\" value=\"{$id_ev}\" />\n"; } echo "\n\t\t\t\t\t<input type=\"hidden\" name=\"action\" value=\"evenement\" />\n\n\t\t\t\t\t<table border=\"0\" width = \"100%\" cellspacing=\"1\" cellpadding=\"1\" >\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td colspan=\"4\">\n\t\t\t\t\t\t\t\t<span class='grand'>" . $titre_mess . " \n\t\t\t\t\t\t\t\t<!--a href=\"#\" onclick='return false;' onmouseover=\"afficher_div('aide','y',100,100);\" onmouseout=\"cacher_div('aide');\"><img src='../images/icons/ico_ampoule.png' width='15' height='25' /></a-->\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td colspan=\"4\">\n\t\t\t\t\t\t\t\t<i>Type de l'événement :</i>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<input type='radio' name='type' id='type_conseil_de_classe' value='conseil_de_classe' onchange=\"checkbox_change('type_conseil_de_classe');checkbox_change('type_autre');changement();\" " . ($type == "conseil_de_classe" ? "checked " : "") . "/><label for='type_conseil_de_classe' id='texte_type_conseil_de_classe'>Conseil de classe</label>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<input type='radio' name='type' id='type_autre' value='autre' onchange=\"checkbox_change('type_conseil_de_classe');checkbox_change('type_autre');changement();\" " . ($type != "conseil_de_classe" ? "checked " : "") . "/><label for='type_autre' id='texte_type_autre'>Autre</label>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td colspan=\"4\">\n\t\t\t\t\t\t\t\t<p><i>L'événement sera affiché à compter de la date : \n\t\t\t\t\t\t\t\t<input type='text' name='display_date_debut' id='display_date_debut' size='10' value=\"" . $display_date_debut . "\" onKeyDown=\"clavier_date(this.id,event);\" onchange='changement()' AutoComplete=\"off\" />\n\t\t\t\t\t\t\t\t" . img_calendrier_js("display_date_debut", "img_bouton_display_date_debut") . "<br />\n\t\t\t\t\t\t\t\t(<span style='font-size:small'>Respectez le format jj/mm/aaaa</span>)</p>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td colspan=\"4\">\n\t\t\t\t\t\t\t\t<i>Statut(s) des destinataires de l'événement :</i>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr style='vertical-align:top'>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<input type=\"checkbox\" id=\"destinataire_prof\" name=\"destinataire_prof\" value=\"y\" " . ($destinataire_prof == "y" ? " checked" : "") . " onchange=\"checkbox_change('destinataire_prof');changement();\" /><label for='destinataire_prof' id='texte_destinataire_prof' style='cursor: pointer;'>Professeurs de la classe</label>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<input type=\"checkbox\" id=\"destinataire_cpe\" name=\"destinataire_cpe\" value=\"y\" " . ($destinataire_cpe == "y" ? " checked" : "") . " onchange=\"checkbox_change('destinataire_cpe');changement();\" /><label for='destinataire_cpe' id='texte_destinataire_cpe' style='cursor: pointer;'>CPE de la classe</label>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<input type=\"checkbox\" id=\"destinataire_scol\" name=\"destinataire_scol\" value=\"y\" " . ($destinataire_scol == "y" ? " checked" : "") . " onchange=\"checkbox_change('destinataire_scol');changement();\" /><label for='destinataire_scol' id='texte_destinataire_scol' style='cursor: pointer;'>Comptes scolarité associés à la classe</label>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<input type=\"checkbox\" id=\"destinataire_resp\" name=\"destinataire_resp\" value=\"y\" " . ($destinataire_resp == "y" ? " checked" : "") . " onchange=\"checkbox_change('destinataire_resp');changement();\" /><label for='destinataire_resp' id='texte_destinataire_resp' style='cursor: pointer;'>Responsables d'élèves de la classe</label>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<input type=\"checkbox\" id=\"destinataire_ele\" name=\"destinataire_ele\" value=\"y\" " . ($destinataire_ele == "y" ? " checked" : "") . " onchange=\"checkbox_change('destinataire_ele');changement();\" /><label for='destinataire_ele' id='texte_destinataire_ele' style='cursor: pointer;'>Élèves de la classe</label>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td colspan=\"4\">\n\t\t\t\t\t\t\t\t<i>Classes concernées par l'événement :</i>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td colspan=\"4\">"; echo "\n\t\t\t\t\t\t\t\t<table class='boireaus boireaus_alt sortable resizable' summary=\"Tableau de choix des classes et du paramétrage des dates\">\n\t\t\t\t\t\t\t\t\t<thead>\n\t\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t\t<th class='text' title='Cliquez pour trier par nom de classe.'>Classe</th>\n\t\t\t\t\t\t\t\t\t\t\t<th class='text' title='Cliquez pour trier par date.\nLe tri fonctionne avec les dates validées/enregistrées.'>Date</th>\n\t\t\t\t\t\t\t\t\t\t\t<th title=\"Choisissez la ligne modèle pour copier une date.\">D</th>\n\t\t\t\t\t\t\t\t\t\t\t<th><img src='../images/icons/coller_23x24.png' class='icone16' title=\"Coller la date sélectionnée.\"/></th>\n\t\t\t\t\t\t\t\t\t\t\t<th></th>\n\t\t\t\t\t\t\t\t\t\t\t<th>Heure</th>\n\t\t\t\t\t\t\t\t\t\t\t<th title=\"Choisissez la ligne modèle pour copier une heure.\">H</th>\n\t\t\t\t\t\t\t\t\t\t\t<th><img src='../images/icons/coller_23x24.png' class='icone16' title=\"Coller l'heure sélectionnée.\"/></th>\n\t\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t</thead>\n\t\t\t\t\t\t\t\t\t<tbody>"; $cpt = 0; $tab_champs_date_a_cacher = array(); foreach ($tab_classe as $id_classe => $classe) { if (isset($tab_classe_ev[$id_classe]["heure_evenement"])) { $display_heure = $tab_classe_ev[$id_classe]["heure_evenement"]; } else { // Il est plus facile de voir ce qui n'est pas encore rempli/défini. //$display_heure=$heure_courante; $display_heure = ""; } echo "\n\t\t\t\t\t\t\t\t\t\t<tr id='div_ligne_{$id_classe}' onmouseover=\"this.style.backgroundColor='white'\" onmouseout=\"this.style.backgroundColor=''\">\n\t\t\t\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t\t\t<span style='display:none' title='Pour le tri.'>" . $classe['classe'] . "</span>\n\t\t\t\t\t\t\t\t\t\t<input type=\"checkbox\" id=\"id_classe_" . $id_classe . "\" name=\"id_classe[{$cpt}]\" value=\"{$id_classe}\" " . (array_key_exists($id_classe, $tab_classe_ev) ? " checked" : "") . " onchange=\"modif_affichage_ligne_classe({$id_classe});changement();\" /><label for='id_classe_" . $id_classe . "' id='texte_id_classe_" . $id_classe . "' style='cursor: pointer;'>" . $classe['classe'] . "</label>\n\t\t\t\t\t\t\t\t\t\t</td>\n\n\t\t\t\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t\t\t\t<span style='display:none' title='Pour le tri.'>" . (isset($tab_classe_ev[$id_classe]['date_evenement']) ? $tab_classe_ev[$id_classe]['date_evenement'] : "") . "</span>\n\t\t\t\t\t\t\t\t\t\t\t<span id='span_date_id_classe_" . $id_classe . "'>\n\t\t\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t\t\t<input type='text' name='display_date_id_classe[{$cpt}]' id='display_date_id_classe_" . $id_classe . "' size='10' value=\"" . (isset($tab_classe_ev[$id_classe]['date_evenement_formatee']) ? $tab_classe_ev[$id_classe]['date_evenement_formatee'] : "") . "\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" />\n\t\t\t\t\t\t\t\t\t\t\t\t" . img_calendrier_js("display_date_id_classe_" . $id_classe, "img_bouton_display_date_id_classe_" . $id_classe) . "\n\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</td>\n\n\t\t\t\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t\t\t\t<span id='js_copier_date_" . $id_classe . "' style='display:none;'>\n\t\t\t\t\t\t\t\t\t\t\t\t<input type='radio' name = 'copier_date' id= 'copier_date_" . $id_classe . "' value = \"" . $id_classe . "\" /><label for='copier_date_" . $id_classe . "'><img src='../images/icons/copy-16.png' class='icone16' title=\"Copier la date associée à cette classe.\"/></label>\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</td>\n\n\t\t\t\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t\t\t\t<span id='js_coller_date_" . $id_classe . "' style='display:none;'>\n\t\t\t\t\t\t\t\t\t\t\t\t<a href='#' onclick=\"coller_date({$id_classe});return false;\" id='js_coller_{$cpt}'>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<img src='../images/icons/coller_23x24.png' class='icone16' title=\"Coller la date sélectionnée.\"/>\n\t\t\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</td>\n\n\n\t\t\t\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t\t\t\t à \n\t\t\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t\t\t\t<span id='span_heure_id_classe_" . $id_classe . "'>\n\t\t\t\t\t\t\t\t\t\t\t\t<input type='text' name = 'display_heure_id_classe[" . $cpt . "]' id= 'display_heure_id_classe_" . $id_classe . "' size='5' value = \"" . $display_heure . "\" onKeyDown=\"clavier_heure(this.id,event);\" AutoComplete=\"off\" />\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</td>\n\n\t\t\t\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t\t\t\t<span id='js_copier_heure_" . $id_classe . "' style='display:none;'>\n\t\t\t\t\t\t\t\t\t\t\t\t<input type='radio' name = 'copier_heure' id= 'copier_heure_" . $id_classe . "' value = \"" . $id_classe . "\" /><label for='copier_heure_" . $id_classe . "'><img src='../images/icons/copy-16.png' class='icone16' title=\"Copier l'heure associée à cette classe.\"/></label>\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t\t\t\t<span id='js_coller_heure_" . $id_classe . "' style='display:none;'>\n\t\t\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t\t\t<a href='#' onclick=\"coller_heure({$id_classe});return false;\" id='js_coller_{$cpt}'>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<img src='../images/icons/coller_23x24.png' class='icone16' title=\"Coller l'heure sélectionnée.\"/>\n\t\t\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t\t\t\t</tr>"; if (!array_key_exists($id_classe, $tab_classe_ev)) { $tab_champs_date_a_cacher[] = $id_classe; } $cpt++; } echo "\n\t\t\t\t\t\t\t\t\t</tbody>\n\t\t\t\t\t\t\t\t</table>"; echo "\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td colspan=\"4\">\n\t\t\t\t\t\t\t\t<i>Texte affiché avant les dates :</i>"; $oCKeditor = new CKeditor('../ckeditor/'); $oCKeditor->editor('texte_avant', $texte_avant); echo "\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td colspan=\"4\">\n\t\t\t\t\t\t\t\t<i>Texte affiché après les dates :</i>"; $oCKeditor2 = new CKeditor('../ckeditor/'); $oCKeditor2->editor('texte_apres', $texte_apres); echo "\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td colspan=\"4\" align=\"center\"> \n\t\t\t\t\t\t\t\t<input type='hidden' name='ok' value='y' />\n\t\t\t\t\t\t\t\t<noscript>\n\t\t\t\t\t\t\t\t\t<input type=\"submit\" value=\"Enregistrer\" style=\"font-variant: small-caps;\" name=\"button_ok_sans_javascript\" />\n\t\t\t\t\t\t\t\t</noscript>\n\t\t\t\t\t\t\t\t<input type=\"button\" value=\"Enregistrer\" style=\"font-variant: small-caps;\" name=\"button_ok_avec_javascript\" onclick=\"check_et_valide_form()\" />\n\t\t\t\t\t\t\t\t<script type='text/javascript'>\n\t\t\t\t\t\t\t\t\tfunction checkdate (m, d, y) {\n\t\t\t\t\t\t\t\t\t // Returns true(1) if it is a valid date in gregorian calendar \n\t\t\t\t\t\t\t\t\t // \n\t\t\t\t\t\t\t\t\t // version: 1109.2015\n\t\t\t\t\t\t\t\t\t // discuss at: http://phpjs.org/functions/checkdate \n\t\t\t\t\t\t\t\t\t // + original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)\n\t\t\t\t\t\t\t\t\t // + improved by: Pyerre\n\t\t\t\t\t\t\t\t\t // + improved by: Theriault\n\t\t\t\t\t\t\t\t\t // * example 1: checkdate(12, 31, 2000);\n\t\t\t\t\t\t\t\t\t // * returns 1: true // * example 2: checkdate(2, 29, 2001);\n\t\t\t\t\t\t\t\t\t // * returns 2: false\n\t\t\t\t\t\t\t\t\t // * example 3: checkdate(3, 31, 2008);\n\t\t\t\t\t\t\t\t\t // * returns 3: true\n\t\t\t\t\t\t\t\t\t // * example 4: checkdate(1, 390, 2000); \n\t\t\t\t\t\t\t\t\t // * returns 4: false\n\t\t\t\t\t\t\t\t\t return m > 0 && m < 13 && y > 2000 && y < 32768 && d > 0 && d <= (new Date(y, m, 0)).getDate();\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\tfunction check_et_valide_form() {\n\t\t\t\t\t\t\t\t\t\tdisplay_date_debut=document.getElementById('display_date_debut').value;\n\n\t\t\t\t\t\t\t\t\t\ttmp=display_date_debut.split('/');\n\t\t\t\t\t\t\t\t\t\tjour_debut=tmp[0];\n\t\t\t\t\t\t\t\t\t\tmois_debut=tmp[1];\n\t\t\t\t\t\t\t\t\t\tannee_debut=tmp[2];\n\t\t\t\t\t\t\t\t\t\tif(!checkdate(mois_debut,jour_debut,annee_debut)) {\n\t\t\t\t\t\t\t\t\t\t\talert('La date de début d\\'affichage est invalide.');\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\t\t\t\tdocument.formulaire_saisie_evenement.submit();\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</script>\n\t\t\t\t\t\t\t\t" . (isset($id_ev) ? "<input type=\"submit\" value=\"Annuler\" style=\"font-variant: small-caps;\" name=\"cancel\" />" : "") . "\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</fieldset>\n\t\t\t</form>\n\t\t</td>\n\t</tr>\n</table>\n\n<script type='text/javascript'>\n\n" . js_checkbox_change_style('checkbox_change', 'texte_', 'n') . "\n\n\tcheckbox_change('type_autre');\n\tcheckbox_change('type_conseil_de_classe');\n\tcheckbox_change('destinataire_prof');\n\tcheckbox_change('destinataire_cpe');\n\tcheckbox_change('destinataire_scol');\n\tcheckbox_change('destinataire_resp');\n\tcheckbox_change('destinataire_ele');\n\n\tfunction modif_affichage_ligne_classe(id_classe) {\n\t\tcheckbox_change('id_classe_'+id_classe);\n\n\t\tif(document.getElementById('id_classe_'+id_classe).checked==true) {\n\t\t\tdocument.getElementById('span_date_id_classe_'+id_classe).style.display=''\n\t\t\tdocument.getElementById('span_heure_id_classe_'+id_classe).style.display=''\n\t\t\tdocument.getElementById('js_copier_date_'+id_classe).style.display='';\n\t\t\tdocument.getElementById('js_coller_date_'+id_classe).style.display='';\n\t\t\tdocument.getElementById('js_copier_heure_'+id_classe).style.display='';\n\t\t\tdocument.getElementById('js_coller_heure_'+id_classe).style.display='';\n\t\t}\n\t\telse {\n\t\t\tdocument.getElementById('span_date_id_classe_'+id_classe).style.display='none'\n\t\t\tdocument.getElementById('span_heure_id_classe_'+id_classe).style.display='none'\n\t\t\tdocument.getElementById('js_copier_date_'+id_classe).style.display='none';\n\t\t\tdocument.getElementById('js_coller_date_'+id_classe).style.display='none';\n\t\t\tdocument.getElementById('js_copier_heure_'+id_classe).style.display='none';\n\t\t\tdocument.getElementById('js_coller_heure_'+id_classe).style.display='none';\n\t\t}\n\t\t//changement();\n\t}\n"; foreach ($tab_classe as $id_classe => $classe) { echo "\n\tcheckbox_change('id_classe_" . $id_classe . "');\n\tmodif_affichage_ligne_classe({$id_classe});";
//Configuration du calendrier //include("../lib/calendrier/calendrier.class.php"); //$cal = new Calendrier("formulaire", "display_date"); ?> <input type='text' name='display_date' id='display_date' size='10' value="<?php echo $display_date; ?> " onkeydown="clavier_date_plus_moins(this.id,event);" onchange='changement()' /> <?php echo img_calendrier_js("display_date", "img_bouton_display_date"); ?> </td> <?php /* <td style='text-align:right; width:1%;'> <input type='submit' name='enregistrer' value='Enregistrer' onclick='verif_details_incident();' /> </td> * */ ?> <td style='text-align:right; width:1%;'> <input type='button' name='enregistrer' value='Enregistrer' onclick='verif_details_incident();' /> <noscript><p><input type='submit' name='enregistrer' value='Enregistrer vraiment' /></p></noscript> </td> <?php
// onclick=\"return confirm_abandon (this, change, '$themessage')\" $message_suppression = "Confirmation de suppression"; //**************** EN-TETE ***************** $titre_page = "Consulter remplacements"; require_once "../lib/header.inc.php"; //**************** FIN EN-TETE ************* //debug_var(); //=================================================================== // Récupérer la liste des créneaux $tab_creneau = get_heures_debut_fin_creneaux(); //=================================================================== echo "<a name=\"debut_de_page\"></a>\n<p class='bold'>\n\t<a href='index.php' onclick=\"return confirm_abandon (this, change, '{$themessage}')\"><img src='../images/icons/back.png' alt='Retour' class='back_link'/> Retour</a>" . $liens_alt . "\n</p>"; // Proposer d'extraire les remplacements entre telle et telle date, pour tous les profs ou pour une sélection de profs // Afficher ensuite deux tableaux, l'un de totaux, l'autre du détail des remplacements avec date et heure. if ($mode == "") { echo "<form enctype='multipart/form-data' action='" . $_SERVER['PHP_SELF'] . "' method='post' name='form1'>\n\t<fieldset class='fieldset_opacite50'>\n\t\t" . add_token_field() . "\n\t\t<h3>Extraction des remplacements validés</h3>\n\n\t\t<p>Intervalle de dates : du \n\t\t<input type='text' name = 'date_debut_remplac' id='date_debut_remplac' size='10' value = \"" . $date_debut_remplac . "\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" />" . img_calendrier_js("date_debut_remplac", "img_bouton_date_debut_remplac") . " au <input type='text' name = 'date_fin_remplac' id='date_fin_remplac' size='10' value = \"" . $date_fin_remplac . "\" onKeyDown=\"clavier_date(this.id,event);\" AutoComplete=\"off\" />" . img_calendrier_js("date_fin_remplac", "img_bouton_date_fin_remplac") . "</p>\n\n\t\t<p>Extraire les remplacements pour le ou les professeurs cochés ci-dessous :</p>\n\t\t" . liste_checkbox_utilisateurs(array('professeur'), array(), 'login_prof', 'cocher_decocher', "n", "SELECT DISTINCT u.login, \n\t\t\t\t\t\t\t\tu.civilite, \n\t\t\t\t\t\t\t\tu.nom, \n\t\t\t\t\t\t\t\tu.prenom, \n\t\t\t\t\t\t\t\tu.statut \n\t\t\t\t\t\t\tFROM utilisateurs u, \n\t\t\t\t\t\t\t\tabs_prof_remplacement apr \n\t\t\t\t\t\t\tWHERE u.statut='professeur' AND \n\t\t\t\t\t\t\t\tu.etat='actif' AND \n\t\t\t\t\t\t\t\tu.login=apr.login_user AND \n\t\t\t\t\t\t\t\tapr.validation_remplacement='oui' \n\t\t\t\t\t\t\tORDER BY statut, nom, prenom, login;") . "\n\t\t<p><a href='#' onclick='cocher_decocher(true);return false;'>Cocher</a>/<a href='#' onclick='cocher_decocher(false);return false;'>décocher</a> tous les professeurs</p>\n\n\t\t<p><input type='hidden' name='mode' value='extraction' />\n\t\t<p><input type='submit' value='Extraire' /></p>\n\t</fieldset>\n<form>\n\n<script type='text/javascript'>\n\t" . js_checkbox_change_style('checkbox_change', 'texte_', 'n') . "\n</script>\n\n<p style='color:red'><em>A FAIRE :</em></p>\n<ul>\n\t<li>Liste des cours non remplacés et cours remplacés par jour.<br />\n\tAvec indication de l'effectif susceptible de se retrouver en permanence.</li>\n\t<li>Liste des remplacements effectués, pour une éventuelle(?) rémunaration.</li>\n</ul>"; } elseif ($mode == 'extraction') { //=================================================================== // Récupérer la liste des créneaux $tab_creneau = get_heures_debut_fin_creneaux(); //=================================================================== echo "\n\t<h3>Extraction des remplacements validés</h3>\n\t<p>Remplacements effectués entre le " . $date_debut_remplac . " et le " . $date_fin_remplac . " pour le ou les professeurs choisis :</p>\n\t<table class='boireaus boireaus_alt resizable sortable'>\n\t\t<tr>\n\t\t\t<th class='text' title=\"Cliquez pour trier\">Date</th>\n\t\t\t<th class='text' title=\"Cliquez pour trier\">Classe</th>\n\t\t\t<th class='text' title=\"Cliquez pour trier\">Professeur remplaçant</th>\n\t\t\t<th class='text' title=\"Cliquez pour trier\">Commentaire prof</th>\n\t\t\t<th class='text' title=\"Cliquez pour trier\">Commentaire validation</th>\n\t\t\t<th class='text' title=\"Cliquez pour trier\">Salle</th>\n\t\t\t<th class='text' title=\"Cliquez pour trier\">Cours remplacé</th>\n\t\t</tr>"; $mysql_date_debut_remplac = get_mysql_date_from_slash_date($date_debut_remplac); $mysql_date_fin_remplac = get_mysql_date_from_slash_date($date_fin_remplac); $nom_classe = array(); $civ_nom_prenom = array(); $info_grp = array(); for ($loop = 0; $loop < count($login_prof); $loop++) { $sql = "SELECT * FROM abs_prof_remplacement WHERE validation_remplacement='oui' AND date_debut_r>='{$mysql_date_debut_remplac}' AND date_fin_r<='{$mysql_date_fin_remplac}' AND login_user='******' ORDER BY date_debut_r;"; $res = mysqli_query($GLOBALS["mysqli"], $sql); if (mysqli_num_rows($res) > 0) {