//hold a reference to a window object will help to focus the different popup on resto.lu
var myWindow = '';

/*
map to the javascript open function
make aditional work focus the popup window and
assign the requested url if the popup already exist
*/
function myWindowOpen(url, windowname, windowparam)
{
	//check the if the window exist
	if(!myWindow.closed && myWindow.location)
	{	
	myWindow.location.href = url;			
	}
	//not there ok create a new one
	else
	{
	myWindow = window.open(url, windowname, windowparam);	
	}
myWindow.focus();//focus the window	
return false;
}


/*
Map to the javascript alert function
if the user click ok return true,
else return false
*/

function confirmDelete(msg) 
	{	
	return confirm(msg);
	}

/*
Check for empty fields in a form
	return false if a field in the list is empty and show a custom message
	else return true
	
ATTENTION
You must pass a list of member to this function the format is
this.nameOfField,'CustomErrorMsg',this.anotherField,'OtherCustomErrorMsg', ..., ...
Use this function in an OnSubmit Event
*/

function checkEmptyField()
	{
	var k, error, args;
	args = checkEmptyField.arguments;
	error = '';
		for (k = 0; k < args.length; k+=2)
		{
			if(args[k].value == '')
			{
			error = args[k+1];
			alert(error);
			break;
			}
		}	
	return  (error == ''); 
	}

function checkForCheckedBox(tabCheckBox)
	{
	var count = 0;	
		while ((count < tabCheckBox.length) && (!tabCheckBox[count].checked))
		{			
		count++;
		}
	return (count < tabCheckBox.length);		
	}

//Open or close a menu used when a menu have too much entry
function switchMenu(myEl)
{
	//check if the functionality is supported by the useragent	
	if(document.getElementById)
	{
	var el = document.getElementById(myEl);
	el.style.display = el.style.display != 'block' ? 'block' : 'none';
	}
}

//used on the homepage to filter the city by departement
function fetchinSelect(el)
{
var k = 0;																	
var selectedDep = el.options[el.selectedIndex].value;
var myarray = new Array();
var myOption = '';																
	if(Number(selectedDep))
	{
	myarray = svilles[selectedDep];
	}
	else//show all city
	{
	myarray = svilles['all'];																			
	}																																					
//create options object dynamiquely in the ville form
//remove all the option except the first 	
document.searchform.ville.options.length = 1;	
	for(k = 0; k < myarray.length; k++)
	{
	myOption = new Option(myarray[k],myarray[k],false,false);
	document.searchform.ville.options[document.searchform.ville.options.length] = myOption;																			
	}																																		
}

		
<!-- Begin
//set todays date
Now = new Date();
NowDay = Now.getDate();
NowMonth = Now.getMonth();
NowYear = Now.getYear();

if (NowYear < 2000) NowYear += 1900; //for Netscape

//function for returning how many days there are in a month including leap years
function DaysInMonth(WhichMonth, WhichYear)
{
  var DaysInMonth = 31;
  if (WhichMonth == "Apr" || WhichMonth == "Jun" || WhichMonth == "Sep" || WhichMonth == "Nov") DaysInMonth = 30;
  if (WhichMonth == "Feb" && (WhichYear/4) != Math.floor(WhichYear/4))	DaysInMonth = 28;
  if (WhichMonth == "Feb" && (WhichYear/4) == Math.floor(WhichYear/4))	DaysInMonth = 29;
  return DaysInMonth;
}

//function to change the available days in a months
function ChangeOptionDays(Which)
{
  DaysObject = eval("document.Form1." + Which + "Day");
  MonthObject = eval("document.Form1." + Which + "Month");
  YearObject = eval("document.Form1." + Which + "Year");

  Month = MonthObject[MonthObject.selectedIndex].text;
  Year = YearObject[YearObject.selectedIndex].text;

  DaysForThisSelection = DaysInMonth(Month, Year);
  CurrentDaysInSelection = DaysObject.length;
  if (CurrentDaysInSelection > DaysForThisSelection)
  {
    for (i=0; i<(CurrentDaysInSelection-DaysForThisSelection); i++)
    {
      DaysObject.options[DaysObject.options.length - 1] = null
    }
  }
  if (DaysForThisSelection > CurrentDaysInSelection)
  {
    for (i=0; i<(DaysForThisSelection-CurrentDaysInSelection); i++)
    {
      NewOption = new Option(DaysObject.options.length + 1);
      DaysObject.add(NewOption);
    }
  }
    if (DaysObject.selectedIndex < 0) DaysObject.selectedIndex == 0;
}

//function to set options to today
function SetToToday(Which)
{
  DaysObject = eval("document.Form1." + Which + "Day");
  MonthObject = eval("document.Form1." + Which + "Month");
  YearObject = eval("document.Form1." + Which + "Year");

  YearObject[0].selected = true;
  MonthObject[NowMonth].selected = true;

  ChangeOptionDays(Which);

  DaysObject[NowDay-1].selected = true;
}
//function to set options to today
function SetToTodaythree(Which)
{
  DaysObject = eval("document.Form1." + Which + "Day");
  MonthObject = eval("document.Form1." + Which + "Month");
  YearObject = eval("document.Form1." + Which + "Year");

  YearObject[0].selected = true;
  MonthObject[NowMonth+2].selected = true;

  ChangeOptionDays(Which);

  DaysObject[NowDay-1].selected = true;
}


//function to write option years plus x
function WriteYearOptions(YearsAhead)
{
  line = "";
  for (i=0; i<YearsAhead; i++)
  {
    line += "<OPTION>";
    line += NowYear + i;
  }
  return line;
}
//function to write option years minus x
function WriteBirthYearOptions(YearsAhead)
{
  line = "";
  for (i=0; i<YearsAhead; i++)
  {
    line += "<OPTION>";
    line += NowYear - i;
  }
  return line;
}
//  End -->
//changes departure month when arrival month is changed
function amadChange(inM, inD, outM, outY, outD)
{
	    outM.options.selectedIndex = inM.options.selectedIndex + 3;
		outD.options.selectedIndex = inD.options.selectedIndex;
}


