// Basic browser detection...
var agt=navigator.userAgent.toLowerCase();
var is_major = parseInt(navigator.appVersion);
var is_minor = parseFloat(navigator.appVersion);
var is_DOM   = (document.getElementById) ? true : false;
var is_nav = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1)
            && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1)
            && (agt.indexOf('webtv')==-1));
var is_nav4up = (is_nav && (is_major >= 4));
var is_nav6up = (is_nav && is_DOM);
var is_ie = (agt.indexOf("msie") != -1);
var is_ie3 = (is_ie && (is_major < 4));
var msie_vers_start = agt.indexOf("msie")+5;
var msie_real_vers = parseFloat(agt.substring(msie_vers_start, msie_vers_start+3));
var is_ie4  = (is_ie && (is_major == 4) && (msie_real_vers < 5));
var is_ie4up  = (is_ie  && (is_major >= 4));
var is_ie5  = (is_ie && (is_major == 4) && (agt.indexOf("msie 5.")!=-1));
var is_ie5up  = (is_ie  && !is_ie3 && !is_ie4);
var is_aol   = (agt.indexOf("aol") != -1);
var is_aol3  = (is_aol && is_ie3);
var is_aol4  = (is_aol && is_ie4);
var is_mac    = (agt.indexOf("mac")!=-1);

// Add the id name of 'on' divs to the 'tabs' array to include them in the hideOtherLayers routine.
// It is only nessecary to add 'on' divs that are near each other. hideOtherLayers addresses a bug 
// in some browsers where flyout divs sometimes stay 'on' after the layers loose focus. The 
// staying 'on' bug happens when users move the mouse really really fast between div flyouts.

var mainnav_tabs = ['donate_on', 'getinvolved_on', 'countries_on', 'topics_on', 'aboutus_on'];
var universal_tabs = ['search_on', 'locations_on'];
var e_tabs = ['add_on'];

function defeatHref(id) {
	link = document.getElementById(id);
	link.setAttribute("href", '#');
}

function go_there(url, message) {
	var where_to = confirm(message);
	if (where_to == true) {
		window.location= url;
	}
}

function hideLayer(id) {
	if ( id == "donation_funds") return;
	node = document.getElementById(id);
	if ( node ) {
		node.style.visibility = "hidden";	
		if ( is_ie4up && (id == "aboutus_on" || id == "countries_on") ) {
			iframe = document.getElementById(id + "_iframe");
			iframe.style.visibility = "hidden";
		}
	}
}

function hideOtherLayers(tab, tabset) {
	for (var i=0; i < tabset.length; i++) {
		if (tabset[i] != tab) {
			node = document.getElementById(tabset[i]);
			if ( node ) {
				node.style.visibility = "hidden";
				if ( is_ie4up && (tabset[i] == "aboutus_on" || tabset[i] == "countries_on") ) {
					iframe = document.getElementById(tabset[i] + "_iframe");
					iframe.style.visibility = "hidden";
				}
			}
		}
	}
}

function quickPick(where) {
	if (where.options[where.selectedIndex].value != "") {
		var URL = where.options[where.selectedIndex].value;
		window.location.href = URL;
	}
}

function showLayer(id) {
	if ( id == "donation_funds") return;
	node = document.getElementById(id);
	if ( node ) {
		node.style.visibility = "visible";
		if ( is_ie4up && (id == "aboutus_on" || id == "countries_on")) {
			iframe = document.getElementById(id + "_iframe");
			iframe.style.visibility = "visible";
			iframe.style.width = node.offsetWidth;
			iframe.style.height = node.offsetHeight;
		}
	}
}

function togglesubleftnav(num) {
	if (subleftnavcount > 0) {
		trigger = document.getElementById('subleftnav_trigger' + num);
		menu = document.getElementById('subleftnav_menu' + num);
		container = document.getElementById('subleftnav_container' + num);
		eval("value = subleftnav_value" + num + ";");
		trigger.setAttribute("href", '#');
		if (container.className == 'leftnav_closed') {
			container.className = 'leftnav_open';
			menu.innerHTML = value;
			for (var i=1; i <= subleftnavcount; i++) {
				if (i != num) {
					container = document.getElementById('subleftnav_container' + i);
					menu = document.getElementById('subleftnav_menu' + i);
					container.className = 'leftnav_closed';
					menu.innerHTML = "<img src='/images/spacer.gif' width='1' height='1' alt='' border=''>";		
				}
			}		
		} else if (container.className == 'leftnav_open') {
			container.className = 'leftnav_closed';
			menu.innerHTML = "<img src='/images/spacer.gif' width='1' height='1' alt='' border=''>";		
		}
	}
}

        
function validateForm(theForm) {
/*
		if (theForm.from_email.value == "") {
		alert("Please enter your email address.");
		return false;
	}			
		return true;
	}
*/
}

function limitchecks(f,v,c,min,max) {
	var j = 0;
	for (var i=0; i<f.elements.length; i++) {
		var e = f.elements[i];
		if (e.type == "checkbox") {
			if (e.checked == 1 && e.value >= min && e.value <= max) {
				j++;
			}
		}
	}
	if (j > c) {
		for (var i=0; i<f.elements.length; i++) {	
			var e = f.elements[i];		
			if (e.type == "checkbox") {
				if (e.value != v && e.checked == 1 &&  e.value >= min && e.value <= max) {
					e.checked = 0;
					return;
				}
			}
		}		
	}
}

function uncheck(f,min,max) {
	var j = 0;
	for (var i=0; i<f.elements.length; i++) {
		var e = f.elements[i];
		if (e.type == "checkbox") {
			if (e.checked == 1 && e.value < 600 && (e.value < min || e.value > max)) {		// 600 is silent disasters - don't uncheck!
				e.checked = 0;
			}
		}
	}
}

function checkall(f,min,max) {
	var j = 0;
	for (var i=0; i<f.elements.length; i++) {
		var e = f.elements[i];
		if (e.type == "checkbox") {
			if (e.value >= min && e.value <= max) {
				e.checked = 1;
			}
		}
	}
}

function uncheckall(f,min,max) {
	var j = 0;
	for (var i=0; i<f.elements.length; i++) {
		var e = f.elements[i];
		if (e.type == "checkbox") {
			if (e.value >= min && e.value <= max) {
				e.checked = 0;
			}
		}
	}
}

function noenter() {
 	return !(window.event && window.event.keyCode == 13); 
 	
}
