// Fonction pour afficher le calendrier
function showCalendar($periode) {
$leCalendrier = "";
// Tableau des valeurs possibles pour un numéro de jour dans la semaine
$tableau = Array("0", "1", "2", "3", "4", "5", "6", "0");
$nb_jour = Date("t", mktime(0, 0, 0, getMonth($periode), 1, getYear($periode)));
$pas = 0;
$mois=getMonth($periode);
$indexe = 1;
// Affichage du mois et de l'année
$leCalendrier .= "
" . monthNumToName(getMonth($periode)) . " " . getYear($periode) . " |
";
// Affichage des entêtes
//$leCalendrier .= "";
$leCalendrier .= "| L | M | M | J | V | S | D |
";
// Tant que l'on n'a pas affecté tous les jours du mois traité
while ($pas < $nb_jour) {
if ($indexe == 1) $leCalendrier .= "";//$leCalendrier .= "\n\t";
// Si le jour calendrier == jour de la semaine en cours
if (Date("w", mktime(0, 0, 0, getMonth($periode), 1 + $pas, getYear($periode))) == $tableau[$indexe]) {
// Si jour calendrier == aujourd'hui
$afficheJour = Date("j", mktime(0, 0, 0, getMonth($periode), 1 + $pas, getYear($periode)));
if (Date("Y-m-d", mktime(0, 0, 0, getMonth($periode), 1 + $pas, getYear($periode))) == Date("Y-m-d")) {
$class = " class=\"itemSelectedItem\"";
$afficheJour = "| " . Date("j", mktime(0, 0, 0, getMonth($periode), 1 + $pas, getYear($periode))) . " | ";
}
else {
// 1 est toujours vrai => on affiche un lien à chaque fois
// A vous de faire les tests nécessaire si vous gérer un agenda par exemple
if (1) {
$class = " class=\"itemExistingItem\"";
$afficheJour = "" . Date("j", mktime(0, 0, 0, getMonth($periode), 1 + $pas, getYear($periode))) . " | ";
}
else {
$class = "";
}
}
// Ajout de la case avec la date
$leCalendrier .= "$afficheJour";//"\n\t\t- $afficheJour
";
$pas++;
}
//
else {
// Ajout d'une case vide
$leCalendrier .= " | ";//"\n\t\t-
";
}
if ($indexe == 7 && $pas < $nb_jour) { $leCalendrier .= "
"; $indexe = 1;} else {$indexe++;}//"\n\t"; $indexe = 1;} else {$indexe++;}
}
// Ajustement du tableau
for ($i = $indexe; $i <= 7; $i++) {
$leCalendrier .= " | ";//"\n\t\t ";
}
$leCalendrier .= "
";//"\n\t\n";
// Retour de la chaine contenant le Calendrier
return $leCalendrier;
}
?>