var str_cellule = "";

function calendrier(mois, an) {
    var str_calendar = "";
    nom_mois = new Array("Janvier", "F&eacute;vrier", "Mars", "Avril", "Mai", "Juin", "Juillet",
        "Ao&ucirc;t", "Septembre", "Octobre", "Novembre", "D&eacute;cembre");
    jour = new Array("Lu", "Ma", "Me", "Je", "Ve", "Sa", "Di");

    var police_entete = "Verdana,Arial"; /* police entête de calendrier  */
    var taille_pol_entete = 3; /* taille de police 1-7 entête de calendrier  */
    var couleur_pol_entete = "BLACK"; /* couleur de police entête de calendrier  */
    var arrplan_entete = "#FFFFFF"; /* couleur d'arrière plan entête de calendrier  */
    var police_jours = "Verdana,Arial"; /* police affichage des jours  */
    var taille_pol_jours = 3; /* taille de police 1-7 affichage des jours  */
    var coul_pol_jours = "#000000"; /* couleur de police affichage des jours  */
    var arrplan_jours = "#FFFFFF"; /* couleur d'arrière plan affichage des jours  */
    var couleur_dim = "red"; /* couleur de police pour dimanches  */
    var couleur_cejour = "#FFFF00"; /* couleur d'arrière plan pour aujourd'hui  */

    var maintenant = new Date();
    var mois = mois; // maintenant.getMonth();
    var cette_annee = an; // maintenant.getYear();
    /*if (mois != 11) {
        mois = mois + 1; // maintenant.getMonth() + 1;
    } else {
        mois = 1;
        cette_annee = cette_annee + 1; // maintenant.getYear() + 1;
    }*/
    if (mois == "0") {
        mois = 12; // - mois;
        cette_annee = cette_annee - 1; // maintenant.getYear() + 1;
	an = cette_annee;
    }
    // alert(mois + " " + cette_annee);
    if (cette_annee < 999) cette_annee += 1900;
    var ce_jour = maintenant.getDate();
    var temps = new Date(an, mois - 1, 1);
    var Start = temps.getDay();
    if (Start > 0) Start--;
    else Start = 6;
    var Stop = 31;
    if (mois == 4 || mois == 6 || mois == 9 || mois == 11) --Stop;
    if (mois == 2) {
        Stop = Stop - 3;
        if (an % 4 == 0) Stop++;
        if (an % 100 == 0) Stop--;
        if (an % 400 == 0) Stop++;
    }
    str_calendar += '<table class="calendrier" cellpadding="1" cellspacing="1" width="100%">';
    var entete_mois = nom_mois[mois - 1] + " " + an;
    str_calendar += inscrit_entete(entete_mois, arrplan_entete, couleur_pol_entete, taille_pol_entete, police_entete, mois, an);
    var nombre_jours = 1;
    for (var i = 0; i <= 5; i++) {
        str_calendar += "<tr>";
        for (var j = 0; j <= 5; j++) {
            if ((i == 0) && (j < Start))
                str_calendar += inscrit_cellule("&#160;", arrplan_jours, coul_pol_jours, taille_pol_jours, police_jours, mois, an);
            else {
                if (nombre_jours > Stop)
                    str_calendar += inscrit_cellule("&#160;", arrplan_jours, coul_pol_jours, taille_pol_jours, police_jours, mois, an);
                else {
                    if (an == cette_annee && nombre_jours == ce_jour)
                        str_calendar += inscrit_cellule(nombre_jours, couleur_cejour, coul_pol_jours, taille_pol_jours, police_jours, mois, an);
                    else
                        str_calendar += inscrit_cellule(nombre_jours, arrplan_jours, coul_pol_jours, taille_pol_jours, police_jours, mois, an);
                    nombre_jours++;
                }
            }
        }
        if (nombre_jours > Stop)
            str_calendar += inscrit_cellule("&#160;", arrplan_jours, couleur_dim, taille_pol_jours, police_jours, mois, an);
        else {
            if (an == cette_annee && nombre_jours == ce_jour)
                str_calendar += inscrit_cellule(nombre_jours, couleur_cejour, couleur_dim, taille_pol_jours, police_jours, mois, an);
            else
                str_calendar += inscrit_cellule(nombre_jours, arrplan_jours, couleur_dim, taille_pol_jours, police_jours, mois, an);
            nombre_jours++;
        }
        str_calendar += "</tr>";
    }
    str_calendar += "</table></div>";
    return str_calendar;
}

function inscrit_entete(titre_mois, couleurAP, couleurpolice, taillepolice, police, mois, an) {
    var str_entete = ""
    str_entete += "<tr>";
    str_entete += '<td align="center" colspan="7" valign="middle" bgcolor="' + couleurAP + '">';
    str_entete += '<font size="' + taillepolice + '" color="' + couleurpolice + '" face="' + police + '"><b>';
    str_entete += titre_mois;
    str_entete += "</b></font></td></tr>";
    str_entete += "<tr>";
    for (var i = 0; i <= 6; i++)
        str_entete += inscrit_cellule(jour[i], couleurAP, couleurpolice, taillepolice, police, mois, an);
    str_entete += "</tr>";
    return str_entete;
}

function inscrit_cellule(contenu, couleurAP, couleurpolice, taillepolice, police, mois, an) {
    var str_cell = "";
    str_cell += '<td class="jour" align="center" valign="middle" bgcolor="' + couleurAP + '" td_date="' + format_chiffre(contenu) + '-' + format_chiffre(mois) + '-' + an + '">';
    str_cell += '<font size="' + taillepolice + '" color="' + couleurpolice + '" face="' + police + '"><b>';
    str_cell += contenu;
    str_cell += "</b></font></td>";
    return str_cell;
}

function format_chiffre(nombre) {
    var zero = "";
    if (nombre < 10) {
        zero = "0";
    }
    return zero + nombre;
}
