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(); } $sql="SELECT 1=1 FROM droits WHERE id='/cahier_texte_2/export_cdt.php';"; $test=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test)==0) { $sql="INSERT INTO droits SET id='/cahier_texte_2/export_cdt.php', administrateur='V', professeur='V', cpe='V', scolarite='V', eleve='F', responsable='F', secours='F', autre='F', description='Export de CDT', statut='';"; $insert=mysqli_query($GLOBALS["mysqli"], $sql); } 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é."); } //======================= //Configuration du calendrier /* include("../lib/calendrier/calendrier.class.php"); $cal1 = new Calendrier("formulaire", "display_date_debut"); $cal2 = new Calendrier("formulaire", "display_date_fin"); $cal3 = new Calendrier("formulaire", "date2_acces"); */ //======================= //======================= // Pour éviter de refaire le choix des dates en revenant ici, on utilise la SESSION... $annee = strftime("%Y"); $mois = strftime("%m"); $jour = strftime("%d"); $heure = strftime("%H"); $minute = strftime("%M"); if($mois>8) {$date_debut_tmp="01/09/$annee";} else {$date_debut_tmp="01/09/".($annee-1);} $display_date_debut=isset($_POST['display_date_debut']) ? $_POST['display_date_debut'] : (isset($_SESSION['display_date_debut']) ? $_SESSION['display_date_debut'] : $date_debut_tmp); $display_date_fin=isset($_POST['display_date_fin']) ? $_POST['display_date_fin'] : (isset($_SESSION['display_date_fin']) ? $_SESSION['display_date_fin'] : $jour."/".$mois."/".$annee); //======================= $id_groupe=isset($_POST['id_groupe']) ? $_POST['id_groupe'] : NULL; if(isset($_GET['id_groupe'])) { if(is_array($_GET['id_groupe'])) { $id_groupe=$_GET['id_groupe']; } else { $id_groupe=array(); $id_groupe[0]=$_GET['id_groupe']; } } $id_classe=isset($_POST['id_classe']) ? $_POST['id_classe'] : (isset($_GET['id_classe']) ? $_GET['id_classe'] : NULL); $login_prof=isset($_POST['login_prof']) ? $_POST['login_prof'] : (isset($_GET['login_prof']) ? $_GET['login_prof'] : NULL); $action=isset($_POST['action']) ? $_POST['action'] : (isset($_GET['action']) ? $_GET['action'] : "export_zip"); $inclure_doc_joints=isset($_POST['inclure_doc_joints']) ? $_POST['inclure_doc_joints'] : "n"; $tab_fichiers_a_zipper=array(); $style_specifique[] = "lib/DHTMLcalendar/calendarstyle"; $javascript_specifique[] = "lib/DHTMLcalendar/calendar"; $javascript_specifique[] = "lib/DHTMLcalendar/lang/calendar-fr"; $javascript_specifique[] = "lib/DHTMLcalendar/calendar-setup"; //**************** EN-TETE ***************** $titre_page = "Cahier de textes - Export"; require_once("../lib/header.inc.php"); //**************** FIN EN-TETE ************* //debug_var(); echo "

"; if($_SESSION['statut']=='professeur') { if(getSettingValue("GepiCahierTexteVersion")=='2') { echo "Retour Retour"; } else { echo "Retour Retour"; } echo " | Export de mes CDT"; } else { // Modifier par la suite le chemin de retour selon les statuts... echo "Retour Retour"; } // Création d'un espace entre le bandeau et le reste //echo "

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

\n"; echo "

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

\n"; require("../lib/footer.inc.php"); die(); } // 20130722 if(isset($id_groupe)) { if((isset($action))&&($action=='afficher_tous_docs_joints')) { echo " | $texte_lien"; } if(!isset($id_groupe)) { if($_SESSION['statut']!='professeur') { // Pour les non-professeurs, on choisit d'abord les classes ou le login_prof if((!isset($id_classe))&&(!isset($login_prof))) { echo "

\n"; echo "

Choix des classes :

\n"; // Liste des classes avec élève: $sql="SELECT DISTINCT c.* FROM j_eleves_classes jec, classes c WHERE (c.id=jec.id_classe) ORDER BY c.classe;"; $call_classes=mysqli_query($GLOBALS["mysqli"], $sql); $nb_classes=mysqli_num_rows($call_classes); if($nb_classes==0){ echo "

Aucune classe avec élève affecté n'a été trouvée.

\n"; require("../lib/footer.inc.php"); die(); } echo "
\n"; // Affichage sur 3 colonnes $nb_classes_par_colonne=round($nb_classes/3); echo "\n"; echo "\n"; $cpt = 0; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "
     \n"; while($lig_clas=mysqli_fetch_object($call_classes)) { //affichage 3 colonnes if(($cpt>0)&&(round($cpt/$nb_classes_par_colonne)==$cpt/$nb_classes_par_colonne)){ echo "\n"; } echo ""; echo "
\n"; $cpt++; } echo "
\n"; echo "

Tout cocher / Tout décocher

\n"; echo "

\n"; echo "
\n"; //+++++++++++++++++++++++++++ $sql="SELECT DISTINCT u.login, u.nom, u.prenom FROM j_groupes_professeurs jgp, utilisateurs u WHERE u.login=jgp.login ORDER BY u.nom, u.prenom;"; $res_prof=mysqli_query($GLOBALS["mysqli"], $sql); $nb_profs=mysqli_num_rows($res_prof); if($nb_profs==0){ echo "

Aucun professeur assurant un enseignement n'a été trouvé.

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

Ou choisissez un professeur :

\n"; $nb_prof_par_colonne=round($nb_profs/3); echo "\n"; echo "\n"; $cpt = 0; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "
     \n"; while($lig_prof=mysqli_fetch_object($res_prof)) { //affichage 3 colonnes if(($cpt>0)&&(round($cpt/$nb_prof_par_colonne)==$cpt/$nb_prof_par_colonne)){ echo "\n"; } echo "login'>$lig_prof->nom $lig_prof->prenom"; echo "
\n"; $cpt++; } echo "
\n"; echo "\n"; } else { // On passe au choix des groupes echo " | Retour au choix des classes ou du professeur"; echo "

\n"; echo "

Choix des matières/enseignements :

\n"; echo "
\n"; if(isset($login_prof)) { echo "

Enseignements de ".civ_nom_prenom($login_prof)." :

\n"; echo "
\n"; echo "
\n"; echo "\n"; $cpt=0; $groups=get_groups_for_prof($login_prof); echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; //echo "\n"; echo "\n"; echo "\n"; $alt=1; foreach($groups as $current_group) { $alt=$alt*(-1); echo "\n"; echo "\n"; echo "\n"; echo "\n"; /* echo "\n"; */ echo "\n"; echo "\n"; $cpt++; } echo "
\n"; echo "Tout cocher / Tout décocher\n"; echo "EnseignementDescriptionProfesseursClasses
\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo ""; echo "\n"; $profs_grp=get_profs_for_group($current_group['id']); echo $profs_grp['proflist_string']; echo "\n"; echo $current_group['classlist_string']; echo "
\n"; //echo "\n"; //echo "

A FAIRE: Ajouter le choix Du/Au à ce niveau

\n"; echo "

"; echo "Exporter le(s) cahier(s) de textes de la date : "; echo ""; //echo "get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\">\"Calendrier\"\n"; echo img_calendrier_js("display_date_debut", "img_bouton_display_date_debut"); echo " à la date : "; echo ""; //echo "get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\">\"Calendrier\"\n"; echo img_calendrier_js("display_date_fin", "img_bouton_display_date_fin"); $date_end_bookings=strftime("%d/%m/%Y", getSettingValue('end_bookings')); echo " \"Prendre"; echo "
\n"; echo " (Veillez à respecter le format jj/mm/aaaa)\n"; echo "

\n"; echo "

Action à réaliser :
\n"; echo "
\n"; echo "     \n"; echo "
\n"; echo "ou
\n"; echo "Mettre en place un accès sans authentification aux cahier(s) de textes choisis
(pour par exemple, permettre à un inspecteur de consulter les cahiers de textes d'un professeur lors d'une inspection)"; echo "
\n"; echo ""; echo "
\n"; echo ""; echo "

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

Paramètres de l'accès 

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

Description du motif de l'ouverture d'accès :
"; echo ""; echo "

"; echo "

Date à laquelle vous souhaitez supprimer l'accès : "; echo ""; //echo "get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\">\"Calendrier\"\n"; echo img_calendrier_js("date2_acces", "img_bouton_date2_acces"); echo "
\n"; echo "(la suppression n'est pas automatique à la date indiquée, mais fixer une date peut aider à savoir si l'accès doit être conservé ou non)

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

\n"; echo "

\n"; echo "
\n"; echo "\n"; } elseif(isset($id_classe)) { echo "

Choix des matières/enseignements :

\n"; echo "
\n"; echo "
\n"; $cpt=0; for($i=0;$i".$classe."

\n"; echo "\n"; $groups=get_groups_for_class($id_classe[$i],"","n"); echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; $alt=1; foreach($groups as $current_group) { $alt=$alt*(-1); echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; $cpt++; } echo "
\n"; echo "Tout cocher / Tout décocher\n"; echo "EnseignementDescriptionProfesseursClasses
\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo ""; echo "\n"; $profs_grp=get_profs_for_group($current_group['id']); echo $profs_grp['proflist_string']; echo "\n"; echo $current_group['classlist_string']; echo "
\n"; } echo "
\n"; //echo "\n"; //echo "

A FAIRE: Ajouter le choix Du/Au à ce niveau

\n"; echo "

"; echo "Exporter le(s) cahier(s) de textes de la date : "; echo ""; //echo "get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\">\"Calendrier\"\n"; echo img_calendrier_js("display_date_debut2", "img_bouton_display_date_debut2"); echo " à la date : "; echo ""; //echo "get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\">\"Calendrier\"\n"; echo img_calendrier_js("display_date_fin2", "img_bouton_display_date_fin2"); echo "
\n"; echo " (Veillez à respecter le format jj/mm/aaaa)\n"; echo "

\n"; echo "

Action à réaliser :
\n"; echo "
\n"; echo "     \n"; echo "
\n"; echo "ou
\n"; echo "
L'accès mis en place est 'statique', c'est-à-dire que seules les notices saisies à ce jour pourront être consultées."; /* echo "
\n"; echo ""; */ echo "

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

Paramètres de l'accès 

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

Description du motif de l'ouverture d'accès :
"; echo ""; echo "

"; echo "

Date à laquelle vous souhaitez supprimer l'accès : "; echo ""; //echo "get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\">\"Calendrier\"\n"; echo img_calendrier_js("date2_acces", "img_bouton_date2_acces"); echo "
\n"; echo "(la suppression n'est pas automatique à la date indiquée, mais fixer une date peut aider à savoir si l'accès doit être conservé ou non)

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

\n"; echo "

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

Vous n'avez choisi ni professeur, ni classe.

\n"; } echo "
\n"; } } else { // C'est un professeur qui est connecté echo "

\n"; echo "

Choix des matières/enseignements :

\n"; echo "
\n"; $cpt=0; $groups=get_groups_for_prof($_SESSION['login']); echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; $alt=1; foreach($groups as $current_group) { $alt=$alt*(-1); echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; $cpt++; } echo "
\n"; echo "Tout cocher / Tout décocher\n"; echo "EnseignementDescriptionClasses
\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo ""; echo "\n"; echo $current_group['classlist_string']; echo "
\n"; //echo "\n"; //echo "

A FAIRE: Ajouter le choix Du/Au à ce niveau

\n"; echo "

"; echo "Exporter le(s) cahier(s) de textes de la date : "; echo ""; //echo "get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\">\"Calendrier\"\n"; echo img_calendrier_js("display_date_debut3", "img_bouton_display_date_debut3"); echo " à la date : "; echo ""; //echo "get_strPopup('../lib/calendrier/pop.calendrier.php', 350, 170)."\">\"Calendrier\"\n"; echo img_calendrier_js("display_date_fin3", "img_bouton_display_date_fin3"); echo "
\n"; echo " (Veillez à respecter le format jj/mm/aaaa)\n"; echo "

\n"; echo "

\n"; echo "\n"; echo "
\n"; echo "\n"; echo "()\n"; echo "

\n"; echo "

\n"; echo "

\n"; echo "
\n"; echo "\n"; } require("../lib/footer.inc.php"); die(); } //============================== // Le choix des groupes est fait //============================== // Préparation de l'arborescence $gepiSchoolName=getSettingValue('gepiSchoolName'); $gepiYear=getSettingValue('gepiYear'); require("cdt_lib.php"); $dirname=get_user_temp_directory(); if(!$dirname) { echo "

Problème avec le dossier temporaire.

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

\n"; } else { echo " | Retour au choix des classes ou du professeur"; echo "

\n"; } echo "
\n"; if($action!='acces2') { if($action=='afficher_tous_docs_joints') { echo "

Affichage des documents joints aux cahiers de textes extraits

\n"; } else { echo "

Affichage des cahiers de textes extraits

\n"; } } // Récupérer le max de getSettingValue("begin_bookings") et $display_date_debut $tmp_tab=explode("/",$display_date_debut); $jour=$tmp_tab[0]; $mois=$tmp_tab[1]; $annee=$tmp_tab[2]; $date_debut_tmp=mktime(0,0,0,$mois,$jour,$annee); $timestamp_debut_export=max(getSettingValue("begin_bookings"),$date_debut_tmp); // Récupérer le min de getSettingValue("end_bookings") et $display_date_fin $tmp_tab=explode("/",$display_date_fin); $jour=$tmp_tab[0]; $mois=$tmp_tab[1]; $annee=$tmp_tab[2]; $date_fin_tmp=mktime(0,0,0,$mois,$jour,$annee); $timestamp_fin_export=max(getSettingValue("end_bookings"),$date_fin_tmp); // Permettre de choisir l'ordre dans lequel exporter? $current_ordre='ASC'; if(($action=='acces')||($action=='acces2')) { $length = rand(35, 45); for($len=$length,$r='';mb_strlen($r)<$len;$r.=chr(!mt_rand(0,2)? mt_rand(48,57):(!mt_rand(0,1) ? mt_rand(65,90) : mt_rand(97,122)))); if((isset($GLOBALS['multisite']))&&($GLOBALS['multisite'] == 'y')&&(isset($_COOKIE['RNE']))&&($_COOKIE['RNE']!='')&&(preg_match("/^[A-Za-z0-9]*$/", $_COOKIE['RNE']))) { $dirname = "acces_cdt_".$_COOKIE['RNE']."_".$r; } else { $dirname = "acces_cdt_".$r; } $create = mkdir("../documents/".$dirname, 0700); if(!$create) { echo "

Problème avec le dossier temporaire../documents/".$dirname."

\n"; require("../lib/footer.inc.php"); die(); } // Enregistrement dans la base de cet accès ouvert // Il faut y stocker la liste des login profs concernés pour afficher en page d'accueil la présence d'un cdt ouvert en consultation $date1_acces="$annee-$mois-$jour $heure:$minute:00"; $date2_acces=isset($_POST['date2_acces']) ? $_POST['date2_acces'] : ""; if($date2_acces=='') { $date2_acces=$date1_acces; } else { $tab_tmp_date=explode('/',$date2_acces); $date2_acces=$tab_tmp_date[2]."-".$tab_tmp_date[1]."-".$tab_tmp_date[0]." $heure:$minute:00"; } $description_acces=isset($_POST['description_acces']) ? $_POST['description_acces'] : "Test"; } if($action=='acces2') { $tmp_chaine_id_groupe=""; for($loop=0;$loop0) {$tmp_chaine_id_groupe.=", ";} $tmp_chaine_id_groupe.=$id_groupe[$loop]; } $chemin_acces="documents/".$dirname."/index.php"; $chemin_accessansRNE = $chemin_acces; if((isset($GLOBALS['multisite']))&&($GLOBALS['multisite'] == 'y')&&(isset($_COOKIE['RNE']))&&($_COOKIE['RNE']!='')&&(preg_match("/^[A-Za-z0-9]*$/", $_COOKIE['RNE']))) { $chemin_acces.="?rne=".$_COOKIE['RNE']; } $res=enregistrement_creation_acces_cdt($chemin_acces, $description_acces, $date1_acces, $date2_acces, $id_groupe); if(!$res) { echo "

Erreur lors de l'enregistrement de la mise en place de l'accès.

\n"; require("../lib/footer.inc.php"); die(); } $f=fopen("../$chemin_accessansRNE","w+"); fwrite($f,'7) {$date_debut_tmp="01/09/$annee";} else {$date_debut_tmp="01/09/".($annee-1);} $display_date_debut=$date_debut_tmp; $display_date_fin=$jour."/".$mois."/".$annee; */ $display_date_debut="'.$display_date_debut.'"; $display_date_fin="'.$display_date_fin.'"; //================================= // Enseignements /* $groups=get_groups_for_prof($login_prof); $id_groupe=array(); foreach($groups as $current_group) { $id_groupe[]=$current_group["id"]; } */ $id_groupe=array('.$tmp_chaine_id_groupe.'); //================================= // A VOIR: PEUT-ETRE BLOQUER AUTOMATIQUEMENT L ACCES A UNE DATE DONNEE? require($prefixe_arbo_acces_cdt."/cahier_texte_2/acces_cdt.inc.php"); ?> '); fclose($f); $chaine_info_texte="

Information :
Le(s) cahier(s) de textes extrait(s) est(sont) accessible(s) sans authentification à l'adresse suivante :
../$chemin_acces
Consultez la page, copiez l'adresse en barre d'adresse et transmettez la à qui vous souhaitez.
N'oubliez pas de supprimer cet accès lorsqu'il ne sera plus utile.
 

"; echo $chaine_info_texte; require("../lib/footer.inc.php"); die(); } // 20130722 // Lister les docs joints... avec lien vers la/les notices associées if($action=='afficher_tous_docs_joints') { // Actuellement, on ne donne pas l'accès parent/élève à cette page, mais dans le cas où on le donnerait, il ne faut pas rendre visibles les documents cachés for($i=0;$i".$current_group['name']." (".$current_group['description'].") en ".$current_group['classlist_string']." (".$current_group['profs']['proflist_string'].")\n"; $sql="(SELECT cd.id_ct, cd.titre, cd.emplacement,ce.date_ct FROM ct_documents cd, ct_entry ce WHERE cd.id_ct=ce.id_ct AND ce.id_groupe='".$current_group['id']."')"; $sql.=" UNION "; $sql.="(SELECT cdd.id_ct_devoir AS id_ct,cdd.titre,cdd.emplacement,cde.date_ct FROM ct_devoirs_documents cdd, ct_devoirs_entry cde WHERE cdd.id_ct_devoir=cde.id_ct AND cde.id_groupe='".$current_group['id']."')"; $sql.=" ORDER BY date_ct;"; //echo "$sql
"; $res=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($res)==0) { echo "

Aucun document n'est joint à ce cahier de textes.

\n"; } else { echo ""; while($lig=mysqli_fetch_object($res)) { if(preg_match("#/cl_dev.*/#", $lig->emplacement)) { $class_ligne="color_fond_notices_t"; $ancre="travail_".$lig->id_ct; } else { $class_ligne="color_fond_notices_c"; $ancre="compte_rendu_".$lig->id_ct; } echo " "; } echo "
Date Id Document
".strftime("%a %d/%m/%Y", $lig->date_ct)." $lig->id_ct ".$lig->titre."
\n"; } } echo "


\n"; require("../lib/footer.inc.php"); die(); } if(($_SESSION['statut']=='professeur')||(isset($login_prof))) { $chaine_info_prof=""; if(isset($login_prof)) { $chaine_info_prof=" de ".civ_nom_prenom($login_prof)." "; } else { $login_prof=$_SESSION['login']; } // Préparation de l'arborescence $nom_export="export_cdt_".$login_prof."_".strftime("%Y%m%d_%H%M%S"); if($action=='acces') { $chemin_acces="documents/".$dirname."/".$nom_export."/index.html"; $res=enregistrement_creation_acces_cdt($chemin_acces, $description_acces, $date1_acces, $date2_acces, $id_groupe); if(!$res) { echo "

Erreur lors de l'enregistrement de la mise en place de l'accès.

\n"; require("../lib/footer.inc.php"); die(); } } if($action!='export_html') { arbo_export_cdt($nom_export, $dirname); } $chaine_id_groupe=""; // Générer la page d'index $content=""; $content.="

Cahiers de textes $chaine_info_prof(".$gepiSchoolName." - ".$gepiYear.")

\n"; $content.="

Cahier de textes ($display_date_debut - $display_date_fin) de :

\n"; $content.="
    \n"; for($i=0;$i0) { $chaine_id_groupe.=", "; } $chaine_id_groupe.="'".$id_groupe[$i]."'"; $nom_groupe=preg_replace("/[^A-Za-z0-9]/","_",remplace_accents($current_group['name'],'all')); $description_groupe=preg_replace("/[^A-Za-z0-9]/","_",remplace_accents($current_group['description'],'all')); $classlist_string_groupe=preg_replace("/[^A-Za-z0-9]/","_",remplace_accents($current_group['classlist_string'],'all')); $nom_page_html_groupe=$id_groupe[$i]."_".$nom_groupe."_"."$description_groupe"."_".$classlist_string_groupe.".html"; $nom_fichier[$id_groupe[$i]]=$nom_page_html_groupe; $nom_detaille_groupe[$id_groupe[$i]]=$current_group['name']." (".$current_group['description']." en (".$current_group['classlist_string']."))"; $nom_detaille_groupe_non_html[$id_groupe[$i]]=$current_group['name']." (".$current_group['description']." en (".$current_group['classlist_string']."))"; $content.="
  • ".$current_group['name']." (".$current_group['description']." en (".$current_group['classlist_string']."))
  • \n"; } $content.="
\n"; //================================================================ // Affichage dans la page d'export de ce qui va être fourni en zip echo ""; echo "
\n"; echo $content; echo "
\n"; // Précaution $chaine_id_groupe=preg_replace("/^,/","",$chaine_id_groupe); // Correctif des liens tels qu'affichés dans la page echo "\n"; //================================================================ if($action!='export_html') { $content=html_entete("Index des cahiers de textes",0).$content; $content.=html_pied_de_page(); $f=fopen($dossier_export."/index.html","w+"); fwrite($f,$content); fclose($f); $tab_fichiers_a_zipper[]=$dossier_export."/index.html"; } } else { // C'est une liste de classes/enseignements qui a été choisie $chaine_info_classes=""; $chaine_classes=""; $chaine_id_classe=""; for($i=0;$i0) { $chaine_info_classes.="_"; $chaine_classes.=", "; $chaine_id_classe.=", "; } $nom_classe[$i]=get_class_from_id($id_classe[$i]); $nom_classe_clean[$i]=preg_replace("/[^A-Za-z0-9]/","_",remplace_accents($nom_classe[$i],'all')); $chaine_info_classes.=$nom_classe_clean[$i]; $chaine_classes.=$nom_classe[$i]; $chaine_id_classe.="'".$id_classe[$i]."'"; } // Créer une page index.html de la liste des classes //if(count($id_classe)>1) { // Préparation de l'arborescence $nom_export="export_cdt_classes_".$chaine_info_classes."_".strftime("%Y%m%d_%H%M%S"); if($action=='acces') { $chemin_acces="documents/".$dirname."/".$nom_export."/index.html"; $res=enregistrement_creation_acces_cdt($chemin_acces, $description_acces, $date1_acces, $date2_acces, $id_groupe); if(!$res) { echo "

Erreur lors de l'enregistrement de la mise en place de l'accès.

\n"; require("../lib/footer.inc.php"); die(); } } arbo_export_cdt($nom_export, $dirname); // Générer la page d'index $content=""; $content.="

Cahiers de textes de $chaine_classes (".$gepiSchoolName." - ".$gepiYear.")

\n"; $content.="

Cahier de textes ($display_date_debut - $display_date_fin) de :

\n"; $content.="
    \n"; for($i=0;$i\n"; } $content.="
\n"; //================================================================ // Affichage dans la page d'export de ce qui va être fourni en zip echo ""; echo "
\n"; echo $content; echo "
\n"; // Correctif des liens tels qu'affichés dans la page echo "\n"; //================================================================ $content=html_entete("Index des cahiers de textes",0).$content; $content.=html_pied_de_page(); //echo "Ecriture de ".$dossier_export."/index.html
"; $f=fopen($dossier_export."/index.html","w+"); fwrite($f,$content); fclose($f); $tab_fichiers_a_zipper[]=$dossier_export."/index.html"; //} // Créer une page index_$classe.html pour chaque classe for($j=0;$j\n"; $groups=get_groups_for_class($id_classe[$j],"","n"); $chaine_id_groupe=""; $chaine_lien_id_groupe=""; // Générer la page d'index $content=""; $content.="

Cahiers de textes de ".$nom_classe[$j]."(".$gepiSchoolName." - ".$gepiYear.")

\n"; $content.="

Cahier de textes ($display_date_debut - $display_date_fin) de :

\n"; $content.="
    \n"; for($i=0;$i0) { $chaine_id_groupe.=", "; $chaine_lien_id_groupe.=", "; } $chaine_id_groupe.="'".$current_group['id']."'"; $chaine_lien_id_groupe.="'".$current_group['id']."_".$id_classe[$j]."'"; $nom_groupe=preg_replace("/[^A-Za-z0-9]/","_",remplace_accents($current_group['name'],'all')); $description_groupe=preg_replace("/[^A-Za-z0-9]/","_",remplace_accents($current_group['description'],'all')); $classlist_string_groupe=preg_replace("/[^A-Za-z0-9]/","_",remplace_accents($current_group['classlist_string'],'all')); $nom_page_html_groupe=$current_group['id']."_".$nom_groupe."_".$description_groupe."_".$classlist_string_groupe.".html"; $nom_fichier[$current_group['id']]=$nom_page_html_groupe; $nom_detaille_groupe[$current_group['id']]=$current_group['name']." (".$current_group['description']." en (".$current_group['classlist_string']."))"; $nom_detaille_groupe_non_html[$current_group['id']]=$current_group['name']." (".$current_group['description']." en (".$current_group['classlist_string']."))"; $content.="
  • ".$current_group['name']." (".$current_group['description']." en (".$current_group['classlist_string']."))
  • \n"; } } $content.="
\n"; //================================================================ // Affichage dans la page d'export de ce qui va être fourni en zip echo ""; echo "
\n"; echo $content; echo "
\n"; // Précaution $chaine_id_groupe=preg_replace("/^,/","",$chaine_id_groupe); $chaine_lien_id_groupe=preg_replace("/^,/","",$chaine_lien_id_groupe); // Correctif des liens tels qu'affichés dans la page echo "\n"; //================================================================ if($action!='export_html') { $content=html_entete("Index des cahiers de textes de ".$nom_classe[$j],0).$content; $content.=html_pied_de_page(); $f=fopen($dossier_export."/".$nom_fichier_index[$id_classe[$j]],"w+"); fwrite($f,$content); fclose($f); $tab_fichiers_a_zipper[]=$dossier_export."/".$nom_fichier_index[$id_classe[$j]]; } } } echo "
\n"; $tab_chemin_url=array(); // Dans la page générée, permettre de masquer via JavaScript telle ou telle catégorie Notices ou devoirs,... for($i=0;$i"; if(count($current_group["classes"]["list"])==1) { $content.="Retour\n"; } else { $chaine_cpt_classe=""; $cpt=0; foreach($current_group["classes"]["classes"] as $current_id_classe => $current_classe) { if($cpt>0) {$chaine_cpt_classe.=", ";} $content.="".$current_classe['classe']."\n"; $chaine_cpt_classe.=$cpt; $cpt++; } } $content.="\n"; } } else { // On a choisi un professeur $content.="\n"; } $content.="\n"; $content.="

Cahiers de textes (".$gepiSchoolName." - ".$gepiYear.")

\n"; $content.="

Extraction du $display_date_debut au $display_date_fin

\n"; $content.="

Cahier de textes de ".$nom_detaille_groupe[$id_groupe[$i]]." ($display_date_debut - $display_date_fin) :

\n"; unset($tmp_tab); $tmp_tab=get_dates_notices_et_dev($id_groupe[$i], "", "", $timestamp_debut_export, $timestamp_fin_export, "y", "y"); $tab_dates=$tmp_tab[0]; $tab_notices=$tmp_tab[1]; $tab_dev=$tmp_tab[2]; unset($tmp_tab); $content.=lignes_cdt($tab_dates, $tab_notices, $tab_dev); //================================================================ echo "
\n"; echo $content; echo "
\n"; echo "\n"; //================================================================ if($action!='export_html') { $content=html_entete("CDT: ".$nom_detaille_groupe_non_html[$id_groupe[$i]],1).$content; $content.=html_pied_de_page(); $f=fopen($dossier_export."/cahier_texte/".$nom_fichier[$id_groupe[$i]],"w+"); fwrite($f,$content); fclose($f); $tab_fichiers_a_zipper[]=$dossier_export."/cahier_texte/".$nom_fichier[$id_groupe[$i]]; // In n'y a qu'un fichier url_documents.txt par archive zip... il est commun à tous les groupes /* if(count($tab_chemin_url)>0) { $fichier_url=$dossier_export."/url_documents.txt"; $f=fopen($fichier_url,"a+"); for($k=0;$k\n"; } if($action!='export_html') { if(count($tab_chemin_url)>0) { $fichier_url=$dossier_export."/url_documents.txt"; $f=fopen($fichier_url,"a+"); for($k=0;$kcreate($tab_fichiers_a_zipper,"","../temp/$dirname/"); if($v_list==0) { echo "

Cahiers de textes extraits : $dossier_export

\n"; echo "

ERREUR lors de la création de l'archive :
"; echo $archive->errorInfo(true); echo "

\n"; } else { if($inclure_doc_joints=='y') { //echo "count(\$tab_chemin_url)=".count($tab_chemin_url)."
"; if(count($tab_chemin_url)>0) { for($k=0;$k"; if(file_exists($tab_chemin_url[$k])) { //echo "Ajout de $tab_chemin_url[$k]
"; $archive->add($tab_chemin_url[$k],PCLZIP_OPT_REMOVE_PATH, '../', PCLZIP_OPT_ADD_PATH, $nom_export."/"); } } } } $basename_fichier_archive=basename($fichier_archive); echo "

Archive des cahiers de textes extraits : $basename_fichier_archive

\n"; echo "\n"; } // On fait le ménage for($i=0;$i if(document.getElementById('div_archive_zip')) { document.getElementById('div_archive_zip').innerHTML=\"$chaine_info_texte\"; } //url=document.location; //alert(url); //var reg = new RegExp('cahier_texte_2/export_cdt.*',''); //alert(document.location.replace(reg,'')); \n"; } echo "


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