var Mon3 = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"];
function LengthOfMonth(Y, M) {
// M=1..12
// OK in NS4? Mac?
with (new Date(Y,M,1,12)) {
setDate(0);
return getDate()
}
}
// Selector control :
var D_Opt = new Array() // 29..31
function MonLen(Yr, Mo, Dy) {
var Dol, K, DiM, NsI;
var selectedDate=new Date();
var today=new Date();
selectedDate.setFullYear(Yr.value,Mo.value‐1,Dy.value);
today.setFullYear(today.getFullYear(),today.getMonth(),today.getDate());
if (selectedDate<today){
var NowThis, YearSpan = 3, BaseYear = (NowThis = new Date()).getFullYear();
with (document.forms.portalSearchForm) InitYMDselector(yearEB, monthEB, dayEB, YearSpan,
BaseYear, Now);
return;
}
DiM = LengthOfMonth(+Yr.options[Yr.selectedIndex].text,Mo.selectedIndex+1)
Dol = Dy.options.length
if ( (NsI = Dy.selectedIndex) >= DiM )
NsI = DiM‐1
for (K=Dol ; K >DiM ; K‐‐){
D_Opt[K] = Dy.options[K‐1];
Dy.options[K‐1] = null
}
for (K=Dol+1 ; K<=DiM ; K++)
Dy.options[K‐1] = D_Opt[K]
Dy.selectedIndex = NsI
}
// Initialiser :
function InitYMDselector(Yr, Mo, Dy, Anni, Base, SetObj) {
var J
if (!Base) Base = new Date().getFullYear()
for (J=0; J<Anni; J++) Yr.options[J] = new Option(Base+J,Base+J)
for (J=0; J<12 ; J++) Mo.options[J] = new Option(Mon3[J],Mon3[J])
for (J=0; J<31 ; J++) Dy.options[J] = new Option(J+1,J+1)
if (SetObj) with (SetObj) {
Yr.selectedIndex = getFullYear()‐Base
Mo.selectedIndex = getMonth()
Dy.selectedIndex = getDate()‐1
}
else Yr.selectedIndex = Mo.selectedIndex = Dy.selectedIndex = 0
MonLen(Yr, Mo, Dy)
}
// Initialising ( Argument Now (optional) must be in BaseYear+YearSpan‐1 ):
//We only init if the selected date is < than today
var selectedDateA=new Date();
var todayA=new Date();
selectedDateA.setFullYear(document.forms.portalSearchForm.yearEB.value,document.forms.portalSear
chForm.monthEB.value‐1,document.forms.portalSearchForm.dayEB.value);
todayA.setFullYear(todayA.getFullYear(),todayA.getMonth(),todayA.getDate());
if (selectedDateA<todayA){
var Now, YearSpan = 3, BaseYear = (Now = new Date()).getFullYear();
with (document.forms.portalSearchForm) InitYMDselector(yearEB, monthEB, dayEB, YearSpan,
BaseYear, Now);
}
