security_check();
if ($resultat_session == "c") {
header("Location:utilisateurs/mon_compte.php?change_mdp=yes&retour=accueil#changemdp");
die();
} else if ($resultat_session == "0") {
header("Location: ../logout.php?auto=1");
die();
}
$sql="SELECT 1=1 FROM droits WHERE id='/mod_engagements/extraction_engagements.php';";
$test=mysqli_query($GLOBALS["mysqli"], $sql);
if(mysqli_num_rows($test)==0) {
$sql="INSERT INTO droits SET id='/mod_engagements/extraction_engagements.php',
administrateur='V',
professeur='F',
cpe='V',
scolarite='V',
eleve='F',
responsable='F',
secours='F',
autre='F',
description='Extraction des engagements',
statut='';";
$insert=mysqli_query($GLOBALS["mysqli"], $sql);
}
if (!checkAccess()) {
header("Location: ../logout.php?auto=2");
die();
}
$id_classe=isset($_POST['id_classe']) ? $_POST['id_classe'] : (isset($_GET['id_classe']) ? $_GET['id_classe'] : NULL);
$engagement_ele=isset($_POST['engagement_ele']) ? $_POST['engagement_ele'] : (isset($_GET['engagement_ele']) ? $_GET['engagement_ele'] : array());
$engagement_resp=isset($_POST['engagement_resp']) ? $_POST['engagement_resp'] : (isset($_GET['engagement_resp']) ? $_GET['engagement_resp'] : array());
$action=isset($_POST['action']) ? $_POST['action'] : NULL;
$tab_engagements=get_tab_engagements("");
if(count($tab_engagements['indice'])==0) {
header("Location: ../accueil.php?msg=Aucun type d engagement n est actuellement défini.");
die();
}
include("../ckeditor/ckeditor.php") ;
$nb_engagements=count($tab_engagements['indice']);
$msg="";
if(isset($action)) {
check_token();
$login_user=isset($_POST['login_user']) ? $_POST['login_user'] : array();
if(count($login_user)==0) {
$msg="ERREUR : Aucun utilisateur n'a été sélectionné. Choix des classes, statuts et engagements : Aucune classe avec engagement saisi n'a été trouvée.
";
}
elseif($action=="export_csv") {
$csv="LOGIN;NOM;PRENOM;CLASSE;STATUT;ENGAGEMENTS;\r\n";
for($loop=0;$loop$csv
";
$nom_fic="fichier_engagements_".strftime("%Y%m%d_%H%M%S").".csv";
send_file_download_headers('text/x-csv',$nom_fic);
echo echo_csv_encoded($csv);
die();
}
elseif($action=="message") {
$record = 'yes';
if (preg_match("#([0-9]{2})/([0-9]{2})/([0-9]{4})#", $_POST['display_date_debut'])) {
$anneed = mb_substr($_POST['display_date_debut'],6,4);
$moisd = mb_substr($_POST['display_date_debut'],3,2);
$jourd = mb_substr($_POST['display_date_debut'],0,2);
while ((!checkdate($moisd, $jourd, $anneed)) and ($jourd > 0)) $jourd--;
$date_debut=mktime(0,0,0,$moisd,$jourd,$anneed);
} else {
$msg.="ATTENTION : La date de début d'affichage n'est pas valide.
(message non enregitré)
";
$record = 'no';
}
if (preg_match("#([0-9]{2})/([0-9]{2})/([0-9]{4})#", $_POST['display_date_fin'])) {
$anneef = mb_substr($_POST['display_date_fin'],6,4);
$moisf = mb_substr($_POST['display_date_fin'],3,2);
$jourf = mb_substr($_POST['display_date_fin'],0,2);
while ((!checkdate($moisf, $jourf, $anneef)) and ($jourf > 0)) $jourf--;
$date_fin=mktime(23,59,0,$moisf,$jourf,$anneef);
} else {
$msg.="ATTENTION : La date de fin d'affichage n'est pas valide.
(message non enregitré)
";
$record = 'no';
}
if((!isset($_POST['message']))||($_POST['message']=="")) {
$msg="ERREUR : Le message est vide.
";
}
elseif ($record == 'yes') {
$date_decompte=$date_fin;
//$contenu_cor = traitement_magic_quotes(corriger_caracteres($_POST['message']));
$contenu_cor = $_POST['message'];
$pos_crsf_alea=strpos($contenu_cor,"_CSRF_ALEA_");
if($pos_crsf_alea!==false) {
$contenu_cor=preg_replace("/_CSRF_ALEA_/","",$contenu_cor);
$msg.="Contenu interdit.
";
$record = 'no';
}
if ($record == 'yes') {
/*
function ajout_bouton_supprimer_message($contenu_cor,$id_message) {
$contenu_cor='
'.$contenu_cor;
$r_sql="UPDATE messages SET texte='".$contenu_cor."' WHERE id='".$id_message."'";
return mysqli_query($GLOBALS["mysqli"], $r_sql)?true:false;
}
function update_message($contenu_cor,$date_debut,$date_fin,$date_decompte,$statuts_destinataires,$login_destinataire) {
$r_sql = "UPDATE messages
SET texte = '".$contenu_cor."',
date_debut = '".$date_debut."',
date_fin = '".$date_fin."',
date_decompte = '".$date_decompte."',
auteur='".$_SESSION['login']."',
statuts_destinataires = '".$statuts_destinataires."',
login_destinataire='".$login_destinataire."'
WHERE id ='".$_POST['id_mess']."'";
//", matiere_destinataire='".$matiere_destinataire."'";
return mysqli_query($GLOBALS["mysqli"], $r_sql)?true:false;
}
function set_message($contenu_cor,$date_debut,$date_fin,$date_decompte,$statuts_destinataires,$login_destinataire) {
$r_sql = "INSERT INTO messages
SET texte = '".$contenu_cor."',
date_debut = '".$date_debut."',
date_fin = '".$date_fin."',
date_decompte = '".$date_decompte."',
auteur='".$_SESSION['login']."',
statuts_destinataires = '".$statuts_destinataires."',
login_destinataire='".$login_destinataire."'";
//$r_sql.=", matiere_destinataire='".$matiere_destinataire."'";
$retour=mysqli_query($GLOBALS["mysqli"], $r_sql)?true:false;
if ($retour)
{
$id_message=((is_null($___mysqli_res = mysqli_insert_id($GLOBALS["mysqli"]))) ? false : $___mysqli_res);
if (isset($_POST['suppression_possible']) && $_POST['suppression_possible']=="oui" && $statuts_destinataires=="_")
$retour=ajout_bouton_supprimer_message($contenu_cor,$id_message);
}
return $retour;
}
*/
$t_login_destinataires=$login_user;
if (count($t_login_destinataires)>1) {$statuts_destinataires="_";}
foreach($t_login_destinataires as $login_destinataire) {
$erreur=!set_message($contenu_cor,$date_debut,$date_fin,$date_decompte,$statuts_destinataires,$login_destinataire) && $erreur;
}
if (!$erreur) {
$msg.="Le message a été enregistré.";
} else {
$msg.="Erreur lors de l'enregistrement du message :
".mysqli_error($GLOBALS["mysqli"]);
}
}
}
}
else {
$msg="Mode non prévu.
";
}
}
$style_specifique[] = "lib/DHTMLcalendar/calendarstyle";
$javascript_specifique[] = "lib/DHTMLcalendar/calendar";
$javascript_specifique[] = "lib/DHTMLcalendar/lang/calendar-fr";
$javascript_specifique[] = "lib/DHTMLcalendar/calendar-setup";
$javascript_specifique[] = "lib/tablekit";
$utilisation_tablekit="ok";
// ===================== entete Gepi ======================================//
$titre_page = "Extraction engagements";
require_once("../lib/header.inc.php");
// ===================== fin entete =======================================//
//debug_var();
echo "\n";
echo "
";
$call_classes=mysqli_query($GLOBALS["mysqli"], $sql);
$nb_classes=mysqli_num_rows($call_classes);
if($nb_classes==0){
echo "";
print_r($tab_engagements);
echo "
*/
require("../lib/footer.inc.php");
die();
}
echo " | Extraire les engagements pour d'autres classes
"; print_r($tab_engagements); echo ""; */ require("../lib/footer.inc.php"); ?>