<!-- Begin JS de dotCMS
//  SET ARRAYS

function getJD(D) {
    
       var thetime=new Date(); 
       var y = parseFloat(thetime.getYear()); 
       // SUR FIREFOX la methode ".getYear" retourne le nombre d'Annee depuis 1900!!! Il faut modifier la valeur si elle est plus petite que 1000.
       if( y < 1000 ) y = y + 1900 ;
       var m = parseFloat(thetime.getMonth()+1);
       var day = parseFloat(D);
       var uh =  parseFloat(12);
       var um =  parseFloat(0);
       var us =  parseFloat(0);
       
       var extra = 100.0*y + m - 190002.5;
       var rjd = 367.0*y;
       rjd -= Math.floor(7.0*(y+Math.floor((m+9.0)/12.0))/4.0);
       rjd += Math.floor(275.0*m/9.0);
       rjd += day;
       rjd += (uh + (um + us/60.0)/60.)/24.0;
       rjd += 1721013.5;
       rjd -= 0.5*extra/Math.abs(extra);
       rjd += 0.5;
      
       return rjd;  
       
}

function getLangue( ) { 
    var start = document.cookie.indexOf( 'bnq_langue' + "=" );
    var len = start + 11;
    if ( ( !start ) && ( 'bnq_langue'!= document.cookie.substring( 0, 10 ) ) ){
        return 'fr';
    }
    if ( start == -1 ) return 'fr';
    var end = document.cookie.indexOf( ";", len );
    if ( end == -1 ) end = document.cookie.length;
    return unescape( document.cookie.substring( len, end ) );
}

if(getLangue() == 'fr') {
    var day_of_week = new Array('D','L','M','M','J','V','S');
    var month_of_year = new Array('Janvier','F&eacute;vrier','Mars','Avril','Mai','Juin','Juillet','Ao&ucirc;t','Septembre','Octobre','Novembre','D&eacute;cembre');
} else {
    var day_of_week = new Array('S','M','T','W','T','F','S');
    var month_of_year = new Array('January','February','March','April','May','June','July','August','September','October','November','December');
}

//  DECLARE AND INITIALIZE VARIABLES
var Calendar = new Date();

var year = Calendar.getYear();      // Returns year
if( year < 1000 ) year = year + 1900 ;
var month = Calendar.getMonth();    // Returns month (0-11)
var today = Calendar.getDate();    // Returns day (1-31)
var weekday = Calendar.getDay();    // Returns day (0-6)
var realMonth = month+1;
var urlTodayCal = "/activites/calendrier/index.html?showExpo=true&intervalRecherche=0&intervalRechercheSec=0";
var urlByDateCal = "/activites/calendrier/index.html?showExpo=true&intervalRecherche=6&intervalRechercheSec=6";
var urlMonthCal = "/activites/calendrier/index.html?showExpo=true&intervalRecherche=2&intervalRechercheSec=2";


var DAYS_OF_WEEK = 7;    // "constant" for number of days in a week
var DAYS_OF_MONTH = 31;    // "constant" for number of days in a month
var cal;    // Used for printing

Calendar.setDate(1);    // Start the calendar day at '1'

Calendar.setMonth(month);    // Start the calendar month at now

if (month==3 || month==5 || month==8 || month==10)  {
    DAYS_OF_MONTH=30
    }

if (month==1) {
    DAYS_OF_MONTH=28
        if (year % 4 == 0 && year % 100 != 0) {
            DAYS_OF_MONTH=29

        }
    }

/* VARIABLES FOR FORMATTING
NOTE: You can format the 'BORDER', 'BGCOLOR', 'CELLPADDING', 'BORDERCOLOR'
      tags to customize your caledanr's look. */

var TR_start = '<tr>';
var TR_end = '</tr>';
var highlight_start = '<td><table class=\"CalHighlight\"><tr><td>';
var highlight_end   = '</td></tr></table>';
var TD_start = '<td>';
var TD_end = '</td>';

/* BEGIN CODE FOR CALENDAR
NOTE: You can format the 'BORDER', 'BGCOLOR', 'CELLPADDING', 'BORDERCOLOR'
tags to customize your calendar's look.*/

cal =  '<table class=\"TableExterneCalendrier\"><tr><td>';
cal += '<table class=\"TableInterneCalendrier\">' + TR_start;
cal += '<td colspan="' + DAYS_OF_WEEK + '" class=\"JourSemaine\">';


cal += '<a href=\"' + urlMonthCal + '\" class="lemois">'+ month_of_year[month]  + '   ' + year + '</a>' + TD_end + TR_end;

cal += TR_start;

//   DO NOT EDIT BELOW THIS POINT  //

// LOOPS FOR EACH DAY OF WEEK
for(index=0; index < DAYS_OF_WEEK; index++){
    // BOLD TODAY'S DAY OF WEEK
    if(weekday == index) cal += TD_start + '<strong class="ladate">' + day_of_week[index] + '</strong>' + TD_end;
    // PRINTS DAY
    else cal += TD_start + '<span class="ladate">' + day_of_week[index] + '<span>'+ TD_end;
}

cal += TD_end + TR_end;
cal += TR_start;

// FILL IN BLANK GAPS UNTIL TODAY'S DAY
for(index=0; index < Calendar.getDay(); index++) cal += TD_start + '  ' + TD_end;

// LOOPS FOR EACH DAY IN CALENDAR
for(index=0; index < DAYS_OF_MONTH; index++) {
    if( Calendar.getDate() > index ) {
        // RETURNS THE NEXT DAY TO PRINT
        week_day =Calendar.getDay();

        // START NEW ROW FOR FIRST DAY OF WEEK
        if(week_day == 0) cal += TR_start;

        if(week_day != DAYS_OF_WEEK) {

            // SET VARIABLE INSIDE LOOP FOR INCREMENTING PURPOSES
            var day  = Calendar.getDate();
            var JD=getJD(day);


            // HIGHLIGHT TODAY'S DATE
            if( today==Calendar.getDate() ) cal += highlight_start + '<a class=lejour href=\"' + urlTodayCal + '\" class="lemois" >' + day+ '</a>' + highlight_end + TD_end;

                // PRINTS DAY
                
            else cal += TD_start + '<a class=lejour href=\"' + urlByDateCal + '&julianDateSpecifique=' + JD + '\" >' + day+ '</a>'+ TD_end;
        }

        // END ROW FOR LAST DAY OF WEEK
        if(week_day == DAYS_OF_WEEK) cal += TR_end;
    }

    // INCREMENTS UNTIL END OF THE MONTH
    Calendar.setDate(Calendar.getDate()+1);

}// end for loop

cal += '</td></tr></table></td></tr></table>';

//  PRINT CALENDAR
document.write(cal);

//  End -->


