1) { header("Location: ../index.php");}; if(isset($_SESSION['cdt_envole'])) {require_once('../inc/functions_envole.inc.php');} ?> Administration
Afin de ne pas insérer dans WebCalendar des cours tombant pendant les vacances, renseignez celles-ci avant de poursuivre.
\n"; echo "

Pour réaliser l'import dans les tables du cahier de textes, vous avez besoin de deux fichiers xml,\n \n Vérifiez que vous avez ces deux fichiers avant de commencer la procédure.


\n
\n
Veuillez fournir le fichier d'export de sconet sts_emp_RNE_anneescolaire.xml
\n
A partir de cet unique fichier seront importés enseignants, classes, matières, personnel de direction et CPE.

\n
\n
Veuillez fournir le fichier d'export de votre logiciel d'emploi du temps emp_sts_RNE_anneescolaire.xml
\n Ce fichier est optionnel mais permet de compléter les emplois du temps des professeurs !\n"; if(isset($_SESSION['cdt_envole'])) // commentaire envole echo "
Cet import permet également d'importer les emplois du temps dans calendar.\n"; echo "

\n \n

\n"; if(!isset($_SESSION['cdt_envole'])) // commentaire non envole echo "

Attention, cette fonctionnalité demande l'utilisation de PHP5 sur le serveur !\n"; break; case "posted": $post_max_size=ini_get('post_max_size'); $upload_max_filesize=ini_get('upload_max_filesize'); $max_execution_time=ini_get('max_execution_time'); $memory_limit=ini_get('memory_limit'); if($step==0) { if (isset($_FILES["sts_emp_xml_file"])) { if ($_FILES['sts_emp_xml_file']['tmp_name']<>'') { $dossier_destination = '../fichiers_joints/'; $dossier_temporaire = $_FILES['sts_emp_xml_file']['tmp_name']; $type_fichier = $_FILES['sts_emp_xml_file']['type']; $erreur= $_FILES['sts_emp_xml_file']['error']; if ($erreur == 2) exit ("Le fichier 1 dépasse la taille de 100 Mo."); if ($erreur == 3) exit ("Le fichier 1 a été partiellement transféré. Envoyez-le à nouveau."); if(!move_uploaded_file($dossier_temporaire, $dossier_destination .'sts_emp_xml_file.xml')) exit("Impossible de copier le fichier 1 dans le dossier fichiers_joints"); } } if (isset($_FILES["emp_sts_xml_file"])) { if ($_FILES['emp_sts_xml_file']['tmp_name']<>'') { $dossier_destination = '../fichiers_joints/'; $dossier_temporaire = $_FILES['emp_sts_xml_file']['tmp_name']; $type_fichier = $_FILES['emp_sts_xml_file']['type']; $erreur= $_FILES['emp_sts_xml_file']['error']; if ($erreur == 2) exit ("Le fichier 2 dépasse la taille de 100 Mo."); if ($erreur == 3 ) exit ("Le fichier 2 a été partiellement transféré. Envoyez-le à nouveau."); if(!move_uploaded_file($dossier_temporaire, $dossier_destination .'emp_sts_xml_file.xml')) exit("Impossible de copier le fichier 2 dans le dossier fichiers_joints"); } else { //fichier emploi du temps non fourni $_SESSION['emp']=1; } } } $xml_sts_emp = simplexml_load_file('../fichiers_joints/sts_emp_xml_file.xml'); $emp = $_SESSION['emp']; if (!$emp) $xml_emp_sts = simplexml_load_file('../fichiers_joints/emp_sts_xml_file.xml'); echo "

Attention, il est vivement conseillé d'effectuer une sauvegarde des données avant toute nouvelle importation.
\n"; if(isset($_SESSION['cdt_envole'])) // message spécifique aux utilisateurs envole echo "
La partie \"Gestion des données\" se situe dans le menu configuration du portail, accessible ici.
"; //export des données de l etablissement foreach ($xml_sts_emp->xpath('//UAJ') as $rne_xml) { $rne=(string)$rne_xml["CODE"]; echo "
Selon les données fournies, le RNE de votre établissement est ".strtolower($rne).".
"; $ar_etab["CODE_ACAD"]=(string)$rne_xml->ACADEMIE->CODE; $ar_etab["LIBELLE"]=(string)$rne_xml->ACADEMIE->LIBELLE; $ar_etab["DENOM_PRINC"]=trim(utf8_decode((string)$rne_xml->DENOM_PRINC)); $ar_etab["DENOM_COMPL"]=trim(utf8_decode((string)$rne_xml->DENOM_COMPL)); echo "
Votre établissement est ".$ar_etab["DENOM_PRINC"]." ".$ar_etab["DENOM_COMPL"].".
"; } //export des données relatives a l annee foreach ($xml_sts_emp->xpath('//ANNEE_SCOLAIRE') as $annee_xml) { $s_annee=(string)$annee_xml["ANNEE"]; echo "
Importation des données pour l'année ".$s_annee."
"; } if (!$emp) { echo "
\n
Voulez-vous réinitialiser les emplois du temps ?
\n OUI, c'est une nouvelle année scolaire, je souhaite importer les nouveaux emplois du temps.
\n NON, je souhaite simplement ajouter de nouvelles données, aucun cours ne sera effacé.



\n Voir les détails de l'importation

\n"; if(isset($_SESSION['cdt_envole'])) // importation proposée dans webcalendar pour les utilisateurs du cartable en ligne uniquement echo" Insérer dans WebCalendar (long mais à faire pour être synchronisé avec le cahier de textes)

"; echo "\n \n \n"; } else { echo "
Seuls les matières, les professeurs et les classes seront créées.

\n"; if(isset($_SESSION['cdt_envole'])) echo "
\n"; else echo "
\n"; echo "

\n"; } break; case "step1": if ($_POST['reinit']=='O') $_SESSION['reinit'] = true; else $_SESSION['reinit'] = false; if ($_POST['detail']=='O') $_SESSION['detail'] = true; else $_SESSION['detail'] = false; if(isset($_SESSION['cdt_envole'])) // variable de session "webcal" pour les utilisateurs du cartable en ligne uniquement if ($_POST['webcal']=='O') $_SESSION['webcal'] = true; else $_SESSION['webcal'] = false; if ($_SESSION['reinit']==true) echo "
Vous avez choisi de réinitialiser les emplois du temps.
\n"; $emp=$_SESSION['emp']; $ar_alternance_temp=array(); $ar_alternance=array(); $ar_type_alternance=array(); if (!$emp) { $xml_emp_sts = simplexml_load_file('../fichiers_joints/emp_sts_xml_file.xml'); echo "
\n

Choix des alternances


\n Veuillez choisir parmi les alternances trouvées,
\n celles correspondants aux cours hebdomadaires, ainsi que celles correspondants aux semaines A et B.
\n Se renseigner pour cela auprès de la personne ayant fourni les fichiers XML.

\n Seul le code H pour \"Hebdomadaire\" est sélectionné par défaut :
\n
\n"; foreach ($xml_emp_sts->xpath('//ALTERNANCE') as $ar_alternance_temp) { $s_code=(string)$ar_alternance_temp["CODE"]; //array_push($ar_type_alternance,(string)$ar_alternance_temp["CODE"]); $ar_alternance["$s_code"]["CODE"]=(string)$ar_alternance_temp["CODE"]; $ar_alternance["$s_code"]["LIBELLE_COURT"]=(string)$ar_alternance_temp->LIBELLE_COURT; $ar_alternance["$s_code"]["LIBELLE_LONG"]=(string)$ar_alternance_temp->LIBELLE_LONG; echo "\n"; } echo "
"; if ($ar_alternance["$s_code"]["LIBELLE_LONG"]) echo $ar_alternance["$s_code"]["LIBELLE_LONG"]; else echo $s_code; if ($s_code=="H") $checked="checked"; else $checked=""; echo " Hebdomadaire Semaine A Semaine B
\n"; echo "

Mettre à jour le planning des semaines A et B.

\n \n \n
\n"; } break; case "step2": echo "
\n"; if(isset($_SESSION['cdt_envole'])) { echo "

Import des classes

 

\n

Ci-dessous s'affichent les classes qui ne sont pas retrouvées dans l'annuaire.
\n Une correspondance peut vous être proposée, modifiez la si besoin et complétez les champs vides.

\n
"; $i=0; $xml_sts_emp = simplexml_load_file('../fichiers_joints/sts_emp_xml_file.xml'); foreach ($xml_sts_emp->xpath('//DIVISION') as $o_div) { $code_classe=strtolower(str_replace(" ","",trim(utf8_decode((string)$o_div["CODE"])))); if(search_classe($code_classe)) continue; $i++; if($i==1) echo "\n"; if (!preg_match("/[^0-9]+/",$code_classe) && search_classe("c".$code_classe)) echo "\n"; else echo "\n"; } if($i>0) echo "
Nom
dans le fichier
Nom
dans l'annuaire
$code_classe
$code_classe
\n"; else echo "------ Toutes les classes du fichier XML sont présentes dans l'annuaire ------
\n"; } $emp=$_SESSION['emp']; if (!$emp) { $xml_emp_sts = simplexml_load_file('../fichiers_joints/emp_sts_xml_file.xml'); foreach ($xml_emp_sts->xpath('//ALTERNANCE') as $ar_alternance_temp) { $s_code=(string)$ar_alternance_temp["CODE"]; if (isset($_POST[$s_code]) and (!empty($_POST[$s_code]))) { if ($_POST[$s_code]=="H") $_SESSION['H'] = $s_code ; elseif ($_POST[$s_code]=="A") $_SESSION['A'] = $s_code ; elseif ($_POST[$s_code]=="B") $_SESSION['B'] = $s_code ; else { echo "Erreur dans le traitement des semaines!!"; die; } } } if ($_POST['sem_ab']=='O' && (isset($_SESSION['A']) || isset($_SESSION['B']))) $_SESSION['sem_ab'] = true; else $_SESSION['sem_ab'] = false; echo "

 

Import des groupes

 

\n

Indiquez parmi les groupes ci-dessous, ceux qui correspondent à des demi-groupes par classe,
\n ils seront nommés groupe A et groupe B dans l'application au lieu du nom complet indiqué ci-dessous.

\n Décochez la case 'Incorporer' si vous ne voulez pas voir apparaître le groupe dans le cahier de textes.

\n
\n \n"; $i=0; foreach ($xml_emp_sts->xpath('//GROUPE') as $o_groupe) { $i++; $s_nom_groupe=str_replace(' ','_',trim(utf8_decode((string)$o_groupe["CODE"]))); $ar_groupe["$s_nom_groupe"]["CODE"]=$s_nom_groupe; $ar_groupe["$s_nom_groupe"]["LIBELLE_COURT"]=trim(utf8_decode((string)$o_groupe->LIBELLE_COURT)); $ar_groupe["$s_nom_groupe"]["LIBELLE_LONG"]=trim(utf8_decode((string)$o_groupe->LIBELLE_LONG)); echo "\n"; } echo "
NomType de groupeIncorporer
"; if ($ar_groupe["$s_nom_groupe"]["LIBELLE_LONG"]) echo $ar_groupe["$s_nom_groupe"]["LIBELLE_LONG"]; else echo $s_nom_groupe; if (preg_match('/(a|1)$/i',$s_nom_groupe)) $checkedA="checked"; else $checkedA=""; if (preg_match('/(b|2)$/i',$s_nom_groupe)) $checkedB="checked"; else $checkedB=""; if (empty($checkedA) and (empty($checkedB))) $checkedR="checked"; echo " Groupe A Groupe B Groupe réduit Autre
\n"; unset($i); } echo "

"; break; } ?>