RolloverObjects=new Array();
selected = "";
selectedSub = "";
selectedBelow = "";

Rollover = function(name, img)
{
	RolloverObjects[name]=new Image();
	RolloverObjects[name].img_src = img;
	if (!Rollover.postLoad) RolloverObjects[name].src = img;
}
Rollover.postLoad = false;

Rollover.loadImages = function()
{
	var i;
	for(i in RolloverObjects)
	{
		r=RolloverObjects[i];
		r.src=r.img_src;
    }
}

Rollover.error = function(n)
{
	alert("Rollover - An Error has been detected\n"
	+ "----------------------------------\n"
	+ "You must define a JSFX.Rollover in your document\n"
	+ "JSFX.Rollover(\""+n+"\",\"your_on_img.gif\")\n"
	+ "(check the spelling of your Rollovers)");
}

getImg = function(n, d) 
{
	var img = d.images[n];
	if(!img && d.layers)  
		for(var i=0 ; !img && i<d.layers.length ; i++)
			img=JSFX.getImg(n,d.layers[i].document);
	return img;
}

findImg = function(n, d) 
{
	var img = getImg(n, d);

	if(!img)
	{
		alert("findImg - An Error has been detected\n"
			+ "----------------------------------\n"
			+ "You must define an image in your document\n"
			+ "<IMG SRC=\"your_image.ext\" NAME=\""+n+"\">\n"
			+ "(check the NAME= attribute of your images)");

		return(new Image());
	}
	return img;
}

swapImageOn = function(imgName)
{
	if(!RolloverObjects[imgName]) {
		Rollover.error(imgName);
		return;
	}

	var img = findImg(imgName, document);
	var length = img.src.length;
	var type = img.src.substring(length-6, length-4);
	var name = imgName.substring(0, imgName.length-2);

	if (type != "03") {
		if (selectedBelow!=imgName.toString()) {
			var img = findImg(imgName, document);
			img.src=RolloverObjects[name+"02"].img_src;
		} else {
    		var img = findImg(imgName, document);
			img.src=RolloverObjects[name+"05"].img_src;
		}		    
	}
}
swapImageOff = function(imgName)
{
	if(!RolloverObjects[imgName]) {
		Rollover.error(imgName);
		return;
	}

	var img = findImg(imgName, document);
	var length = img.src.length;
	var type = img.src.substring(length-6, length-4);
	var name = imgName.substring(0, imgName.length-2);

	if (type != "03") {
	    	if (selectedBelow!=imgName.toString()) {
    		var img = findImg(imgName, document);
			img.src=RolloverObjects[name+"01"].img_src;
		} else {
			var img = findImg(imgName, document);
			img.src=RolloverObjects[name+"04"].img_src;
		}		    
	}
}

swapImage = function(imgName)
{
	var img = findImg("pic", document);
	img.src=RolloverObjects[imgName].img_src;
}

selectButton = function(imgName, imgBelow)
{
	var img;
	var name;

	if ((selected != imgName) && (selectedSub != imgName))
	{
		if (selectedSub != "")
		{
			img = findImg(selectedSub, document);
			img.src=RolloverObjects[selectedSub].img_src;
		}
		if (selectedBelow != "")
		{
			img = findImg(selectedBelow, document);
			img.src=RolloverObjects[selectedBelow].img_src;
		}
		
		if (imgBelow != null)
		{		
			name = imgName.substring(0, imgName.length-2);
			img = findImg(imgName, document);
			img.src=RolloverObjects[name+"03"].img_src;
		
			name = imgBelow.substring(0, imgBelow.length-2);
			img = findImg(imgBelow, document);
			img.src=RolloverObjects[name+"04"].img_src;
			
			selectedSub = imgName;
			selectedBelow = imgBelow
		}
		else
		{
			if (selected != "")
			{
				img = findImg(selected, document);
				img.src=RolloverObjects[selected].img_src;
				selected = "";
			}
		
			if (imgName != "home")
			{
				name = imgName.substring(0, imgName.length-2);
				img = findImg(imgName, document);
				img.src=RolloverObjects[name+"03"].img_src;
				selected = imgName;
			}

			selectedSub = "";
			selectedBelow = "";
		}					
	}
}

submenu = function(event_id)
{
	document.getElementById('empty_sub').style.display="none";
	document.getElementById('about_sub').style.display="none";
	document.getElementById('cuisine_sub').style.display="none";
	document.getElementById('libations_sub').style.display="none";
	document.getElementById('recipes_sub').style.display="none";
	document.getElementById('private_events_sub').style.display="none";
	document.getElementById('contact_us_sub').style.display="none";

	if(event_id=="all") {
		document.getElementById('empty_sub').style.display="";
		document.getElementById('about_sub').style.display="";
		document.getElementById('cuisine_sub').style.display="";
		document.getElementById('libations_sub').style.display="";
		document.getElementById('recipes_sub').style.display="";
		document.getElementById('private_events_sub').style.display="";
		document.getElementById('contact_us_sub').style.display="";
	} else if(event_id=="empty") {
		document.getElementById('empty_sub').style.display="";
	} else if(event_id=="about") {
		document.getElementById('about_sub').style.display="";
	} else if(event_id=="cuisine") {
		document.getElementById('cuisine_sub').style.display="";
	} else if(event_id=="libations") {
		document.getElementById('libations_sub').style.display="";
	} else if(event_id=="recipes") {
		document.getElementById('recipes_sub').style.display="";
	} else if(event_id=="private_events") {
		document.getElementById('private_events_sub').style.display="";
	} else {
		document.getElementById('contact_us_sub').style.display="";
	}
}

changeUrl = function(url)
{
    var theiframe = document.getElementById('content');
    	theiframe.src = url;
}

function ImagePreloader(images,callback)
{
	this.callback = callback;

	this.nLoaded = 0;
	this.nProcessed = 0;
	this.aImages = new Array;

	this.nImages = images.length;

	for ( var i = 0; i < images.length; i++ ) 
		this.preload(images[i]);
}
ImagePreloader.prototype.preload = function(image)
{
	var oImage = new Image;
	this.aImages.push(oImage);
	
	oImage.onload = ImagePreloader.prototype.onload;
	oImage.onerror = ImagePreloader.prototype.onerror;
	oImage.onabort = ImagePreloader.prototype.onabort;
	
	oImage.oImagePreloader = this;
	oImage.bLoaded = false;
	oImage.source = image;
	
	oImage.src = image;
}
ImagePreloader.prototype.onComplete = function()
{
	this.nProcessed++;
	if ( this.nProcessed == this.nImages )
		this.callback(this.aImages);
}
ImagePreloader.prototype.onload = function()
{
	this.bLoaded = true;
	this.oImagePreloader.nLoaded++;
	this.oImagePreloader.onComplete();
}
ImagePreloader.prototype.onerror = function()
{
	this.bError = true;
	this.oImagePreloader.onComplete();
}
ImagePreloader.prototype.onabort = function()
{
	this.bAbort = true;
	this.oImagePreloader.onComplete();
}
function onPreloadHome()
{
	var oDiv = document.getElementById('homeDiv');
	var ac = '<img src="images/homePage1.jpg" border="0" width="650" height="135" />';
	ac += '<img src="images/homePage2.jpg" border="0" width="228" height="290" />';
	oDiv.innerHTML = ac;
}
function onPreloadGallery()
{
	var oDiv = document.getElementById('picDiv');

	var ac = '<img src="../galleryPics/about_gallery1.jpg" border="0" width="650" height="144" usemap="#gallery1" />';
	ac += '<img src="../galleryPics/about_gallery2.jpg" border="0" width="53" height="281" usemap="#gallery2" />';
	ac += '<img src="../galleryPics/about_galleryPic016.jpg" border="0" width="391" height="271" ';
	ac += 'name="pic" style="position:absolute;left:248;top:149;" />\n';

	oDiv.innerHTML = ac;
	oDiv = document.getElementById('picText1');
	ac = 'private dining room art:<br />special thanks to<br />the carl hammer gallery<br />';
	ac += 'and renowned artist,<br />martin mull';
	oDiv.innerHTML = ac;
	oDiv = document.getElementById('picText2');
	ac = 'dining room prints : <br />"Kepler" and "Oteiza"<br />by richard serra';
	oDiv.innerHTML = ac;
	oDiv = document.getElementById('picText3');
	ac = 'lounge art : <br />"abstract alice"<br />by gregory giesey';
	oDiv.innerHTML = ac;
	oDiv = document.getElementById('picText4');
	ac = '<table width="182" class="FGB size_12">';
	ac += '<tr><td align="right">photography:</td></tr>';
	ac += '<tr><td align="right">by Ryan Robinson</td></tr></table>';
	oDiv.innerHTML = ac;
}

function onPreloadInfo()
{
	var oDiv = document.getElementById('infoDiv');

	var ac = '<img src="images/topLogo.jpg" class="logo" name="logo" id="logo" ';
	ac += 'onClick="selectButton(\'mainNav_about_01\');submenu(\'about\');changeUrl(\'about.html\');" ';
	ac += 'width="200" height="145" border="0" style="cursor:hand" />\n';

	ac += '<img src="images/single_pixel.gif" height="114" width="123">';
  ac += '<object width="675" height="90">';
	ac += '<param name="movie" value="mkBanner.swf">';
	ac += '<embed src="images/mkBanner.swf" width="675" height="90">';
	ac += '</embed>';
	ac += '</object>';
	
	ac += '<img src="images/bkgrdAddress.jpg" width="800" height="30" class="address" />';

	oDiv.innerHTML = ac;
}

function jsAddSwaps(imgName) {
	return 'onMouseOver="swapImageOn(\'' + imgName + '\');" onMouseOut="swapImageOff(\'' + imgName + '\');" ';
}
function onPreload()
{
	var oDiv = document.getElementById('afterDiv');

	var ac = '<img src="images/mainNav_home_01.jpg" name="mainNav_home_01" class="main_one" width="150" height="30" border="0" ';
	ac += jsAddSwaps("mainNav_home_01");
	ac += 'onClick="selectButton(\'mainNav_home_01\'); ';
	ac += 'changeUrl(\'home.htm\')" />';

	ac += '<img src="images/mainNav_about_01.jpg" name="mainNav_about_01" class="main_two" width="150" height="30" border="0" ';
	ac += jsAddSwaps("mainNav_about_01");
	ac += 'onClick="selectButton(\'mainNav_about_01\'); ';
	ac += 'changeUrl(\'about.htm\')" />';

	ac += '<img src="images/mainNav_menu_01.jpg" name="mainNav_menu_01" class="main_three" width="150" height="30" border="0" ';
	ac += jsAddSwaps("mainNav_menu_01");
	ac += 'onClick="selectButton(\'mainNav_menu_01\'); ';
	ac += 'changeUrl(\'menu.htm\');" />';

	ac += '<img src="images/mainNav_wine_01.jpg" name="mainNav_wine_01" class="main_four" width="150" height="30" border="0" ';
	ac += jsAddSwaps("mainNav_wine_01");
	ac += 'onClick="selectButton(\'mainNav_wine_01\'); ';
	ac += 'changeUrl(\'wine.htm\');" /> ';
 
	ac += '<img src="images/mainNav_private_01.jpg" name="mainNav_private_01" class="main_five" width="150" height="30" border="0" ';
	ac += jsAddSwaps("mainNav_private_01");
	ac += 'onClick="selectButton(\'mainNav_private_01\'); ';
	ac += 'changeUrl(\'private.htm\');" /> ';

	ac += '<img src="images/mainNav_location_01.jpg" name="mainNav_location_01" class="main_six" width="150" height="30" border="0" ';
	ac += jsAddSwaps("mainNav_location_01");
	ac += 'onClick="selectButton(\'mainNav_location_01\'); ';
	ac += 'changeUrl(\'location.htm\');" /> ';

	ac += '<img src="images/mainNav_contact_01.jpg" name="mainNav_contact_01" class="main_seven" width="150" height="30" border="0" ';
	ac += jsAddSwaps("mainNav_contact_01");
	ac += 'onClick="selectButton(\'mainNav_contact_01\'); ';
        ac += 'changeUrl(\contact.htm\');" ';
	
	oDiv.innerHTML = ac;

	selectButton('mainNav_about_01');
}

function printPage(url) {
	var windowPage;
	windowPage = window.open(url, "", 'Width=800,Height=600, margin=0,scrollbars=yes,resizable=yes');
	windowPage.print();
}

function openPage(url) {
	var windowPage;
	windowPage = window.open(url, "", 'Width=800,Height=600, margin=0,scrollbars=yes,resizable=yes');
}

function openTable() {
	var windowPage;
	windowPage = window.open("http://www.opentable.com/single.aspx?rid=252&restref=252", "", 'Width=800,Height=350, margin=0,scrollbars=yes,resizable=yes');
}
