	
		function ClearCalendars(){
			removeAllOptions(document.forms[0].mydateD);
			removeAllOptions(document.forms[0].mydateM);
			removeAllOptions(document.getElementById('mydateY'));
		}
		
		function removeAllOptions(selectbox)
		{
		var i;
		for(i=selectbox.options.length-1;i>=0;i--)
		{
		selectbox.remove(i);
		}
		}
		
		function initRollover(img1,img2,img3)
		{							
			document.write ('<map name="imageSwap">');
			document.write ('<area shape="rect" coords="0,0,137,85" href="#" onclick="imageSwap(1); return false;" id="maparea1" />');
			document.write ('<area shape="rect" coords="138,0,274,85" href="#" onclick="imageSwap(2); return false;" id="maparea2" />');
			document.write ('<area shape="rect" coords="275,0,411,85" href="#" onclick="imageSwap(3); return false;" id="maparea3" />');
			document.write ('</map>');
			
			imgroll_1 = new Image();
			imgroll_1.src = 'images/' + img1;
			imgroll_2 = new Image();
			imgroll_2.src = 'images/' + img2;
			imgroll_3 = new Image();
			imgroll_3.src = 'images/' + img3;
		}
		
		function imageSwap(imgNumber){
			switch (imgNumber)
				{
					case 1:
						imgSrc = imgroll_1.src;
						break;
					case 2:
						imgSrc = imgroll_2.src;
						break;
					case 3:
						imgSrc = imgroll_3.src;
						break;
				}
			document.getElementById('BigImage').src = imgSrc;			
		}
		
		function winPop(sLocation,sWidth,sHeight,sScrollbars){
			window.open(sLocation, '', 'toolbar=0,resizable=1,scrollbars=' + sScrollbars + ',left=2,top=2,width=' + sWidth + ',height=' + sHeight);
		}
		
		function initPromoRotator(PromoId){
			setTimeout("getNewPromo("+PromoId+");",5000);	
		}
		
		//variables used by Ajax functions
		var request;
		var CurrentPromoId;
		var PromoDelay = 15000; // set the period between promo atempts

		// function to create the xml request
		function createXmlHttpRequest() {
		  try {
			request = new XMLHttpRequest();
		  } catch (trymicrosoft) {
			try {
			  request = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (othermicrosoft) {
			  try {
				request = new ActiveXObject("Microsoft.XMLHTTP");
			  } catch (failed) {
				request = false;
			  }
			}
		  }
		
		  if (!request)
			alert("Error initializing XMLHttpRequest!");
		}
		
		// performs xml request
		function getNewPromo(PromoId) {
			if (!CurrentPromoId){
				CurrentPromoId = PromoId;
			}
			createXmlHttpRequest();
			var url = "promo_xml.htm@PromoId=" + escape(CurrentPromoId);
			request.open("GET", url, true);
			request.onreadystatechange = updatePromo;
			request.send(null);
		}
		
		//updates the content of the promo panel once the xml response is returned
		function updatePromo(){
			if (request.readyState == 4){
				if (request.status == 200){
					
					// first we fade out the promo details
					FadeOut();
					
					//get the id of the returned promo
					setTimeout("CurrentPromoId = swapPromo()",1000);
					
					//then we fade back in again (with a small delay)
					setTimeout("FadeIn()",1000);
												
					//set timer for next promo swap
					setTimeout("getNewPromo("+CurrentPromoId+");",PromoDelay);
					
				}else{
					//set timer for another attempt
					setTimeout("getNewPromo("+CurrentPromoId+");",PromoDelay);
				}
			}
		}
		
	function FadeOut(){
		opacity("PromoHeading", 100, 0, 1000);
		opacity("PromoText", 100, 0, 1000);
	}
	
	function FadeIn(){
		opacity("PromoHeading", 0, 100, 1000);
		opacity("PromoText", 0, 100, 1000);
	}
	
	function opacity(id, opacStart, opacEnd, millisec) {
		//speed for each frame
		var speed = Math.round(millisec / 100);
		var timer = 0;
	
		//determine the direction for the blending, if start and end are the same nothing happens
		if(opacStart > opacEnd) {
			for(i = opacStart; i >= opacEnd; i--) {
				setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
				timer++;
			}
		} else if(opacStart < opacEnd) {
			for(i = opacStart; i <= opacEnd; i++)
				{
				setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
				timer++;
			}
		}
	}
	
	//change the opacity for different browsers
	function changeOpac(opacity, id) {
		var object = document.getElementById(id).style;
		object.opacity = (opacity / 100);
		object.MozOpacity = (opacity / 100);
		object.KhtmlOpacity = (opacity / 100);
		object.filter = "alpha(opacity=" + opacity + ")";
	} 
	
	function swapPromo(){

		CurrentPromoId = (request.responseXML.getElementsByTagName('id')[0].firstChild.nodeValue);
		var PromoHeading = (request.responseXML.getElementsByTagName('heading')[0].firstChild.nodeValue);
		var PromoText = (request.responseXML.getElementsByTagName('content')[0].firstChild.nodeValue);
		var PromoLink = (request.responseXML.getElementsByTagName('url')[0].firstChild.nodeValue);
		document.getElementById("PromoHeading").innerHTML = PromoHeading;
		document.getElementById("PromoText").innerHTML = PromoText
		+' <a href="'+PromoLink+'" id=""PromoLink"">&gt; more</a>';
		return 	CurrentPromoId;
				
	}
	
	function initMenuRotator(){
		menu_1 = new Image();
		menu_1.src = "images/dinner_menu1.gif";
		menu_2 = new Image();
		menu_2.src = "images/dinner_menu2.gif";
		menu_3 = new Image();
		menu_3.src = "images/dinner_menu3.gif";
		setTimeout("replaceMenu()",5000);
	}
	
	function replaceMenu(){
		menuImages =  
		[ 
		 "images/dinner_menu1.gif",  
		 "images/dinner_menu2.gif",  
		 "images/dinner_menu3.gif"
		] 
		var menuImage = menuImages[Math.floor(Math.random()*menuImages.length)] ;
		doReplace(menuImage);
	}
	
	function doReplace(menuImage){
		document.getElementById('BigImage').src = menuImage;
		setTimeout("replaceMenu()",5000);
	}
