﻿// JScript File

//  Ces fonctions permettent de gérer le nombre de jours à inscrire dans la liste déroulante selon le mois sélectionné.
//  Par défaut, elle contient 31 jours.

// Obtient le ClientId du contrôle (dans un UserControl, on doit qualifier le champs à traiter, ex.:UcIdeesSorties1_selMoisDebut
function GetClientId(strid)
{
     var count=document.forms [ 0 ] . length ;
     var i = 0 ;
     var eleName;
     for (i = 0 ;  i < count ;  i++ )
     {
       eleName = document.forms [ 0 ] . elements [ i ] .id;
       pos=eleName.indexOf ( strid ) ;
       if(pos >= 0)  break;           
     }
    return eleName;
 }
 
// Donne le nombre de jour d'un mois
function daysInMonth(Month,Year) 
{
var dd = new Date(Year, Month, 0);
return dd.getDate();
}


// Ajuste le nombre de jours du mois dans la liste déroulante des jours.
function setDayDrop(dyear, dmonth, dday) 
{
var year = dyear;
var month = dmonth.options[dmonth.selectedIndex].value;
var days = (year == ' ' || month == ' ')
	? 31 : daysInMonth(month,year);
var i = 0;
var len = (dday.options.length - 1);
if(len < days)
   {
   for (i = (len+1); i <= days; i++)
    dday.options[dday.options.length] = new Option(i,i); 
   }
else
    {
    for (i = 31; i > days; i--)
        dday.remove(i);
    }
}

// Traitement du mois de la date de début
function setDayBegin() 
{
var vdate = new Date();
var year = vdate.getFullYear();
var uCtrlMois = GetClientId("selMoisDebut") || "_selMoisDebut";
var uCtrlJour = GetClientId("selJourDebut") || "_selJourDebut";
var month = document.getElementById(uCtrlMois);
var day = document.getElementById(uCtrlJour);
setDayDrop(year,month,day);
}

// Traitement du mois de la date de fin
function setDayEnd() 
{
var vdate = new Date();
var year = vdate.getFullYear();
var uCtrlMois = GetClientId("selMoisFin") || "_selMoisFin";
var uCtrlJour = GetClientId("selJourFin") || "_selJourFin";
var month = document.getElementById(uCtrlMois);
var day = document.getElementById(uCtrlJour);
setDayDrop(year,month,day);
}
