/* ---------------------------------------------------------------
 *
 *          Fonctions CALENDRIER D'ÉVENEMENTS
 *
 * -------------------------------------------------------------*/
var cal_col_bg_jour_semaine = '#f2e2ba';
var cal_col_bg_jour_fds = '#dac574';
var cal_col_bg_jour_today = '#caa000';
var cal_col_bg_jour_mouseover = "#dac574";
var cal_col_bg_somm_hover = "#f2e2ba";
var cal_col_affiche_auj = true;
var cal_col_affiche_auj_timer = 2000;

//var check_today = new Date.today().toString('yyyy-MM-dd');
var mois_cal_col = new Date.today().moveToFirstDayOfMonth();
var mois_nom = "";

var titres_jours_col = '<div class="cal_col_nom_jour">D</div><div class="cal_col_nom_jour">L</div><div class="cal_col_nom_jour">M</div><div class="cal_col_nom_jour">M</div><div class="cal_col_nom_jour">J</div><div class="cal_col_nom_jour">V</div><div class="cal_col_nom_jour">S</div>';


var ccol_d = new Array();
var ccol_c = new Array();
var ccol_t = new Array();
var cal_col_titres_sommaire = new Array();
var cal_col_mois_presents = new Array();

var cal_col_aujourdhui = true;

var cal_col_dispo = true;

var cal_col_dernier_select = "";
var cal_pres_reaffiche = false;

function CalColSelect(d) {
 if (!edition_active) {
  contenu_ev = "";
  
  if (ccol_d[d]) {
      // arrive du calendrier, puisque pas montré dans sommaire anyway..
     document.getElementById('contenu_cal_col').innerHTML = '<div id="cal_col_pres">'+
      '<h1 id="cal_col_pres_titre"></h1>'+
      '<div id="cal_col_pres_contenu"><div id="cal_col_pres_col1" class="cal_col_pres_col"></div><div id="cal_col_pres_col2" class="cal_col_pres_col"></div></div>'+
     '</div>';
     if (document.getElementById('cal_col_pres').style.display != 'block')
      Ouvrir('cal_col_pres');

     alterne = 0;

     if (cal_col_sommaire_type != 'tous') {
       for (n in ccol_d[d][cal_col_sommaire_type]) {
         if (document.getElementById('cal_col_pres_col2').offsetHeight >= document.getElementById('cal_col_pres_col1').offsetHeight)
             document.getElementById('cal_col_pres_col1').innerHTML += ccol_c[ccol_d[d][cal_col_sommaire_type][n]];
         else
             document.getElementById('cal_col_pres_col2').innerHTML += ccol_c[ccol_d[d][cal_col_sommaire_type][n]];
       }      
     }
     else
      for (t in ccol_d[d]) {
       for (n in ccol_d[d][t]) {
         if (document.getElementById('cal_col_pres_col2').offsetHeight >= document.getElementById('cal_col_pres_col1').offsetHeight)
             document.getElementById('cal_col_pres_col1').innerHTML += ccol_c[ccol_d[d][t][n]];
         else
             document.getElementById('cal_col_pres_col2').innerHTML += ccol_c[ccol_d[d][t][n]];
       }
     }
     cal_col_dernier_select = d;
     cal_pres_reaffiche = false;

     j = Date.parse(d);

     jnom = decodeURIComponent( escape( j.getDayName() ) ); // puisque UTF8.. :)
     //jnom = jnom.substr(0,1).toUpperCase() + jnom.substr(1); // première lettre majuscule...
     jnum = j.toString('d');
     mn = decodeURIComponent( escape( j.getMonthName() ) );
     an = j.toString('yyyy');

     jour_affiche = "Collectes du "+jnom+', '+jnum+' '+mn+' '+an;

     //section_active = "";

     document.getElementById('cal_col_pres_titre').innerHTML = jour_affiche;
     document.title = jour_affiche;
     


   }

 }
}

var dp_actif = "";

function CalColMouseOver(dp) {
  dp_actif = dp;
  document.getElementById('ccoli_'+dp).parentNode.style.backgroundColor = cal_col_bg_jour_mouseover;
  if (document.getElementById('ccoli_'+check_today) && dp != check_today) {
     document.getElementById('ccoli_'+check_today).style.display = "none";
     document.getElementById('ccoli_'+check_today).parentNode.style.zIndex = 1;
  }


  if (document.getElementById('ccoli_'+dp).style.display != "block") {
    document.getElementById('ccoli_'+dp).style.display = "block";
    document.getElementById('ccoli_'+dp).style.visibility = "visible";
    document.getElementById('ccoli_'+dp).parentNode.style.zIndex = 100;
    //if (!IEfader)
      fade_in('ccoli_'+dp,75,95);
  }
}

function CalColMouseOut(bg,dp) {
   dp_actif = "";
   setTimeout("CalColMouseOutDelai('"+bg+"','"+dp+"')",30);
}

function CalColMouseOutDelai(bg,dp) {
   if (dp != dp_actif && document.getElementById('ccoli_'+dp)) {
     document.getElementById('ccoli_'+dp).parentNode.style.backgroundColor = bg;
     document.getElementById('ccoli_'+dp).style.display = "none";
     document.getElementById('ccoli_'+dp).parentNode.style.zIndex = 1;
   }
}


function GetCalCol(mois_diff) {
 if (!edition_active) {
  if (cal_col_dispo) {
     mois_cal_col.addMonths(mois_diff);
     mois_check = mois_cal_col.toString('yyyy-MM');
     if (!cal_col_mois_presents[mois_check]) {
         cal_col_dispo = false;

          var html_doc = document.getElementsByTagName('head').item(0);
          var js = document.createElement('script');
          js.setAttribute('language', 'javascript');
          js.setAttribute('type', 'text/javascript');
          js.setAttribute('src', 'zen_cal_col.php?mois='+mois_check);
          html_doc.appendChild(js);

       cal_col_mois_presents[mois_check] = true;
     }
     else {
       AfficheCalCol();
     }
  }
 }
}

var cal_col_sommaire_tmp_section = "";

function FermerCalColSommaire() {
   document.getElementById('sommaire_cal_col').style.display = "none";
   if (document.getElementById('contenu_pages').innerHTML == '') {     
      getContenu(cal_col_sommaire_tmp_section,page_active);
   }

}

var cal_col_sommaire_type = 'tous';

function AfficheCalColSommaire(t) {
 cal_col_sommaire_type = t;
 if (!edition_active) {

   mois_check = mois_cal_col.toString('yyyy-MM');
   max_jours = mois_cal_col.getDaysInMonth();
   // comparer avec check_today pu avec today.tostring(jj)
   mois_nom = decodeURIComponent( escape( mois_cal_col.getMonthName() ) ); // puisque UTF8.. :)

   mois_nom = mois_nom.substr(0,1).toUpperCase() + mois_nom.substr(1); // première lettre majuscule...

   annee = mois_cal_col.toString('yyyy'); //annee = mois.getYear(); // donne 109 au lieu de 2009

   debut = 1;
   //if (!document.getElementById('cal_col_pres'))
   //   document.getElementById('contenu_pages').innerHTML = '';
   cal_col_sommaire_tmp_section = section_active;
   //section_active = "";

   if (document.getElementById('archives_articles'))
      document.getElementById('archives_articles').style.display = "none";
   
   if (document.getElementById('sommaire_cal_col').style.display != "block") Ouvrir('sommaire_cal_col');

   titre = mois_nom+' '+annee;
   document.title = 'Collectes, '+titre;
   //   '<img src="images/fermer.png" class="sommaire_cal_col_fermer" title="Fermer le sommaire" alt="[X]" onclick="FermerCalColSommaire();" />'+

   document.getElementById('sommaire_cal_col').innerHTML = '<h3>'+//titre+'</h1>';
      '<a title="Mois précédent" href="javascript:GetCalCol(-1);"><img alt="préc." style="margin : 0px 20px; width:28px;" src="images/Fleche_gauche.gif"/></a> '+titre+' <a title="Mois suivant" href="javascript:GetCalCol(1);"><img alt="suiv." style="margin : 0px 20px; width:28px;" src="images/Fleche_droite.gif"/></a></h3>';
  
   menu_types = '<b '+(t=="tous"?'class="sommaire_cal_col_types_select" ':'onclick="AfficheCalColSommaire(\'tous\')" onmouseover="this.style.backgroundColor=\''+cal_col_bg_somm_hover+'\';" onmouseout="this.style.backgroundColor=\'transparent\';" ')+'>Toutes les collectes</b>';
   for (i in liste_cal_col_types)
    menu_types += '<b '+(i==t?'class="sommaire_cal_col_types_select" ':'onclick="AfficheCalColSommaire('+i+')" onmouseover="this.style.backgroundColor=\''+cal_col_bg_somm_hover+'\';" onmouseout="this.style.backgroundColor=\'transparent\';"')+'>'+liste_cal_col_types[i]+'</b>';

   document.getElementById('sommaire_cal_col').innerHTML += '<div id="sommaire_cal_col_types">'+menu_types+'</div>';

   first_day_of_week = 0;
   if (mois_cal_col.is().sun()) first_day_of_week = 0;
   if (mois_cal_col.is().mon()) first_day_of_week = 1;
   if (mois_cal_col.is().tue()) first_day_of_week = 2;
   if (mois_cal_col.is().wed()) first_day_of_week = 3;
   if (mois_cal_col.is().thu()) first_day_of_week = 4;
   if (mois_cal_col.is().fri()) first_day_of_week = 5;
   if (mois_cal_col.is().sat()) first_day_of_week = 6;

   semaine = 1;
   som_cal_col = "";


   som_cal_col += '<div class="sommaire_cal_col_semaine"><h4>Semaine '+semaine+++'</h4>';
   style_admin = (est_admin?' style="cursor : pointer;" onmouseover="this.style.backgroundColor=\''+cal_col_bg_somm_hover+'\';" onmouseout="this.style.backgroundColor=\'transparent\';"':'');
   for (i=debut;i<=max_jours;i++) {
      sommaire = "";
      check_jour = mois_check+"-"+(i<10?'0':'')+i;
      
      if (cal_col_sommaire_type >= 0){
        if (ccol_d[check_jour] && ccol_d[check_jour][t]) {
          for (j in ccol_d[check_jour][t])
           sommaire += '<li class="cal_col_li_'+t+'">'+ccol_t[ccol_d[check_jour][t][j]]+'</li>';
      
          sommaire = '<ul'+style_admin+'>'+sommaire+'</ul>';
        }
      }
      else
        if (ccol_d[check_jour]) {
         for (k in ccol_d[check_jour])
          for (j in ccol_d[check_jour][k])
           sommaire += '<li class="cal_col_li_'+k+'">'+ccol_t[ccol_d[check_jour][k][j]]+'</li>';

          sommaire = '<ul'+style_admin+'>'+sommaire+'</ul>';
        }
      
      if (sommaire != "")
         som_cal_col += '<div style="clear:both;"'+(est_admin?'  onclick="CalColSelect(\''+check_jour+'\')"':'')+'>'+
                       '<h2'+(est_admin?' style="cursor : pointer;"':'')+'>'+i+'</h2>'+sommaire+'</div>';
      if ((i+first_day_of_week)%7==0) {
           som_cal_col += '</div>';
           if (semaine % 2 == 1) som_cal_col += '<div style="clear:both;"></div>';
           som_cal_col += '<div class="sommaire_cal_col_semaine"><h4>Semaine '+semaine+++'</h4>';
      }
   }

   document.getElementById('sommaire_cal_col').innerHTML += som_cal_col+'</div>';
 }
}

function AfficheCalCol() {
 if (document.getElementById('grille_cal_col')) {

  mois = mois_cal_col;
  max_mois = mois.getDaysInMonth();

  mois_nom = decodeURIComponent( escape( mois.getMonthName() ) ); // puisque UTF8.. :)

  mois_nom = mois_nom.substr(0,1).toUpperCase() + mois_nom.substr(1); // première lettre majuscule...


  mois_num = mois.getMonth();

  annee = mois.toString('yyyy'); //annee = mois.getYear(); // donne 109 au lieu de 2009

  first_day_of_week = 0;
  if (mois.is().sun()) first_day_of_week = 0;
  if (mois.is().mon()) first_day_of_week = 1;
  if (mois.is().tue()) first_day_of_week = 2;
  if (mois.is().wed()) first_day_of_week = 3;
  if (mois.is().thu()) first_day_of_week = 4;
  if (mois.is().fri()) first_day_of_week = 5;
  if (mois.is().sat()) first_day_of_week = 6;


  affichage = "";

  jours_affichage = new Date(mois); // nouvelle instance pour travailler quotidiennement sans modifier le mois courant...

  for (i = 0; i < first_day_of_week; i++)
     affichage += '<div class="cal_col_vide">&nbsp;</div>';

  for (i = 1; i <= max_mois; i++) {

      date_present = jours_affichage.toString('yyyy-MM-dd');

      bg_jour = cal_col_bg_jour_fds;                                     // FIN DE SEMAINE
      if (jours_affichage.isWeekday()) bg_jour = cal_col_bg_jour_semaine;    // JOUR DE SEMAINE
      if (date_present == check_today) bg_jour = cal_col_bg_jour_today;    // AUJOURD'HUI

      details = '';
      style_txt = '';
      types_bg = '';
      cal_col_info = '';
      if (ccol_d[date_present]) {

         if (est_admin || !cal_col_titres_sommaire[date_present]) {
            somm = "";
            for (t in ccol_d[date_present])
              for (j in ccol_d[date_present][t])
                 somm += '<li class="cal_col_li_'+t+'">'+ccol_t[ccol_d[date_present][t][j]]+'</li>';
            cal_col_titres_sommaire[date_present] = somm;
         }



         dp = "'"+date_present+"'";
         details = (est_admin?' cursor:pointer;':'')+'" onmouseover="CalColMouseOver(\''+date_present+'\')" onmouseout="CalColMouseOut(\''+bg_jour+'\',\''+date_present+'\');'+(est_admin?'" onclick="CalColSelect('+dp+');':'');
         style_txt = ' style="font-weight:bold; font-size:15px; top:9px;"';


         types_bg = "";
         for (t in ccol_d[date_present]) types_bg += '<p class="cal_col_type_bg_'+t+'"></p>';


         cal_col_info = '<div class="cal_col_jour_info" id="ccoli_'+date_present+'"><ul>' + cal_col_titres_sommaire[date_present] + '</ul></div>';
           
      }
      
      affichage += '<div class="cal_col_jour" style="background-color: '+bg_jour+';'+details+'">'+
                    '<div class="cal_col_jour_bg">'+types_bg+' </div>'+
                    cal_col_info+
                    '<p class="cal_col_jour_txt" '+style_txt+'>'+
                      i+
                   '</p></div>';
      jours_affichage.addDays(1);
  }

  for (i = first_day_of_week+max_mois; i%7!=0; i++)
    affichage += '<div class="cal_col_vide">&nbsp;</div>';

  document.getElementById('cal_col_mois').innerHTML = ''+mois_nom+' '+annee;
  //document.getElementById('cal_col_annee').innerHTML = ''+annee;
  document.getElementById('grille_cal_col').innerHTML = ''+titres_jours_col+affichage;

  //if (document.getElementById('sommaire_cal_col').style.display == "block")
   AfficheCalColSommaire(cal_col_sommaire_type);

  
  
  if (cal_pres_reaffiche)
     CalColSelect(cal_col_dernier_select);
  
  /*if (cal_col_aujourdhui) {
      //CalColSelect(Date.today().toString('yyyy-MM-dd'));
      cal_col_aujourdhui = false;


      // si on voulait juste faire afficher le petit pop-up dans le calendrier
      
      dp = check_today;
      if (cal_col_affiche_auj && document.getElementById('ccoli_'+dp)) {
         document.getElementById('ccoli_'+dp).innerHTML = "<h4>Aujourd'hui</h4>"+document.getElementById('ccoli_'+dp).innerHTML;
         document.getElementById('ccoli_'+dp).style.display = "block";
         document.getElementById('ccoli_'+dp).parentNode.style.zIndex = 100;
         //if (!IEfader)
            fade_in('ccoli_'+dp,35,97);
         setTimeout('fade_out(\'ccoli_'+dp+'\',95,0);',cal_col_affiche_auj_timer);
      }
      
  }
  */
 }
}
   /* ------------------  Fin des fonctions de calendrier d'évènements..  ------ */

