//JAVASCRIPT DHTML DROPDOWN MENU
//author: Andrew Court 05/06/05

//**********************************************************************
//VARIABLES
//quick mod parameters
var hide_delay = 500; //time in milliseconds

//set number of main menus
var menu_num = 5;
//set number of submenus - initialize to 0
var submenu_num = 0;
//global param for current menu object
var current;
//global timeout parameter
var timer;
//set active menu arrays
var menu_active = new Array();
var submenu_active = new Array();
//set active main menu variable
var activemenunum = -1;

//**********************************************************************
//MENU ARRAYS
//set links within main menus (link name,url,submenu(0=false,1=true))

// FIRST MAIN DROP DOWN MENU
var main_menu0 = new Array();
	main_menu0[0] = new Array("Voordelen","benefits.html",0);
	main_menu0[1] = new Array("Hoe weken kunnen worden gekocht","purchasing.html",0);
	//main_menu0[2] = new Array("Buying a Property","buying.html",0);
	//main_menu0[3] = new Array("Inspection","inspection.html",0);

// SECOND MAIN DROP DOWN MENU
var main_menu1 = new Array();
	main_menu1[0] = new Array("Club stijl","one_bedroom_club.html",0);
	main_menu1[1] = new Array("Tuin stijl","two_bedroom_garden.html",0);
	
	
var main_menu2 = new Array();
	main_menu2[0] = new Array("Orange Week","orange_week_special_offers.html",0);
	main_menu2[1] = new Array("Red Week","red_week_special_offers.html",0);

var main_menu3 = new Array();
	//main_menu3[0] = new Array("Alanda Club","about_alanda_club.html",0);
	main_menu3[0] = new Array("McInerney PLC","mcinerney_plc.html",0);
	
//**********************************************************************
//FUNCTIONS
//MAIN MENU FUNCTIONS
//set chosen menu active, all others false

//if(position near right edge){position menu x pixels to the left}

function setactivemenu(n){

	if(timer){clearTimeout(timer);}
	
	for(var i=0;i<menu_num;i++){
		if(i==n){
			menu_active[i] = true;
		}
		else{
			menu_active[i] = false;
		}
	}
	clearmenu(n);
}

//clears any current active menu
function clearmenu(n){

	for(var i=0;i<menu_num;i++){
	
	var active_node = document.getElementById("root"+i);
		
			if(active_node.lastChild.tagName == "DIV"){
				active_node.removeChild(active_node.lastChild);
			}
	}
	showmenu(n);
}

function showmenu(n){

	for(var i=0;i<menu_num;i++){
	
		var active_node = document.getElementById("root"+i);

		if(menu_active[i]==true){
			var newDiv = document.createElement("div");
			newDiv.id = "menu_div";
			newDiv.onmouseout = closeMenu;
			newDiv.onmouseover = hold;
			
			var menu_content = buildMenuContent(n);
			
 			newDiv.innerHTML = menu_content;
 			active_node.appendChild(newDiv);
			
			//set active menunum
			activemenunum = i;
		}
	}
}

function buildMenuContent(n){

	var active_menu = eval("main_menu" + n);
	var stylestring = "";
	var content = "<table border='0' width='100%' cellpadding='0' cellspacing='0'>";
		for(x=0;x<active_menu.length;x++){
			
			stylestring = "border-bottom:1px solid #000;";
			
			if(active_menu[x][2]==1){
				content += "<tr><td style=><div id='main" + x + "' class='main'><a href='" + active_menu[x][1] + "' class='sub_link_nav' style='"+stylestring+"' onmouseover='setactivesubmenu("+x+");window.status=\"\";return true' onclick='return false'><span class='link_wrap'>" + active_menu[x][0] + "</span></a></div></td></tr>";
			}
			//if no submenu
			else{
				content += "<tr><td><a href='" + active_menu[x][1] + "' class='sub_link' style='"+stylestring+"' onmouseover='closeSubMenu()'><span class='link_wrap'>" + active_menu[x][0] + "</span></a></td></tr>";
				}
 			}
		 	content += "</table>";
			
	return content;
}

function closeMenu(event) {

 var related;

  if (window.event) {
    current = this;
    related = window.event.toElement;
  }
  else {
    current = event.currentTarget;
    related = event.relatedTarget;
  }

  if (current != related && !contains(current, related)){
  		timer = setTimeout("hide()",hide_delay);
	}
}

function contains(a, b) {
  // Return true if node a contains node b.
  if(b != null){
 		while (b.parentNode){
    		if ((b = b.parentNode) == a){
      			return true;
			}
		}
	}
  return false;
}

function hide(){
	try{
		current.style.visibility = "hidden";
	}catch(exception){}
}

function hold(){
	if(timer){clearTimeout(timer);}
}

//close menu when mouse off root link
function hideMenu(){
	current = document.getElementById('menu_div');
	timer = setTimeout("hide()",hide_delay);
}

//SUBMENU FUNCTIONS

//set chosen submenu active, all others false
function setactivesubmenu(n){

	//submenu_num = eval("sub_menu" +activemenunum + "_" + n).length;
	submenu_num = eval("main_menu" + activemenunum).length;
	
	for(var i=0;i<submenu_num;i++){
		if(i==n){
			submenu_active[i] = true;
		}
		else{
			submenu_active[i] = false;
		}
	}
	clearsubmenu(n);
}

//clears any current active submenu
function clearsubmenu(n){

	for(var i=0;i<submenu_num;i++){
	
	if(document.getElementById("main"+i)!=null){
		var active_subnode = document.getElementById("main"+i);
				if(active_subnode.lastChild.tagName == "DIV"){
					active_subnode.removeChild(active_subnode.lastChild);
				}
		}
	}
	showsubmenu(n);
}

function showsubmenu(n){

	var active_subnode = document.getElementById("main"+n);
	
	for(var i=0;i<submenu_num;i++){
		if(submenu_active[i]==true){
			var newSubDiv = document.createElement("div");
			newSubDiv.id = "submenu_div";
			//newDiv.onmouseout = closeMenu;
			//newDiv.onmouseover = hold;
			
			var submenu_content = buildSubMenuContent(n);
			//var submenu_content = "test";
			
 			newSubDiv.innerHTML = submenu_content;
 			active_subnode.appendChild(newSubDiv);
		}
	}
}

function buildSubMenuContent(n){

	var active_submenu = eval("sub_menu" + activemenunum + "_" + n);

	var content = "<table border='0' width='100%' cellpadding='0' cellspacing='0'>";
		for(x=0;x<active_submenu.length;x++){
		
				content += "<tr><td width='75'><a href='" + active_submenu[x][1] + "' class='sub_link'><span class='link_wrap'>" + active_submenu[x][0] + "</a></span></td></tr>";
				
 			}
		 	content += "</table>";
			
	return content;
}

function closeSubMenu(){

	var currentsubmenu = document.getElementById('submenu_div');
	if(currentsubmenu!=null){
		currentsubmenu.style.visibility = "hidden";
	}
}

//OTHER SCRIPTS
function offerprompt(handler,obj){
	var fieldvalue = obj.value;
	switch(handler){
		case 0: switch(fieldvalue){
					case 'e-mail address': obj.value = ""; break;
					default : obj.value = obj.value; break;
				}		
		case 1: switch(fieldvalue){
					case '': obj.value = "e-mail address"; break;
					default : obj.value = obj.value; break;
				}		
		; break;
	}
}

function validate(e){
var ok = "1234567890qwertyuiop[]asdfghjklzxcvbnm.@-_QWERTYUIOPASDFGHJKLZXCVBNM";
var re = /(@.*@)|(\.\.)|(^\.)|(^@)|(@$)|(\.$)|(@\.)/;
var re_two = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;

  for(i=0; i < e.length ;i++){
	  if(ok.indexOf(e.charAt(i))<0){
		  alert("Please enter a valid email address");
		  return false;
		}	
	}	 
	 if (!e.match(re) && e.match(re_two)){
		 return true;		
		} 
		else{
			alert("Please enter a valid email address");
			return false
		}
}

// open window
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}



