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 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
|
#Date_du_jour("2007-06-11");
// Fonction pour afficher le calendrier
function showCalendar($periode,$mois,$annee) {
$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;
$indexe = 1;
// Affichage du mois et de l'année
$leCalendrier .= "\n\t<b>" . monthNumToName(getMonth($periode)) . " " . getYear($periode) . "</b>";
// Affichage des entêtes
$leCalendrier .= "
<ul id=\"libelle\">
\t<li>Monday</li>
\t<li>Tuesday</li>
\t<li>Wednesday</li>
\t<li>Thursday</li>
\t<li>Friday</li>
\t<li>Saturday</li>
\t<li>Sunday</li>
</ul>";
// Tant que l'on n'a pas affecté tous les jours du mois traité
while ($pas < $nb_jour) {
if ($indexe == 1) $leCalendrier .= "\n\t<ul class=\"ligne\">";
// 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=\"itemCurrentItem\"";
}
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 = "<a href=\"index.php?lasep=intranet&&page=a_holiday_detail&&mois=".$mois."&&annee=".$annee."&&jour=".Date("j", mktime(0, 0, 0, getMonth($periode), 1 + $pas, getYear($periode)))."\">" . Date("j", mktime(0, 0, 0, getMonth($periode), 1 + $pas, getYear($periode))) . "</a>";
}
else {
$class = "";
}
}
// Ajout de la case avec la date
global $date;
$j_cal=$pas+1;
if($j_cal<10){
$j_cal="0".$j_cal;
$date.$j_cal;
$dates=$date.$j_cal;
#echo $dates.'<br>';
}else{
$dates=$date.$j_cal;
#echo $dates.'<br>';
}
############################################################################################
$date=$_SESSION['availability_annee'].'-'.$_SESSION['availability_mois'].'-'.$dates;
if(!empty($_SESSION['availability_mois']) AND !empty($_SESSION['availability_annee'])){
#Si $dates est plus grand que START mais pas plus grand que END
$select_availability = 'SELECT * FROM holiday WHERE "'.$date.'" >= start AND end >= "'.$date.'"';
$query_availability = mysql_query($select_availability) or die('Erreur SQL : <br>'.$select_availability.'<br>'.mysql_error());
/*$nb_availability = mysql_num_rows($query_availability);
if ($nb_availability < 1) {
$nb_availability=0;
}
*/
while($result_availability=mysql_fetch_array($query_availability)){
$qui = ucfirst(strtok($result_availability['who'],"."));
$approuved = $result_availability['statut'];
$reason = $result_availability['reason'];
$start = $result_availability['start'];
if($approuved=="approved"){
$qui='<b><font color="green">'.$qui.'</font></b>';
}else if($approuved=="pending"){
$qui='<b><font color="orange">'.$qui.'</font></b>';
}else{
$qui='<b><font color="red">'.$qui.'</font></b>';
}
echo "\n\t\t<li$class><div style=\"background-color:#cccccc;\">$afficheJour</div><p>".$qui."</p></li>";
}
}
################################################################################################
$leCalendrier .= "\n\t\t<li$class><div style=\"background-color:#cccccc;\">$afficheJour</div><p>ICI</p></li>";
$pas++;
}
//
else {
// Ajout d'une case vide
$leCalendrier .= "\n\t\t<li> </li>";
}
if ($indexe == 7 && $pas < $nb_jour) { $leCalendrier .= "\n\t</ul>"; $indexe = 1;} else {$indexe++;}
}
// Ajustement du tableau
for ($i = $indexe; $i <= 7; $i++) {
$leCalendrier .= "\n\t\t<li> </li>";
}
$leCalendrier .= "\n\t</ul>\n";
// Retour de la chaine contenant le Calendrier
return $leCalendrier;
} |
Partager