function popMap(id) {
	lyr = id + "Lyr";
	map = document.getElementById(lyr);
	if (map) {
		if (map.className == 'hidden') {
			map.className = "visible";
		} else {
			map.className = "hidden";
		}
	}
}

// =================== glossary print function

function getId(){
	if (document.getElementById)
	return document.getElementById("popGal").style
	else if (document.all)
	return document.all.popGal.style
}

function printSection(id) {
	if (id == 'libBroadcast') {
		document.getElementById("libGeneral").style.display = "none";
		document.getElementById("libInternet").style.display = "none";
		document.getElementById("libOut").style.display = "none";
		document.getElementById("libPrint").style.display = "none";
		window.print();
		document.getElementById("libGeneral").style.display = "block";
		document.getElementById("libInternet").style.display = "block";
		document.getElementById("libOut").style.display = "block";
		document.getElementById("libPrint").style.display = "block";
	} else if (id == 'libGeneral') {
		document.getElementById("libBroadcast").style.display = "none";
		document.getElementById("libInternet").style.display = "none";
		document.getElementById("libOut").style.display = "none";
		document.getElementById("libPrint").style.display = "none";
		window.print();
		document.getElementById("libBroadcast").style.display = "block";
		document.getElementById("libInternet").style.display = "block";
		document.getElementById("libOut").style.display = "block";
		document.getElementById("libPrint").style.display = "block";
	} else if (id == 'libInternet') {
		document.getElementById("libBroadcast").style.display = "none";
		document.getElementById("libGeneral").style.display = "none";
		document.getElementById("libOut").style.display = "none";
		document.getElementById("libPrint").style.display = "none";
		window.print();
		document.getElementById("libBroadcast").style.display = "block";
		document.getElementById("libGeneral").style.display = "block";
		document.getElementById("libOut").style.display = "block";
		document.getElementById("libPrint").style.display = "block";
	} else if (id == 'libOut') {
		document.getElementById("libBroadcast").style.display = "none";
		document.getElementById("libGeneral").style.display = "none";
		document.getElementById("libInternet").style.display = "none";
		document.getElementById("libPrint").style.display = "none";
		window.print();
		document.getElementById("libBroadcast").style.display = "block";
		document.getElementById("libGeneral").style.display = "block";
		document.getElementById("libInternet").style.display = "block";
		document.getElementById("libPrint").style.display = "block";
	} else if (id == 'libPrint') {
		document.getElementById("libBroadcast").style.display = "none";
		document.getElementById("libGeneral").style.display = "none";
		document.getElementById("libInternet").style.display = "none";
		document.getElementById("libOut").style.display = "none";
		window.print();
		document.getElementById("libBroadcast").style.display = "block";
		document.getElementById("libGeneral").style.display = "block";
		document.getElementById("libInternet").style.display = "block";
		document.getElementById("libOut").style.display = "block";
	} else {
		window.print();
	}
}

// ==============================================
function CheckRequiredFields() {

		if (document.contact.name.value=='') {
			alert('Your name is required to use this form.');
			return false;
		}
		
		if (document.contact.company.value=='') {
			alert('Your company name is required.');
			return false;
		}
		
		if (document.contact.phone.value=='') {
			alert('Your phone number is required to use this form.');
			return false;
		}
		
		if (document.contact.email.value=='') {
			alert('A valid email address is required to use this form.');
			return false;
		}
		return true;
}

function emailCheck (emailStr) {

	var checkTLD=1;


	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;


	var emailPat=/^(.+)@(.+)$/;


	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";


	var validChars="\[^\\s" + specialChars + "\]";


	var quotedUser="(\"[^\"]*\")";


	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;

	var atom=validChars + '+';


	var word="(" + atom + "|" + quotedUser + ")";


	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");


	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");

	var matchArray=emailStr.match(emailPat);

	if (matchArray==null) {
		alert("Email address seems incorrect (check @ and .'s)");
		return false;
	}
	
	var user=matchArray[1];
	var domain=matchArray[2];


	for (i=0; i<user.length; i++) {
		if (user.charCodeAt(i)>127) {
				alert("Ths username contains invalid characters.");
				return false;
  		}
	}
	
	for (i=0; i<domain.length; i++) {
		if (domain.charCodeAt(i)>127) {
				alert("Ths domain name contains invalid characters.");
				return false;
   		}
	}

	if (user.match(userPat)==null) {
		alert("The username doesn't seem to be valid.");
		return false;
	}

	var IPArray=domain.match(ipDomainPat);
	
	if (IPArray!=null) {
		for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {
				alert("Destination IP address is invalid!");
				return false;
   			}
		}
		return true;
	}

 
	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;

	for (i=0;i<len;i++) {
		if (domArr[i].search(atomPat)==-1) {
			alert("The domain name does not seem to be valid.");
			return false;
  		}
	}

	if (checkTLD && domArr[domArr.length-1].length!=2 && domArr[domArr.length-1].search(knownDomsPat)==-1) {
		alert("The address must end in a well-known domain or two letter " + "country.");
		return false;
	}

	if (len<2) {
		alert("This address is missing a hostname!");
		return false;
	}

	return true;
}