1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>Calendrier</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" media="screen" type="text/css" title="Design" href="elements/designCalendrier.css" />
</head>
<body>
<?php
// Si on ne rꤵp鳥 rien dans l'url, on prends la date du jour
if(!$_GET['m'] && !$_GET['y']) $timestamp = mktime(0, 0, 0, date('m'), 1, date('Y'));
// Sinon on rꤵp鳥 la date donnꥍ
else $timestamp = mktime(0, 0, 0, $_GET['m'], 1, $_GET['y']);
// === Si le mois correspond au mois actuel et l'annꥠaussi, on retient le jour actuel pour le griser plus tard (sinon le jour actuel ne se situe pas dans le mois)
if(date('m', $timestamp) == date('m') && date('Y', $timestamp) == date('Y')) $coloreNum = date('d');
$m = array("01" => "Janvier", "02" => "Février", "03" => "Mars", "04" => "Avril", "05" => "Mai", "06" => "Juin", "07" => "Juillet", "08" => "Août", "09" => "Septembre", "10" => "Octobre", "11" => "Novembre", "12" => "Décembre");
$j = array('Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi');
$numero_mois = date('m', $timestamp);
$annee = date('Y', $timestamp);
if($numero_mois == 12)
{
$annee_avant = $annee;
$annee_apres = $annee + 1;
$mois_avant = $numero_mois - 1;
$mois_apres = 01;
}
elseif($numero_mois == 01) {
$annee_avant = $annee - 1;
$annee_apres = $annee;
$mois_avant = 12;
$mois_apres = $numero_mois + 1;
}
else {
$annee_avant = $annee;
$annee_apres = $annee;
$mois_avant = $numero_mois - 1;
$mois_apres = $numero_mois + 1;
}
// 0 => Dimanche, 1 => Lundi, 2 = > Mardi...
$numero_jour1er = date('w', $timestamp);
// Changement du num곯 du jour car l'array commence 'indice 0
if ($numero_jour1er == 0) $numero_jour1er = 6; // Si c'est Dimanche, on le place en 6鮥 position (apr鳠samedi)
else $numero_jour1er--; // Sinon on mets lundi ࠰, Mardi ࠱, Mercredi ࠲...
?>
<table id="tableCalendrier">
<caption><?php echo '<a href="?m='.$mois_avant.'&y='.$annee_avant.'" title="Mois précedent"><<</a> '.$m[$numero_mois].' '.$annee.' <a href="?m='.$mois_apres.'&y='.$annee_apres.'" title="Mois suivant">>></a>'; ?></caption>
<tr><th>Lu</th><th>Ma</th><th>Me</th><th>Je</th><th>Ve</th><th>Sa</th><th>Di</th></tr>
<?php
// Ecriture de la 1鳥 ligne
echo '<tr>';
// Ecriture de colones vides tant que le mois ne dꮡrre pas
for($i = 0 ; $i < $numero_jour1er ; $i++) { echo '<td></td>'; }
for($i = 1 ; $i <= 7 - $numero_jour1er; $i++) {
echo '<td><div class="';
if(isset($coloreNum) && $coloreNum == $i) echo 'lienCalendrierJour">';
else echo 'lienCalendrier">';
echo'<a href="planningeneral.php?jour='.$i.' & mois='.$numero_mois.' & annee='.$annee.'" title="Voir le planning général de ce jour">'.$i.'</a></div></td>';
}
echo '</tr>';
$nbLignes = ceil((date('t', $timestamp) - ($i-1))/ 7); // Calcul du nombre de lignes ࡡfficher en fonction de la 1鳥 (surtout pour les mois a 31 jours)
for($ligne = 0 ; $ligne < $nbLignes ; $ligne++) {
echo '<tr>';
for($colone = 0 ; $colone < 7 ; $colone++) {
if($i <= date('t', $timestamp)) {
echo '<td><div class="';
if(isset($coloreNum) && $coloreNum == $i) echo 'lienCalendrierJour">';
else echo 'lienCalendrier">';
echo'<a href="planningeneral.php?jour='.$i.' & mois='.$numero_mois.' & annee='.$annee.'" title="Voir le planning général de ce jour">'.$i.'</a></div></td>';
}
else {
echo '<td></td>';
}
$i = $i +1;
}
echo '</tr>';
}
?>
</table>
</body>
</html> |
Partager