// DeanosBarbecue.com
var CurrentContent = '';

function ShowContent(NewContent)
{
	 document.getElementById(CurrentContent).style.visibility='hidden';
	 document.getElementById(CurrentContent).style.display='none';
	 document.getElementById(NewContent).style.visibility='visible';
	 document.getElementById(NewContent).style.display='block';
	 CurrentContent = NewContent;
   ResetBlocks();
}

function Initialize()
{
   CurrentContent = 'currentevents';
   BannerWidth = document.getElementById('bannertext').style.offsetWidth;
   window.defaultStatus = 'DeanosBarbecue.com';
   ResetBlocks();
   ScrollBanner();
}

function menuItem(parent, attributes, text, depth, state) {
// constructor function to create a menu entry (parent or child)
	this.parent = parent; // is this item a parent?
	this.attributes = attributes; //attributes for the area tag
	this.text = text; // text for link (may include HTML)
	this.depth = depth; // nested depth
	this.state = state; // display or not?
}

function makeMenu() {
// create items of menu
	menu = new makeArray(18) // create global object

	// create items in menu
	menu[0] = new menuItem(false, 'ONCLICK="SelectMenuItem(this, 0);ShowContent(\'currentevents\');" HREF="#"', 'Home', 0, true);
	menu[1] = new menuItem(true, 'ID="menutoggle" HREF="javascript:toggle(1)"', 'Menu', 0, true)
	menu[2] = new menuItem(false, 'ONCLICK="SelectMenuItem(this, 2);ShowContent(\'trays\');" HREF="#"','Trays', 1, true)
	menu[3] = new menuItem(false, 'ONCLICK="SelectMenuItem(this, 3);ShowContent(\'sandwiches\');" HREF="#"','Sandwiches', 1, true)
	menu[4] = new menuItem(false, 'ONCLICK="SelectMenuItem(this, 4);ShowContent(\'salads\');" HREF="#"','Salads', 1, true)
	menu[5] = new menuItem(false, 'ONCLICK="SelectMenuItem(this, 5);ShowContent(\'sides\');" HREF="#"','Side Orders', 1, true)
	menu[6] = new menuItem(false, 'ONCLICK="SelectMenuItem(this, 6);ShowContent(\'everydayspecials\');" HREF="#"','Everyday Specials', 1, true)
	menu[7] = new menuItem(false, 'ONCLICK="SelectMenuItem(this, 7);ShowContent(\'wings\');" HREF="#"','Wings', 1, true)
	menu[8] = new menuItem(false, 'ONCLICK="SelectMenuItem(this, 8);ShowContent(\'bbqtogo\');" HREF="#"','Barbecue to GO', 1, true)
	menu[9] = new menuItem(false, 'ONCLICK="SelectMenuItem(this, 9);ShowContent(\'childsplates\');" HREF="#"','Child&#39;s Plates', 1, true)
	menu[10] = new menuItem(false, 'ONCLICK="SelectMenuItem(this, 10);ShowContent(\'beverages\');" HREF="#"','Beverages', 1, true)
	menu[11] = new menuItem(true, 'ID="menutoggle" HREF="javascript:toggle(11)"', 'About Us', 0, true)
	menu[12] = new menuItem(false, 'ONCLICK="SelectMenuItem(this, 12);ShowContent(\'deano\');" HREF="#"','Deano', 1, false)
	menu[13] = new menuItem(false, 'ONCLICK="SelectMenuItem(this, 13);ShowContent(\'directions\');" HREF="#"','Directions', 1, false)
	menu[14] = new menuItem(false, 'HREF="http://www.mapquest.com/maps/map.adp?address=[200-299]+N+Clement+St&city=Mocksville&state=NC&zipcode=27028&country=US&cid=lfmaplink" target="_blank"','Map', 1, false)
	menu[15] = new menuItem(true, 'ID="menutoggle" HREF="javascript:toggle(15)"', 'Contact Us', 0, true)
//	menu[16] = new menuItem(false, 'ONCLICK="SelectMenuItem(this, 16);ShowContent(\'inforeq\');" HREF="#"','Request Information', 1, true)
	menu[16] = new menuItem(false, 'HREF="mailto:dean@deanosbarbecue.com"','Email Deano', 1, false)
	menu[17] = new menuItem(false, 'HREF="mailto:webmaster@deanosbarbecue.com"','Email the Webmaster', 1, false)
//	menu[18] = new menuItem(true, 'ID="menutoggle" HREF="javascript:toggle(18)"', 'Links', 0, true)
//	menu[19] = new menuItem(false, 'HREF="javascript:void(window.open(\'http://www.daviecounty.com/commerce\', \'\', \'top=0,left=' + (screen.width-800)/2 + ',height=600,width=800,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes,scrollbars=yes\'))"','Davie County Chamber of Commerce', 1, false)

  //select the Current Events Menu Item
  menu[0].selected=true
	// set image for each item (only items with true state)
	setImages()
}

function ScrollBanner() 
{
   if (document.getElementById('bannertext').offsetLeft > -document.getElementById('banner').offsetWidth)
   {
   	  NewLeft = document.getElementById('bannertext').offsetLeft - 1
   	  document.getElementById('bannertext').style.left =  NewLeft + "px";
   }
   else
   {
      document.getElementById('bannertext').style.left = (document.getElementById('banner').offsetWidth - 1) + "px";
   }
      timerID = setTimeout("ScrollBanner()", 15);

}

function MessageWindow(title, height, width, message) 
{
   var win = window.open("", "", "top=" + (screen.height-height)/2 + ",left=" + (screen.width-width)/2 + ",height=" + height + ",width=" + width)
   win.document.open()
   var text = ""
   text += "<HTML><HEAD><TITLE>" + title + "</TITLE><LINK REL='STYLESHEET' HREF='popstyle.css' TYPE='text/css'></HEAD><BODY><CENTER>"
   text += message + "</CENTER><FORM><CENTER>"
   text += "<INPUT TYPE='button' VALUE='    OK    ' onClick='self.close()'>"
   text += "</CENTER></FORM></BODY></HTML>"
   win.document.write(text)
   win.document.close()
}

function GraphicMessageWindow(title, height, width, message, graphic) 
{
   var win = window.open("", "", "top=" + (screen.height-height)/2 + ",left=" + (screen.width-width)/2 + ",height=" + height + ",width=" + width)
   win.document.open()
   var text = ""
   text += "<HTML><HEAD><TITLE>" + title + "</TITLE><LINK REL='STYLESHEET' HREF='popstyle.css' TYPE='text/css'></HEAD><BODY>"
   text += "<FORM><CENTER><TABLE><TR><TD align='center'>" + message + "</TD><TD><IMG SRC='" + graphic + "'></TD></TR></TABLE>"
   text += "<INPUT TYPE='button' VALUE='    OK    ' onClick='self.close()'>"
   text += "</CENTER></FORM></BODY></HTML>"
   win.document.write(text)
   win.document.close()
}

function SelectMenuItem(menuItem, menuItemNumber)
{
	if (document.getElementById('selectedMenuItem') && this.id!='selectedMenuItem') 
	{
	   document.getElementById('selectedMenuItem').id='';
	} 
	menuItem.id='selectedMenuItem'; 
	for (var i = 0; i < menu.length; ++i)
	{
		menu[i].selected=false;
	}
	menu[menuItemNumber].selected=true;
	writeMenu();
}


function ResetBlocks()
{
   document.getElementById('leftnav').style.height='auto';
   document.getElementById('maincontent').style.height='auto';
   document.getElementById('right').style.height='auto';
   var maxHeight = (document.getElementById('leftnav').offsetHeight > (document.getElementById('maincontent').offsetHeight > document.getElementById('right').offsetHeight ? document.getElementById('maincontent').offsetHeight : document.getElementById('right').offsetHeight) ? document.getElementById('leftnav').offsetHeight : (document.getElementById('maincontent').offsetHeight > document.getElementById('right').offsetHeight ? document.getElementById('maincontent').offsetHeight : document.getElementById('right').offsetHeight))
   document.getElementById('footer').style.top=(document.getElementById('header').offsetHeight + document.getElementById('banner').offsetHeight + 1 + maxHeight)+'px';
   document.getElementById('leftnav').style.height=(maxHeight)+'px';
   document.getElementById('maincontent').style.height=(maxHeight)+'px';
   document.getElementById('right').style.height=(maxHeight)+'px';
}

function makeArray(length) {
// constructor function to create array (compatible with all browsers)
	this.length = length // length of array (integer)
}

function setImages() {
	// loop through all elements of the menu "array" (object)
	for (var i = 0; i < menu.length; ++i) {
		if (menu[i].state)
			if (menu[i].parent) // menu[i] is a parent
				if (menu[i + 1].state) // menu[i] is exploded
					menu[i].pic = '<IMG SRC="images/black_collapse.gif" HEIGHT="15px" WIDTH="15px" BORDER="0" TITLE="Collapse">'
				else // menu[i] is collapsed
					menu[i].pic = '<IMG SRC="images/black_expand.gif" HEIGHT="15px" WIDTH="15px" BORDER="0" TITLE="Expand">'
			else // menu[i] is only a child (not a parent)
				menu[i].pic = '' //'<FONT SIZE="+1">*</FONT>'
	}
}

function toggle(num) {
// change from expanded to collapsed and vice versa
	// loop starts at item following argument
	// terminate loop when:
	//   a) last element of menu "array" reached
	//   b) current item (menu[i]) is not deeper than toggled item (menu[num])
	for (var i = num + 1; i < menu.length && menu[i].depth >= menu[num].depth + 1; ++i) {
		// if current item (menu[i]) is a direct child of menu[num]
		if (menu[i].depth == menu[num].depth + 1)
			menu[i].state = !menu[i].state // toggle state
	}
	setImages()
	// rewrite the menu
	writeMenu()
}

function writeMenu(){
var newMenu = new String
var previousDepth = 0
newMenu += '<ul ID="mainnav">'

// loop through elements of menu "array"
for (var i = 0; i < menu.length; ++i) {
	// if current item's state is true
	if (menu[i].state) {
		if (menu[i].depth > previousDepth){
			newMenu += '<ul ID="subnav">'}
		if (menu[i].depth < previousDepth){
			newMenu += '</ul>'}
		newMenu += '<li>'

		// follow indentation with picture, another space, text, and new line
		newMenu += '<A '+menu[i].attributes
		if (menu[i].selected){
			newMenu += 'ID="selectedMenuItem"'}
		newMenu += '>'+menu[i].pic+menu[i].text+'</A></li>'
		previousDepth = menu[i].depth
	} else {
		// current item's state is false (skip all its children)
		var previous = i
		for (var k = i + 1; k < menu.length && menu[k].depth >= menu[previous].depth; ++k) {
			++i
		}
	}
}

// end <PRE> to return to normal formatting
newMenu += '</ul>'
document.getElementById('leftnav').innerHTML = newMenu;
if (document.getElementById('selectedMenuItem'))
{
   document.getElementById('selectedMenuItem').style.background='#FFFFFF';
	 document.getElementById('selectedMenuItem').style.color='#000000';
}
ResetBlocks();
}

