function photo(filename, width, height) {
  window.open("../photo.php?photo="+filename, "photoWin", "width="+width+", height="+height);
}

function dater(n) {
 var strNumber = "";
 strNumber = (n < 10) ? "0"+n : ""+n+"";
 return(strNumber);
}

function changeJoursDu(numb,modif) {
 var f = document.forms[0];
 var mth = f.duMois.selectedIndex;
 var sel = f.duAnnee.selectedIndex;
 var yr = f.duAnnee.options[sel].text;
 if (numb != 1) {
  numDays = numDaysIn(mth,yr);
  f.duJour.options.length = numDays;
  for (i=27;i<numDays;i++) {
   f.duJour.options[i].text = i+1;
  }
 }
 day = f.duJour.selectedIndex+1;
}

function changeJoursAu(numb,modif) {
 var f = document.forms[0];
 var mth = f.auMois.selectedIndex;
 var sel = f.auAnnee.selectedIndex;
 var yr = f.auAnnee.options[sel].text;
 if (numb != 1) {
  numDays = numDaysIn(mth,yr);
  f.auJour.options.length = numDays;
  for (i=27;i<numDays;i++) {
   f.auJour.options[i].text = i+1;
  }
 }
 day = f.auJour.selectedIndex+1;
}

function numDaysIn(mth,yr) {
 if (mth==3 || mth==5 || mth==8 || mth==10) return 30;
 else if ((mth==1) && leapYear(yr)) return 29;
 else if (mth==1) return 28;
 else return 31;
}

function leapYear(yr) {
 if (((yr % 4 == 0) && yr % 100 != 0) || yr % 400 == 0) return true;
 else return false;
}

function arr() {
 this.length=arr.arguments.length;
 for (n=0;n<arr.arguments.length;n++) {
  this[n] = arr.arguments[n];
 }
}

function getWeekDay(mth,day,yr) {
 first_day = firstDayOfYear(yr);
 for (num=0;num<mth;num++) {
  first_day += numDaysIn(num,yr);
 }
 first_day += day-1;
 return first_day%7;
}

function firstDayOfYear(yr) {
 diff = yr - 401;
 return parseInt((1 + diff + (diff / 4) - (diff / 100) + (diff / 400)) % 7);
}

// fixes a Netscape 2 and 3 bug
function getFullYear(d) { // d is a date object
 yr = d.getYear();
 if (yr < 1000) yr+=1900;
 return yr;
}

