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();
}
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é.");
}
//debug_var();
$message_avertissement_navigateur = "";
////on regarde si les preferences pour le cdt ont change
if (getSettingValue("GepiCahierTexteVersion") == '2') {
//on regarde les preferences de l'utilisateur
if (getPref($_SESSION['login'],'cdt_version',"non renseigne") != "1" ) {
if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE 6' ) !== FALSE) {
//on reste sur le cdt1, le navigateur n'etant pas compatible avec le cdt2
$message_avertissement_navigateur = "Votre navigateur n'est pas compatible avec le cahier de texte 2, mais vous pouvez utiliser la version 1.";
} else {
$temp_header = "Location: ../cahier_texte_2/index.php";
$ajout_temp_header="";
$id_groupe = isset($_POST["id_groupe"]) ? $_POST["id_groupe"] :(isset($_GET["id_groupe"]) ? $_GET["id_groupe"] :NULL);
if ($id_groupe != NULL) {
$ajout_temp_header .= "?id_groupe=" . $id_groupe;
}
$id_ct = isset($_POST["id_ct"]) ? $_POST["id_ct"] :(isset($_GET["id_ct"]) ? $_GET["id_ct"] :NULL);
if ($id_ct != NULL) {
if($ajout_temp_header=="") {$ajout_temp_header.="?";}
else {$ajout_temp_header.="&";}
$ajout_temp_header .= "id_ct=" . $id_ct;
}
$type_notice = isset($_POST["type_notice"]) ? $_POST["type_notice"] :(isset($_GET["type_notice"]) ? $_GET["type_notice"] :NULL);
if ($type_notice != NULL) {
if($ajout_temp_header=="") {$ajout_temp_header.="?";}
else {$ajout_temp_header.="&";}
$ajout_temp_header .= "type_notice=" . $type_notice;
}
$temp_header.=$ajout_temp_header;
header($temp_header);
die();
}
}
}
//Ajout Eric traitement Visa
$visa_cdt_inter_modif_notices_visees=getSettingValue("visa_cdt_inter_modif_notices_visees");
include "../lib/mincals.inc";
// uid de pour ne pas refaire renvoyer plusieurs fois le même formulaire
// autoriser la validation de formulaire $uid_post==$_SESSION['uid_prime']
if(!isset($_SESSION['uid_prime'])) {
$_SESSION['uid_prime']='';
}
$uid_post = isset($_POST["uid_post"]) ? $_POST["uid_post"] :(isset($_GET["uid_post"]) ? $_GET["uid_post"] :NULL);
$uid = md5(uniqid(microtime(), 1));
if ($uid_post==$_SESSION['uid_prime']) {
$valide_form = 'yes';
}
else {
$valide_form = 'no';
}
$_SESSION['uid_prime'] = $uid;
// initialisation des variables
$id_ct = isset($_POST["id_ct"]) ? $_POST["id_ct"] :(isset($_GET["id_ct"]) ? $_GET["id_ct"] :NULL);
if ($id_ct == '') {$id_ct =NULL;}
$edit_devoir = isset($_POST["edit_devoir"]) ? $_POST["edit_devoir"] :(isset($_GET["edit_devoir"]) ? $_GET["edit_devoir"] :NULL);
if ($edit_devoir == '') {$edit_devoir =NULL;}
$id_groupe = isset($_POST["id_groupe"]) ? $_POST["id_groupe"] :(isset($_GET["id_groupe"]) ? $_GET["id_groupe"] :NULL);
$id_matiere = isset($_POST["id_matiere"]) ? $_POST["id_matiere"] : (isset($_GET["id_matiere"]) ? $_GET["id_matiere"] : -1);
$day = isset($_POST["day"]) ? $_POST["day"] :(isset($_GET["day"]) ? $_GET["day"] :date("d"));
$month = isset($_POST["month"]) ? $_POST["month"] :(isset($_GET["month"]) ? $_GET["month"] :date("m"));
$year = isset($_POST["year"]) ? $_POST["year"] :(isset($_GET["year"]) ? $_GET["year"] :date("Y"));
$heure_entry = isset($_POST["heure_entry"]) ? $_POST["heure_entry"] :(isset($_GET["heure_entry"]) ? $_GET[""] :NULL);
$ajout = isset($_POST["ajout"]) ? $_POST["ajout"] :(isset($_GET["ajout"]) ? $_GET["ajout"] :'');
$info = isset($_POST["info"]) ? $_POST["info"] :(isset($_GET["info"]) ? $_GET["info"] :NULL);
$doc_name = isset($_POST["doc_name"]) ? $_POST["doc_name"] :(isset($_GET["doc_name"]) ? $_GET["doc_name"] :NULL);
$doc_name_modif = isset($_POST["doc_name_modif"]) ? $_POST["doc_name_modif"] :(isset($_GET["doc_name_modif"]) ? $_GET["doc_name_modif"] :NULL);
$id_document = isset($_POST["id_document"]) ? $_POST["id_document"] :(isset($_GET["id_document"]) ? $_GET["id_document"] :NULL);
if (!isset($_SESSION['type_display_notices'])) {$_SESSION['type_display_notices'] = "all";}
if (isset($_GET["type_display_notices"])) {$_SESSION['type_display_notices'] = $_GET["type_display_notices"];}
if (empty($_FILES['doc_file'])) { $doc_file=''; } else { $doc_file=$_FILES['doc_file'];}
$heure_visibilite=isset($_POST['heure_visibilite']) ? $_POST['heure_visibilite'] : NULL;
$jour_visibilite=isset($_POST['jour_visibilite']) ? $_POST['jour_visibilite'] : NULL;
//debug_var();
// Initialisation de la valeur delai
$delai = getSettingValue("delai_devoirs");
//on met le groupe dans la session, pour naviguer entre absence, cahier de texte et autres
if ($id_groupe != "") {
$_SESSION['id_groupe_session'] = $id_groupe;
} else if (isset($_SESSION['id_groupe_session']) and $_SESSION['id_groupe_session'] != "") {
$id_groupe = $_SESSION['id_groupe_session'];
}
// $id_ct : identifiant de la notice
// $edit_devoir : si $edit_devoir est défini, la notice est de type "devoir à faire", sinon, elle est de type "compte-rendu"
// $id_groupe : identifiant du groupe
// $id_matiere : identifiant de la matière
// $day : le jour courant
// $month : le mois courant
// $year : l'année courante
// $heure_entry : heure de création d'une notice
// $ajout : prend la valeur "yes" ou bien n'est pas défini. $ajout='yes' si on ajoute une notice à une journée lorqu'une notice existe déjà
// $info : si $info est défini, la notice en cours de modification est la notice d'information générale
// $doc_name : tableau contenant les noms des documents joints
// $doc_name_modif : nouveau nom d'un document
// $id_document : tableau des identifiants des documents joints
if (is_numeric($id_groupe)) {
$current_group = get_group($id_groupe);
} else {
$current_group = false;
}
// Vérification : est-ce que l'utilisateur a le droit d'être ici ?
if (($current_group["id"] != "") ) {
if (!check_prof_groupe($_SESSION['login'],$current_group["id"])) {
header("Location: ../logout.php?auto=1");
die();
}
}
// Modification d'un enregistrement
// on récupère la date
if (isset($id_ct))
{
if (isset($edit_devoir)) {
$sql = "SELECT date_ct FROM ct_devoirs_entry WHERE id_ct='$id_ct'";
} else {
$sql = "SELECT date_ct FROM ct_entry WHERE id_ct='$id_ct'";
}
//echo "$sql
";
// On récupère la date dans la table
$date_ct = sql_query1($sql);
if ($date_ct != 0) {
// Il ne s'agit pas de la notice d'info générale : la date courante devient celle de la notice
$day = strftime("%d", $date_ct);
$month = strftime("%m", $date_ct);
$year = strftime("%Y", $date_ct);
} else {
// Il s'agit de la notice d'info générale, on ne change pas date courante
$day = isset($_POST["day"]) ? $_POST["day"] : (isset($_GET["day"]) ? $_GET["day"] : date("d"));
$month = isset($_POST["month"]) ? $_POST["month"] : (isset($_GET["month"]) ? $_GET["month"] : date("m"));
$year = isset($_POST["year"]) ? $_POST["year"] : (isset($_GET["year"]) ? $_GET["year"] : date("Y"));
}
if(getSettingValue("cdt_autoriser_modif_multiprof")!="yes") {
// On vérifie si l'utilisateur est proprio
if (isset($edit_devoir)) {
$sql = "SELECT date_ct FROM ct_devoirs_entry WHERE id_ct='$id_ct' AND id_login='".$_SESSION['login']."';";
}
else {
$sql = "SELECT date_ct FROM ct_entry WHERE id_ct='$id_ct' AND id_login='".$_SESSION['login']."';";
}
//echo "$sql
";
$test_proprio=mysqli_query($GLOBALS["mysqli"], $sql);
if(mysqli_num_rows($test_proprio)==0) {
unset($id_ct);
}
}
}
// Vérification
settype($month,"integer");
settype($day,"integer");
settype($year,"integer");
$minyear = strftime("%Y", getSettingValue("begin_bookings"));
$maxyear = strftime("%Y", getSettingValue("end_bookings"));
if ($day < 1) {$day = 1;}
if ($day > 31) {$day = 31;}
if ($month < 1) {$month = 1;}
if ($month > 12) {$month = 12;}
if ($year < $minyear) {$year = $minyear;}
if ($year > $maxyear) {$year = $maxyear;}
$sday=$day;
$smonth=$month;
$syear=$year;
# Make the date valid if day is more then number of days in month
while (!checkdate($month, $day, $year)) {$day--;}
$message_suppression = "Confirmation de suppression";
// $today : date courante
$today = mktime(0,0,0,$month,$day,$year);
$aujourdhui = mktime(0,0,0,date("m"),date("d"),date("Y"));
// On donne toutes les informations pour le jour de demain
if (isset($today)) {
$lendemain = $today + 86400;
} else {
$lendemain = $aujourdhui + 86400;
}
$jour_lendemain = date("d", $lendemain);
$mois_lendemain = date("m", $lendemain);
$annee_lendemain = date("Y", $lendemain);
// Suppression de plusieurs notices
if ((isset($_POST['action'])) and ($_POST['action'] == 'sup_serie') and $valide_form=='yes') {
check_token();
$error = 'no';
$sup_date = mktime(0,0,0,$_POST['sup_month'],$_POST['sup_day'],$_POST['sup_year']);
if(getSettingValue("cdt_autoriser_modif_multiprof")!="yes") {
$sql="SELECT id_ct FROM ct_entry WHERE (id_groupe='".$current_group["id"]."' and date_ct != '' and date_ct < '".$sup_date."' AND id_login='".$_SESSION['login']."')";
}
else {
$sql="SELECT id_ct FROM ct_entry WHERE (id_groupe='".$current_group["id"]."' and date_ct != '' and date_ct < '".$sup_date."')";
}
$appel_ct = sql_query($sql);
if (($appel_ct) and (sql_count($appel_ct)!=0)) {
for ($i=0; ($row = sql_row($appel_ct,$i)); $i++) {
$id_ctexte = $row[0];
$appel_doc = sql_query("select emplacement from ct_documents where id_ct='".$id_ctexte."'");
for ($j=0; ($row2 = sql_row($appel_doc,$j)); $j++) {
$empl = $row2[0];
if ($empl != -1) $del = @unlink($empl);
}
$del_doc = sql_query("delete from ct_documents where id_ct='".$id_ctexte."'");
if (!($del_doc)) $error = 'yes';
//Modif Eric ==> ne pas supprimer les visas et les notices visées
//$del_ct = sql_query("delete from ct_entry where id_ct='".$id_ctexte."'");
$del_ct = sql_query("delete from ct_entry where (id_ct='".$id_ctexte."' and vise != 'y')");
if (!($del_ct)) $error = 'yes';
}
if ($error == 'no') {
$msg = "Suppression réussie";
} else {
$msg = "Il y a eu un problème lors de la suppression.";
}
} else {
$msg = "Rien a supprimer.";
}
}
//
// Suppression d'une notice
//
if ((isset($_GET['action'])) and ($_GET['action'] == 'sup_entry') and $valide_form=='yes') {
check_token();
$suppression_possible="y";
if(getSettingValue("cdt_autoriser_modif_multiprof")!="yes") {
$sql="SELECT 1=1 FROM ct_entry WHERE (id_ct='".$_GET['id_ct_del']."' AND id_login='".$_SESSION['login']."')";
$res_test=mysqli_query($GLOBALS["mysqli"], $sql);
if(mysqli_num_rows($res_test)==0) {
$suppression_possible="n";
$msg="Vous n'êtes pas l'auteur de la notice que vous souhaitez supprimer.
";
}
}
if($suppression_possible=='y') {
$architecture= "/documents/cl_dev";
$sql = "select id from ct_documents where id_ct='".$_GET['id_ct_del']."'";
$res = sql_query($sql);
if (($res) and (sql_count($res)!=0)) {
$msg = "Impossible de supprimer cette notice : Vous devez d'abord supprimer les documents joints";
} else {
//modif Eric interdire la suppression de notice visée
$res = sql_query("delete from ct_entry where (id_ct = '".$_GET['id_ct_del']."' and vise != 'y')");
if ($res) $msg = "Suppression réussie";
}
}
}
//
// Suppression d'un devoir
//
if ((isset($_GET['action'])) and ($_GET['action'] == 'sup_devoirs') and $valide_form=='yes') {
check_token();
$suppression_possible="y";
if(getSettingValue("cdt_autoriser_modif_multiprof")!="yes") {
$sql="SELECT 1=1 FROM ct_devoirs_entry WHERE (id_ct='".$_GET['id_ct_del']."' AND id_login='".$_SESSION['login']."')";
$res_test=mysqli_query($GLOBALS["mysqli"], $sql);
if(mysqli_num_rows($res_test)==0) {
$suppression_possible="n";
$msg="Vous n'êtes pas l'auteur de la notice que vous souhaitez supprimer.
";
}
}
if($suppression_possible=='y') {
$architecture= "/documents/cl_dev";
$sql = "select id from ct_devoirs_documents where id_ct_devoir='".$_GET['id_ct_del']."' AND emplacement LIKE '%".$architecture."%'";
$res = sql_query($sql);
if (($res) and (sql_count($res)!=0)) {
$msg = "Impossible de supprimer cette notice : Vous devez d'abord supprimer les documents joints";
} else {
//modif Eric interdire la suppression de notice visée
$res = mysqli_query($GLOBALS["mysqli"], "delete from ct_devoirs_entry where (id_ct = '".$_GET['id_ct_del']."' and vise != 'y')");
if ($res) $msg = "Suppression réussie";
}
}
}
//
// Insertion ou modification d'une notice
//
if (isset($_POST['notes']) and $valide_form=='yes') {
check_token();
//debug_var();
// Cas des devoirs
if (isset($edit_devoir)) {
$msg="";
//==========================================================
$date_visibilite_mal_formatee="n";
if((isset($jour_visibilite))&&(isset($heure_visibilite))) {
//echo "$heure_visibilite
\n";
if(!preg_match("/^[0-9]{1,2}:[0-9]{1,2}$/",$heure_visibilite)) {
$heure_courante=strftime("%H:%M");
//echo "Heure de visibilité mal formatée : $heure_visibilite
";
//die();
if (isset($id_ct)) {
$msg.="Heure de visibilité mal formatée : $heure_visibilite.
L'heure de visibilité ne sera pas modifiée.
";
}
else {
$msg.="Heure de visibilité mal formatée : $heure_visibilite.
L'heure courante sera utilisée : $heure_courante
";
}
$heure_visibilite=$heure_courante;
$date_visibilite_mal_formatee="y";
}
$tab_tmp=explode(":",$heure_visibilite);
$heure_v=$tab_tmp[0];
$min_v=$tab_tmp[1];
//if(!preg_match("#^[0-9]{1,2}/[0-9]{1,2}/[0-9]{2,4}$#",$jour_visibilite)) {
if(!preg_match( '`^\d{1,2}/\d{1,2}/\d{4}$`', $jour_visibilite)) {
$jour_courant=strftime("%d/%m/%Y");
//echo "Le jour de visibilité est mal formaté : $jour_visibilite
";
//die();
if (isset($id_ct)) {
$msg.="Le jour de visibilité est mal formaté : $jour_visibilite.
Le jour de visibilité ne sera pas modifié.
";
}
else {
$msg.="Le jour de visibilité est mal formaté : $jour_visibilite.
Le jour courant sera utilisé : $jour_courant
";
}
//echo "alert('Le jour de visibilité est mal formaté : $jour_visibilite. Le jour courant sera utilisé : $jour_courant')";
$jour_visibilite=$jour_courant;
$date_visibilite_mal_formatee="y";
}
$tab_tmp=explode("/",$jour_visibilite);
$jour_v=$tab_tmp[0];
$mois_v=$tab_tmp[1];
$annee_v=$tab_tmp[2];
//$date_visibilite_eleve=mktime($heure_v,$min_v,0,$mois_v,$jour_v,$annee_v);
//echo "\$date_visibilite_eleve=mktime($heure_v,$min_v,0,$mois_v,$jour_v,$annee_v)=$date_visibilite_eleve
";
$date_visibilite_eleve="$annee_v-$mois_v-$jour_v $heure_v:$min_v";
//echo "\$date_visibilite_eleve=$date_visibilite_eleve
";
}
//==========================================================
// Il s'agit d'un devoir à faire : on récupère la date à l'aide de $_POST['display_date']
if (preg_match("#([0-9]{2})/([0-9]{2})/([0-9]{4})#", $_POST['display_date'])) {
$_year = mb_substr($_POST['display_date'],6,4);
$_month = mb_substr($_POST['display_date'],3,2);
$_day = mb_substr($_POST['display_date'],0,2);
$date_travail_a_faire=mktime(0,0,0,$_month,$_day,$_year);
} else {
$msg_error_date = "La date choisie pour le travail à faire n'est pas conforme";
}
//$contenu_cor = traitement_magic_quotes(corriger_caracteres($_POST['notes']),'');
$contenu_cor = $_POST['notes'];
if ($contenu_cor == '') {$contenu_cor="...";}
//=============================
// Corriger en chemins relatifs les chemins absolus débutant par getSettingValue('url_racine_gepi')...
// pas seulement: on peut avoir le nom DNS et l'IP dans le cas d'un gepi en DMZ ou plus généralement atteint en IP ou en nom DNS.
$url_absolues_gepi=getSettingValue("url_absolues_gepi");
if($url_absolues_gepi!="") {
$contenu_cor=cdt_changer_chemin_absolu_en_relatif($contenu_cor);
}
//=============================
$contenu_cor = traitement_magic_quotes(corriger_caracteres($_POST['notes']),'');
if (!isset($msg_error_date)) {
if (isset($id_ct)) {
// 20130727:
$contenu_precedent="";
$sql="SELECT * FROM ct_devoirs_entry WHERE id_ct='$id_ct';";
//echo "$sql
";
$req = mysqli_query($GLOBALS["mysqli"], $sql);
if(mysqli_num_rows($req)>0) {
$contenu_precedent=old_mysql_result($req, 0, 'contenu');
if($contenu_precedent!=$contenu_cor) {
$date_modif=strftime("%Y-%m-%d %H:%M:%S");
$sql="UPDATE ct_devoirs_faits SET etat='', commentaire='Le professeur a modifié la notice de travail à faire ($date_modif).', date_modif='".$date_modif."' WHERE id_ct='$id_ct';";
//echo "$sql
";
$update=mysqli_query($GLOBALS["mysqli"], $sql);
}
}
// Modification d'un devoir
$sql="UPDATE ct_devoirs_entry SET contenu = '$contenu_cor', id_login='".$_SESSION['login']."', date_ct='$date_travail_a_faire'";
if((isset($date_visibilite_eleve))&&($date_visibilite_mal_formatee=="n")) {$sql.=", date_visibilite_eleve='$date_visibilite_eleve'";}
$sql.=" WHERE id_ct='$id_ct';";
//echo "$sql
";
$req = mysqli_query($GLOBALS["mysqli"], $sql);
} else {
// On insère la notice dans ct_devoirs_entry
$sql="INSERT INTO ct_devoirs_entry SET id_ct='0', contenu = '$contenu_cor', id_login='".$_SESSION['login']."', id_groupe='".$id_groupe."', date_ct='$date_travail_a_faire'";
if(isset($date_visibilite_eleve)) {$sql.=", date_visibilite_eleve='$date_visibilite_eleve'";}
$sql.=";";
//echo "$sql
";
$req = mysqli_query($GLOBALS["mysqli"], $sql);
$id_ct = ((is_null($___mysqli_res = mysqli_insert_id($GLOBALS["mysqli"]))) ? false : $___mysqli_res);
}
if ($req) {
$msg.= "Enregistrement réussi (".strftime("%d/%m/%Y à %H:%M:%S").").";
$tag=isset($_POST['tag']) ? $_POST['tag'] : array();
$tag_deja=array();
$sql="SELECT * FROM ct_tag WHERE id_ct='".$id_ct."' AND type_ct='t';";
//echo "$sql
";
/*
$f=fopen("/tmp/gepi_debug_ct_dev.txt", "a+");
fwrite($f, $sql."\n");
fclose($f);
*/
$res_tag_existants=mysqli_query($GLOBALS["mysqli"], $sql);
if(mysqli_num_rows($res_tag_existants)>0) {
while($lig_tag=mysqli_fetch_object($res_tag_existants)) {
if(!in_array($lig_tag->id_tag, $tag)) {
$sql="DELETE FROM ct_tag WHERE id='".$lig_tag->id."';";
//echo "$sql
";
/*
$f=fopen("/tmp/gepi_debug_ct_dev.txt", "a+");
fwrite($f, $sql."\n");
fclose($f);
*/
$delete=mysqli_query($GLOBALS["mysqli"], $sql);
}
else {
$tag_deja[]=$lig_tag->id;
}
}
}
for($loop=0;$loop
";
$req = mysqli_query($GLOBALS["mysqli"], $sql);
} else {
$req = mysqli_query($GLOBALS["mysqli"], "INSERT INTO ct_entry SET id_ct='0', contenu = '$contenu_cor', heure_entry='$heure_entry', id_login='".$_SESSION['login']."', id_groupe='".$id_groupe."', date_ct='$temp'");
$id_ct = ((is_null($___mysqli_res = mysqli_insert_id($GLOBALS["mysqli"]))) ? false : $___mysqli_res);
// $today = $temp;
}
if ($req) {
$msg = "Enregistrement réussi (".strftime("%d/%m/%Y à %H:%M:%S").").";
$tag=isset($_POST['tag']) ? $_POST['tag'] : array();
$tag_deja=array();
$sql="SELECT * FROM ct_tag WHERE id_ct='".$id_ct."' AND type_ct='c';";
//echo "$sql
";
/*
$f=fopen("/tmp/gepi_debug_ct_dev.txt", "a+");
fwrite($f, $sql."\n");
fclose($f);
*/
$res_tag_existants=mysqli_query($GLOBALS["mysqli"], $sql);
if(mysqli_num_rows($res_tag_existants)>0) {
while($lig_tag=mysqli_fetch_object($res_tag_existants)) {
if(!in_array($lig_tag->id_tag, $tag)) {
$sql="DELETE FROM ct_tag WHERE id='".$lig_tag->id."';";
//echo "$sql
";
/*
$f=fopen("/tmp/gepi_debug_ct_dev.txt", "a+");
fwrite($f, $sql."\n");
fclose($f);
*/
$delete=mysqli_query($GLOBALS["mysqli"], $sql);
}
else {
$tag_deja[]=$lig_tag->id;
}
}
}
for($loop=0;$loop
";
// Suppression d'un document
if ((isset($_GET['action'])) and ($_GET['action'] == 'del') and $valide_form=='yes') {
check_token();
include "traite_doc.php";
}
// si aucune notice n'existe dans ct_entry et qu'il existe des notices dans ct_devoirs_entry
// on crée une notice "info générales" vide
$test_ct_vide = sql_count(sql_query("SELECT id_ct FROM ct_entry WHERE (id_groupe='" . $current_group["id"]."')"));
$test_ct_devoirs_vide = sql_count(sql_query("SELECT id_ct FROM ct_devoirs_entry WHERE (id_groupe='" . $current_group["id"] ."')"));
if (($test_ct_vide == 0) and ($test_ct_devoirs_vide != 0)) {$req = mysqli_query($GLOBALS["mysqli"], "INSERT INTO ct_entry SET id_ct='0', contenu = '', id_login='".$_SESSION['login']."', id_groupe='" . $current_group["id"]. "', date_ct=''");}
// Détermination de $id_ct
if($ajout=='oui') {
// Compte-rendu supplémentaire : on ne va pas chercher une notice existante
$test_cahier_texte = 0;
}
else {
$ajout_req="";
if(getSettingValue("cdt_autoriser_modif_multiprof")!="yes") {
$ajout_req=" AND id_login='".$_SESSION['login']."'";
}
if (isset($_GET['info']) or isset($_POST['info'])) {
$sql="SELECT heure_entry, contenu, id_ct,vise,visa FROM ct_entry WHERE (id_groupe='" . $current_group["id"] . "' AND date_ct=''";
$sql.=$ajout_req;
$sql.=")";
$infoyes = "&info=yes";
} elseif (isset($edit_devoir)) {
$sql="SELECT contenu, id_ct,vise FROM ct_devoirs_entry WHERE (id_groupe='" . $current_group["id"] . "' AND date_ct = '$today'";
$sql.=$ajout_req;
$sql.=")";
$infoyes = "";
} elseif (isset($id_ct)) {
$sql="SELECT heure_entry, contenu, id_ct,vise,visa FROM ct_entry WHERE (id_groupe='" . $current_group["id"] . "' AND date_ct = '$today' AND id_ct='$id_ct'";
$sql.=$ajout_req;
$sql.=")";
$infoyes = "";
} else {
$sql="SELECT heure_entry, contenu, id_ct,vise,visa FROM ct_entry WHERE (id_groupe='" . $current_group["id"] . "' AND date_ct='$today'";
$sql.=$ajout_req;
$sql.=") ORDER BY heure_entry ASC LIMIT 1";
$infoyes = "";
}
$appel_cahier_texte = mysqli_query($GLOBALS["mysqli"], $sql);
$test_cahier_texte = mysqli_num_rows($appel_cahier_texte);
}
if ($test_cahier_texte != 0) {
// Il y a une notice à modifier
if (!isset($edit_devoir))
$heure_entry = old_mysql_result($appel_cahier_texte, 0,'heure_entry');
// on initialise heure_entry si nouveau = heure actuelle si modification on prend celui de la base de donéne
$contenu = old_mysql_result($appel_cahier_texte, 0,'contenu');
$id_ct = old_mysql_result($appel_cahier_texte, 0,'id_ct');
} else {
// Il s'agit d'une nouvelle notice
$contenu = '';
}
// PB: Cela fait sauter le mini-calendrier...
$style_specifique[] = "lib/DHTMLcalendar/calendarstyle";
$javascript_specifique[] = "lib/DHTMLcalendar/calendar";
$javascript_specifique[] = "lib/DHTMLcalendar/lang/calendar-fr";
$javascript_specifique[] = "lib/DHTMLcalendar/calendar-setup";
//echo "id_ct=$id_ct
";
// On met le header en petit par défaut
$_SESSION['cacher_header'] = "y";
//**************** EN-TETE *****************
$titre_page = "Cahier de textes";
require_once("../lib/header.inc.php");
//**************** FIN EN-TETE *************
//debug_var();
//echo "id_ct=$id_ct
";
echo "";
//-----------------------------------------------------------------------------------
echo "
| \n";
echo $message_avertissement_navigateur;
echo " Nous sommes le : \n"; echo "Aucun cahier de textes n'est disponible."; echo " \n"; } $a = 1; foreach($groups as $group) { $sql="SELECT 1=1 FROM j_groupes_visibilite WHERE id_groupe='".$group['id']."' AND domaine='cahier_texte' AND visible='n';"; //echo "$sql \n"; $test_grp_visib=mysqli_query($GLOBALS["mysqli"], $sql); if(mysqli_num_rows($test_grp_visib)==0) { //echo ""; if ($group["id"] == $current_group["id"]) { echo " " . $group["description"] . " - ("; $str = null; foreach ($group["classes"]["classes"] as $classe) { $str .= $classe["classe"] . ", "; } $str = mb_substr($str, 0, -2); echo $str . ") \n"; } else { echo ""; echo ""; echo $group["name"] . " - ("; $str = null; foreach ($group["classes"]["classes"] as $classe) { $str .= $classe["classe"] . ", "; } $str = mb_substr($str, 0, -2); echo $str . ") \n"; } //echo "\n"; if ($a == 2) { echo "\n"; $a = 1; } else { $a = 2; } } } // Fin Affichage des différents groupes du professeur // ********************************************** // Fin première cellule de la première ligne du tableau echo " | \n";
// Deuxième cellule de la première ligne du tableau
echo "\n";
//echo "id_ct=$id_ct "; echo " Cahier de textes ".strftime("%A %d %B %Y", $today)." \n"; if ($delai > 0) { $cr_cours = "
Passer à la saisie des
Passer à la saisie des \n"; // Ajout des différentes notices $nb_total_notices = sql_query1("select count(id_ct) from ct_entry where contenu != '' and id_groupe = '" . $current_group["id"] ."'"); $nb_total_notices += sql_query1("select count(id_ct) from ct_devoirs_entry where contenu != '' and id_groupe = '" . $current_group["id"] ."'"); if ($nb_total_notices > 1) { $legend = "Actuellement : ".$nb_total_notices." notices. \n"; } elseif ($nb_total_notices == 1) { $legend = "Actuellement : 1 notice. \n"; } else { $legend = ""; } if ($nb_total_notices > 15) { echo "\n"; } else { $_SESSION['type_display_notices'] = "all"; echo $legend; } //echo "\n"; echo " | \n";
// Troisième cellule de la première ligne du tableau
echo "\n"; echo "\n"; //Affiche le calendrier if (isset($edit_devoir)) { minicals($year, $month, $day, $current_group["id"],'index.php?edit_devoir=yes&'); } else { minicals($year, $month, $day, $current_group["id"],'index.php?'); } } else { echo " - Sélectionnez un groupe.\n"; } // Fin deuxième ou troixième cellule de la première ligne du tableau echo " | \n"; echo "
L\'accès aux cahiers de textes est protégé.
'; } else { echo " AVERTISSEMENT : l'accès à l'interface de consultation publique du cahier de textes est entièrement libre et n'est soumise à aucune restriction.\n"; } echo "