security_check(); if ($resultat_session == 'c') { header("Location: ../utilisateurs/mon_compte.php?change_mdp=yes"); die(); } else if ($resultat_session == '0') { header("Location: ../logout.php?auto=1"); die(); } // Il faudra corriger le droit dans utilitaires/updates/access_rights.inc.php //$tab_req[] = "INSERT INTO droits VALUES ('/cahier_texte_2/see_all.php', 'F', 'V', 'V', 'V', 'V', 'V', 'F', 'F', 'Consultation des cahiers de texte', '');"; //$tab_req[] = "INSERT INTO droits VALUES ('/cahier_texte/see_all.php', 'F', 'V', 'V', 'V', 'V', 'V', 'F', 'F', 'Consultation des cahiers de texte', '');"; // Passer à V pour administrateur if($_SESSION['statut']!='administrateur') { if (!checkAccess()) { header("Location: ../logout.php?auto=1"); die(); } } //On vérifie si le module est activé if (getSettingValue("active_cahiers_texte")!='y') { die("Le module n'est pas activé."); } //include "../lib/mincals.inc"; unset($day); $day = isset($_POST["day"]) ? $_POST["day"] : (isset($_GET["day"]) ? $_GET["day"] : date("d")); unset($month); $month = isset($_POST["month"]) ? $_POST["month"] : (isset($_GET["month"]) ? $_GET["month"] : date("m")); unset($year); $year = isset($_POST["year"]) ? $_POST["year"] : (isset($_GET["year"]) ? $_GET["year"] : date("Y")); $id_classe = isset($_POST["id_classe"]) ? $_POST["id_classe"] : (isset($_GET["id_classe"]) ? $_GET["id_classe"] : -1); unset($id_groupe); $id_groupe = isset($_POST["id_groupe"]) ? $_POST["id_groupe"] :(isset($_GET["id_groupe"]) ? $_GET["id_groupe"] :NULL); if (is_numeric($id_groupe)) { $current_group = get_group($id_groupe); } else { $current_group = false; } unset($selected_eleve); $login_eleve = isset($_POST["login_eleve"]) ? $_POST["login_eleve"] :(isset($_GET["login_eleve"]) ? $_GET["login_eleve"] :false); if ($login_eleve) { $selected_eleve = mysqli_fetch_object(mysqli_query($GLOBALS["mysqli"], "SELECT e.login, e.nom, e.prenom FROM eleves e WHERE login = '" . $login_eleve . "'")); } else { $selected_eleve = false; } if ($_SESSION['statut'] == 'eleve') { $selected_eleve = mysqli_fetch_object(mysqli_query($GLOBALS["mysqli"], "SELECT e.login, e.nom, e.prenom FROM eleves e WHERE login = '".$_SESSION['login'] . "'")); } elseif ($_SESSION['statut'] == "responsable") { $get_eleves = mysqli_query($GLOBALS["mysqli"], "SELECT e.login, e.nom, e.prenom " . "FROM eleves e, resp_pers r, responsables2 re " . "WHERE (" . "e.ele_id = re.ele_id AND " . "re.pers_id = r.pers_id AND " . "r.login = '".$_SESSION['login']."')"); if (mysqli_num_rows($get_eleves) == 1) { // Un seul élève associé : on initialise tout de suite la variable $selected_eleve // Cela signifie entre autre que l'on ne prend pas en compte $login_eleve, fermant ainsi une // potentielle faille de sécurité. $selected_eleve = mysqli_fetch_object($get_eleves); } elseif (mysqli_num_rows($get_eleves) == 0) { $selected_eleve = false; } elseif (mysqli_num_rows($get_eleves) > 1 and $selected_eleve) { // Si on est là, c'est que la variable $login_eleve a été utilisée pour // générer $selected_eleve // On va vérifier que l'élève ainsi sélectionné fait bien partie des élèves // associés à l'utilisateur au statut 'responsable' $ok = false; while($test = mysqli_fetch_object($get_eleves)) { if ($test->login == $selected_eleve->login) $ok = true; } if (!$ok) $selected_eleve = false; } } $selected_eleve_login = $selected_eleve ? $selected_eleve->login : ""; // Nom complet de la classe $appel_classe = mysqli_query($GLOBALS["mysqli"], "SELECT classe FROM classes WHERE id='$id_classe'"); $classe_nom = @old_mysql_result($appel_classe, 0, "classe"); // Nom complet de la matière $matiere_nom = $current_group["matiere"]["nom_complet"]; (!isset($_GET['ordre']) or (($_GET['ordre'] != '') and ($_GET['ordre']!= 'DESC')))?$current_ordre='':$current_ordre=$_GET['ordre']; ($current_ordre == '')?$ordre='DESC':$ordre=''; (!isset($_GET['imprime']) or (($_GET['imprime'] != 'y') and ($_GET['imprime']!= 'n')))?$current_imprime='n':$current_imprime=$_GET['imprime']; if ($current_imprime == 'n') { $imprime='y'; $text_imprime="Version imprimable"; $largeur = "30%"; } else { $imprime='n'; $text_imprime="Retour"; $largeur = "5%"; } // On ajoute un retour vers la page de signature des cdt si c'est un administrateur $_retour = ((isset($_SESSION["retour"]))&&($_SESSION["retour"] == 'admin_ct')) ? $_SESSION["retour"] : 'visa_ct'; $code_retour_admin = '

RETOUR vers la signature des cahiers de textes

'; $retour_admin = ($_SESSION["statut"] == 'administrateur') ? $code_retour_admin : ''; if(isset($_GET['retour_cdt'])) { $_SESSION['retour_cdt']=$_GET['retour_cdt']; } if((isset($_SESSION['retour_cdt']))&&($_SESSION['retour_cdt']='visa_ct')) { $_retour='visa_ct'; $retour_admin='

RETOUR vers la signature des cahiers de textes

'; } //**************** EN-TETE ***************** if ($current_imprime=='n') $titre_page = "Cahier de textes - Vue d'ensemble"; require_once("../lib/header.inc.php"); if ($current_imprime=='y') echo "
\n"; //**************** FIN EN-TETE ************* // Création d'un espace entre le bandeau et le reste ainsi que le retour pour l'admin echo "

\n" . $retour_admin; //On vérifie si le module est activé if (getSettingValue("active_cahiers_texte")!='y') { die("

Le cahier de textes n'est pas accessible pour le moment.

"); } // echo "\n"; echo "
\n"; // echo "
"; // echo "\n"; // echo "\n"; // echo "\n"; echo "\n"; // echo "
"; echo "
"; if ($current_imprime=='n') { if ($_SESSION['statut'] == 'responsable') { echo make_eleve_select_html('see_all.php', $_SESSION['login'], $selected_eleve, $year, $month, $day); } if ($selected_eleve_login != "") echo make_matiere_select_html('see_all.php', $selected_eleve_login, $id_groupe, $year, $month, $day); if ($_SESSION['statut'] != "responsable" and $_SESSION['statut'] != "eleve") { echo make_classes_select_html('see_all.php', $id_classe, $year, $month, $day); if ($id_classe != -1) echo make_matiere_select_html('see_all.php', $id_classe, $id_groupe, $year, $month, $day); } } echo "
\n"; // echo "
\n"; echo "
\n"; echo "

\n"; echo "\n"; echo "Cahier de textes"; if ($current_group) { echo " - $matiere_nom"; echo " - classe de ".$current_group['classlist_string']; } if ($id_classe != -1) { echo "
$classe_nom\n"; } echo "
\n"; // Test si le cahier de texte est partagé if ($current_group) { echo "
("; $i=0; foreach ($current_group["profs"]["users"] as $prof) { if ($i != 0) echo ", "; echo mb_substr($prof["prenom"],0,1) . ". " . $prof["nom"]; $i++; } echo ")"; } echo "

\n"; echo "
\n"; // echo "
\n"; if ($current_group) { echo "
\n"; if ($current_imprime=='n') { //if ($_SESSION["statut"] == "professeur" OR $_SESSION["statut"] == "scolarite" OR $_SESSION["statut"] == "cpe" OR $_SESSION["statut"] == "autre") { if ($_SESSION["statut"] == "administrateur" OR $_SESSION["statut"] == "professeur" OR $_SESSION["statut"] == "scolarite" OR $_SESSION["statut"] == "cpe" OR $_SESSION["statut"] == "autre") { echo "\nRetour Retour\n - "; if ($_SESSION["statut"] == "professeur") { echo "\nRetour Retour vers mes cahiers de textes\n - "; } } else { echo "\nRetour Retour\n - "; } // if ($current_imprime=='n') echo "\nTrier dans l'ordre inverse\n - \n"; } echo "\n$text_imprime\n\n"; // } retour ne s'affichait pas sur la page imprimable echo "
\n"; } echo "
"; $test_cahier_texte = mysqli_query($GLOBALS["mysqli"], "SELECT contenu FROM ct_entry WHERE (id_groupe='$id_groupe')"); $nb_test = mysqli_num_rows($test_cahier_texte); if ($nb_test == 0) { echo "\n

\n"; if ($_SESSION['statut'] == "responsable") { echo "Choisissez un élève et une matière."; } elseif ($_SESSION['statut'] == "eleve") { echo "Choisissez une matière."; } else { echo "Choisissez une classe et une matière."; } echo "\n

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

Cahiers de textes du "; echo strftime("%d/%m/%Y", getSettingValue("begin_bookings")); echo " au "; echo strftime("%d/%m/%Y", getSettingValue("end_bookings")); echo "

\n"; require("../lib/footer.inc.php"); die(); } // Affichage des informations générales /* $appel_info_cahier_texte = mysqli_query($GLOBALS["mysqli"], "SELECT contenu, id_ct FROM ct_entry WHERE (id_groupe='$id_groupe' and date_ct='')"); $nb_cahier_texte = mysqli_num_rows($appel_info_cahier_texte); $content = @old_mysql_result($appel_info_cahier_texte, 0, 'contenu'); $id_ct = @old_mysql_result($appel_info_cahier_texte, 0, 'id_ct'); $content .= affiche_docs_joints($id_ct,"c"); if ($content != '') { echo "

\nINFORMATIONS GENERALES\n

\n"; echo "
".$content."
"; } */ $infos_generales=""; $sql="SELECT contenu, id_ct FROM ct_entry WHERE (id_groupe='$id_groupe' and date_ct='');"; //echo "$sql
"; $appel_info_cahier_texte = mysqli_query($GLOBALS["mysqli"], $sql); $nb_cahier_texte = mysqli_num_rows($appel_info_cahier_texte); while($lig_ct=mysqli_fetch_object($appel_info_cahier_texte)) { $content=$lig_ct->contenu; if($content!="") { $id_ct = $lig_ct->id_ct; $content .= affiche_docs_joints($id_ct,"c"); $infos_generales.="
"; $infos_generales.=$content; $infos_generales.="
"; } } //if ($content != '') { if ($infos_generales != '') { echo "

\nINFORMATIONS GENERALES\n

\n"; echo $infos_generales; } // echo "
CAHIER DE TEXTES: comptes rendus de séance

"; echo "

\nCAHIER DE TEXTES: comptes rendus de séance\n

\n"; if(($_SESSION['statut']=='eleve')||($_SESSION['statut']=='responsable')) { if((isset($selected_eleve_login))&&($selected_eleve_login!="")) { $req_notices = "select DISTINCT 'c' type, contenu, date_ct, id_ct from ct_entry ce, j_eleves_groupes jeg where (contenu != '' and ce.id_groupe='".$id_groupe."' and ce.id_groupe=jeg.id_groupe and jeg.login='".$selected_eleve_login."' and date_ct != '' and date_ct >= '".getSettingValue("begin_bookings")."' and date_ct <= '".getSettingValue("end_bookings")."' and date_ct <= '".time()."') ORDER BY date_ct ".$current_ordre.", heure_entry ".$current_ordre; } else { $req_notices = "select 'c' type, contenu, date_ct, id_ct from ct_entry where (contenu != '' and id_groupe='".$id_groupe."' and date_ct != '' and date_ct >= '".getSettingValue("begin_bookings")."' and date_ct <= '".getSettingValue("end_bookings")."' and date_ct <= '".time()."') ORDER BY date_ct ".$current_ordre.", heure_entry ".$current_ordre; } } else { $req_notices = "select 'c' type, contenu, date_ct, id_ct from ct_entry where (contenu != '' and id_groupe='".$id_groupe."' and date_ct != '' and date_ct >= '".getSettingValue("begin_bookings")."' and date_ct <= '".getSettingValue("end_bookings")."') ORDER BY date_ct ".$current_ordre.", heure_entry ".$current_ordre; } $res_notices = mysqli_query($GLOBALS["mysqli"], $req_notices); $notice = mysqli_fetch_object($res_notices); // 20130727 $CDTPeutPointerTravailFait=getSettingAOui('CDTPeutPointerTravailFait'.ucfirst($_SESSION['statut'])); $class_notice_dev_fait="see_all_notice couleur_bord_tableau_notice color_fond_notices_t_fait"; $class_notice_dev_non_fait="see_all_notice couleur_bord_tableau_notice color_fond_notices_t"; if(($selected_eleve_login!='')&&($CDTPeutPointerTravailFait)) { $tab_etat_travail_fait=get_tab_etat_travail_fait($selected_eleve_login); echo js_cdt_modif_etat_travail(); } $ts_limite_visibilite_devoirs_pour_eleves=time()+getSettingValue('delai_devoirs')*24*3600; if(($_SESSION['statut']=='eleve')||($_SESSION['statut']=='responsable')) { $ts_limite_dev=$ts_limite_visibilite_devoirs_pour_eleves; } else { $ts_limite_dev=getSettingValue("end_bookings"); } $req_devoirs = "select 't' type, contenu, date_ct, id_ct, date_visibilite_eleve from ct_devoirs_entry where (contenu != '' and id_groupe = '".$id_groupe."' and date_ct != '' and date_ct >= '".getSettingValue("begin_bookings")."' and date_ct <= '".$ts_limite_dev."' ) order by date_ct ".$current_ordre; $res_devoirs = mysqli_query($GLOBALS["mysqli"], $req_devoirs); $devoir = mysqli_fetch_object($res_devoirs); $timestamp_courant=time(); // Boucle d'affichage des notices dans la colonne de gauche $date_ct_old = -1; while (true) { if ($current_ordre == "DESC") { // On met les notices du jour avant les devoirs à rendre aujourd'hui if ($notice && (!$devoir || $notice->date_ct >= $devoir->date_ct)) { // Il y a encore une notice et elle est plus récente que le prochain devoir, où il n'y a plus de devoirs $not_dev = $notice; $notice = mysqli_fetch_object($res_notices); $type_notice="notice"; } elseif($devoir) { // Plus de notices et toujours un devoir, ou devoir plus récent $not_dev = $devoir; $devoir = mysqli_fetch_object($res_devoirs); $type_notice="devoir"; } else { // Plus rien à afficher, on sort de la boucle break; } } else { // On met les notices du jour avant les devoirs à rendre aujourd'hui if ($notice && (!$devoir || $notice->date_ct <= $devoir->date_ct)) { // Il y a encore une notice et elle est plus récente que le prochain devoir, où il n'y a plus de devoirs $not_dev = $notice; $notice = mysqli_fetch_object($res_notices); $type_notice="notice"; } elseif($devoir) { // Plus de notices et toujours un devoir, ou devoir plus récent $not_dev = $devoir; $devoir = mysqli_fetch_object($res_devoirs); $type_notice="devoir"; } else { // Plus rien à afficher, on sort de la boucle break; } } if(($type_notice!="devoir")|| ($not_dev->date_visibilite_eleve=="")|| (($not_dev->date_visibilite_eleve!="")&&(mysql_date_to_unix_timestamp($not_dev->date_visibilite_eleve)<=$timestamp_courant))|| (verif_groupe_appartient_prof($id_groupe)==1)) { // Passage en HTML //$content = &$not_dev->contenu; // INSERT INTO setting SET name='depolluer_MSOffice', value='y'; if(getSettingValue('depolluer_MSOffice')=='y') { //$content = &my_ereg_replace('.*<\!\[endif\]-->',"",$not_dev->contenu); $content = &preg_replace('#.*<\!\[endif\]-->#',"",$not_dev->contenu); } else { $content = &$not_dev->contenu; } $content .= affiche_docs_joints($not_dev->id_ct,$not_dev->type); echo "

\n\n"; if ($not_dev->type == "t") { echo("A faire pour le : "); } echo(strftime("%a %d %b %y", $not_dev->date_ct)); echo "\n

\n"; // Numérotation des notices si plusieurs notices sur la même journée if ($not_dev->type == "c") { if ($date_ct_old == $not_dev->date_ct) { $num_notice++; echo " (notice N° ".$num_notice.")"; } else { // on afffiche "(notice N° 1)" uniquement s'il y a plusieurs notices dans la même journée $nb_notices = sql_query1("SELECT count(id_ct) FROM ct_entry WHERE (id_groupe='" . $current_group["id"] ."' and date_ct='".$not_dev->date_ct."')"); if ($nb_notices > 1) echo " (notice N° 1)"; // On réinitialise le compteur $num_notice = 1; } } // echo("type]."\">\n\n\n\n
\n$content
\n
\n"); if($type_notice=='devoir') { // 20130727 $class_color_fond_notice="color_fond_notices_t"; if($CDTPeutPointerTravailFait) { get_etat_et_img_cdt_travail_fait($not_dev->id_ct); /* if(array_key_exists($not_dev->id_ct, $tab_etat_travail_fait)) { if($tab_etat_travail_fait[$not_dev->id_ct]['etat']=='fait') { $image_etat="../images/edit16b.png"; $texte_etat_travail="FAIT: Le travail est actuellement pointé comme fait.\n"; if($tab_etat_travail_fait[$not_dev->id_ct]['date_modif']!=$tab_etat_travail_fait[$not_dev->id_ct]['date_initiale']) { $texte_etat_travail.="Le travail a été pointé comme fait la première fois le ".formate_date($tab_etat_travail_fait[$not_dev->id_ct]['date_initiale'], "y")."\net modifié pour la dernière fois par la suite le ".formate_date($tab_etat_travail_fait[$not_dev->id_ct]['date_modif'], "y")."\n"; } else { $texte_etat_travail.="Le travail a été pointé comme fait le ".formate_date($tab_etat_travail_fait[$not_dev->id_ct]['date_initiale'], "y")."\n"; } $texte_etat_travail.="Cliquer pour corriger si le travail n'est pas encore fait."; $class_color_fond_notice="color_fond_notices_t_fait"; } else { $image_etat="../images/edit16.png"; $texte_etat_travail="NON FAIT: Le travail n'est actuellement pas fait.\nCliquer pour pointer le travail comme fait."; } } else { $image_etat="../images/edit16.png"; $texte_etat_travail="NON FAIT: Le travail n'est actuellement pas fait.\nCliquer pour pointer le travail comme fait."; } */ } echo "
"; } else { echo "
"; } /* if ($not_dev->type == "t") { echo "see_all_a_faire'>\n"; } else { echo "see_all_compte_rendu'>\n"; }*/ if(($type_notice=='devoir')&&($not_dev->date_visibilite_eleve!='0000-00-00 00:00:00')) { echo "
Donné le ".formate_date($not_dev->date_visibilite_eleve)."
\n"; } if(($type_notice=='devoir')&&($CDTPeutPointerTravailFait)) { echo "\n"; } $chaine_tag=get_liste_tag_notice_cdt($not_dev->id_ct, $not_dev->type, "right"); if($chaine_tag!="") { echo $chaine_tag; } echo "$content\n
\n"; if ($not_dev->type == "c") $date_ct_old = $not_dev->date_ct; } } //if ($current_imprime=='n') echo ""; //echo ""; echo "
\n"; echo "

Cahiers de textes du "; echo strftime("%d/%m/%Y", getSettingValue("begin_bookings")); echo " au "; echo strftime("%d/%m/%Y", getSettingValue("end_bookings")); echo "

\n"; require("../lib/footer.inc.php"); ?>