// ======================================================================================================== menu info
function mmLoadMenus() {
  if (window.mm_menu_0916162149_0) return;
  window.mm_menu_0916162149_0 = new Menu("root",150,16,"Arial, Helvetica, sans-serif",10,"#004027","#F07B14","#FFFFFF","#F7F4EB","left","middle",3,0,1000,-5,7,true,true,true,0,true,true);
  mm_menu_0916162149_0.addMenuItem("Metal&nbsp;Free&nbsp;Dentistry","location='smile_mfd.html'");
	mm_menu_0916162149_0.addMenuItem("Crowns","location='smile_crowns.html'");
	mm_menu_0916162149_0.addMenuItem("Bridges","location='smile_bridges.html'");
	mm_menu_0916162149_0.addMenuItem("Dental&nbsp;Implants","location='smile_implants.html'");
	mm_menu_0916162149_0.addMenuItem("Porcelain&nbsp;Veneers","location='smile_veneers.html'");
	mm_menu_0916162149_0.addMenuItem("Periodontal&nbsp;Disease","location='smile_perio.html'");
	mm_menu_0916162149_0.addMenuItem("Tooth&nbsp;Whitening","location='smile_whitening.html'");
	mm_menu_0916162149_0.addMenuItem("Instant&nbsp;Orthodontics","location='smile_instant.html'");
	mm_menu_0916162149_0.addMenuItem("TMJ","location='smile_tmj.html'");
   mm_menu_0916162149_0.hideOnMouseOut=true;
   mm_menu_0916162149_0.bgColor='#FFFFFF';
   mm_menu_0916162149_0.menuBorder=1;
   mm_menu_0916162149_0.menuLiteBgColor='#FFFFFF';
   mm_menu_0916162149_0.menuBorderBgColor='#EFECD9';

mm_menu_0916162149_0.writeMenus();
} // mmLoadMenus()
// ======================================================================================================== assorted functions
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
/* Functions that swaps images. */
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

/* Functions that handle preload. */
function MM_preloadImages() { //v3.0
 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
   var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
   if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
// ======================================================================================================== form functions
function CheckRequiredFieldsQc() {

		if (document.qc.contact_greeting.value=='') {
			alert('Your name is required to use this form.');
			return false;
		}

		if (document.qc.contact_email.value=='') {
			alert('A valid email address is required to use this form.');
			return false;
		}
		
		if (document.qc.contact_home_phone.value=='') {
			alert('Your phone number is required to use this form.');
			return false;
		}

		return true;
}

function CheckRequiredFields() {
		
		if (document.contact.contact_home_phone2.value=='') {
			alert('Your phone number is required to use this form.');
			return false;
		}
		
		if (document.contact.contact_greeting2.value=='') {
			alert('How you want to be addressed is required to use this form.');
			return false;
		}

		if (document.contact.contact_email2.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;
}
// ================================================================================================================= gallery pops
if (document.getElementById || document.all) {
	document.write('<div id="popGal">');
	document.write('</div>');
}
function getPopInfo(){
	if (document.getElementById)
	return document.getElementById("popGal").style
	else if (document.all)
	return document.all.popGal.style
}
function getPopInfoEl(){
	if (document.getElementById)
	return document.getElementById("popGal")
	else if (document.all)
	return document.all.popGal
}
function popGal(number) {
	fill = '<img src=\"images/sub/gallery_' + number + '_pop.jpg\" width=\"600\" height=\"400\" usemap=\"\#Map\" border=\"0\" />';
	fill = fill + '<map name=\"Map\"><area shape=\"rect\" coords=\"462,4,597,25\" href=\"javascript:;\" onclick=\"hidePopInfo();\"></map>';
	
	getPopInfoEl().innerHTML = fill;
	getPopInfo().visibility="visible"
}

function hidePopInfo() {
	getPopInfo().visibility="hidden";
}