<!--hide from browsers of different ability

// use this file as a repository for all global javascript functions

function getQueryVariable(variable) {
	var query = window.location.search.substring(1);
	var vars = query.split("&");
	for (var i=0;i<vars.length;i++) {
		var pair = vars[i].split("=");
		if (pair[0] == variable) {
			alert('Thank you for signing up.\nPlease check your email for a confirmation message.');
			return pair[1];
		}
	}
}

function MM_openBrWindow(theURL,winName,features) {
	window.open(theURL,winName,features);
}

function AA_preloadImages() { //v1.2
  if (document.images) {
    var imgFiles = AA_preloadImages.arguments;
    var preloadArray = new Array();
    for (var i=0; i<imgFiles.length; i++) {
      preloadArray[i] = new Image;
      preloadArray[i].src = imgFiles[i];
    }
  }
}

function AA_swapImage() { //v1.2
  var i,j=0,objStr,obj,swapArray=new Array,oldArray=document.AA_swapImgData;
  for (i=0; i < (AA_swapImage.arguments.length-2); i+=3) {
    objStr = AA_swapImage.arguments[(navigator.appName == 'Netscape')?i:i+1];
    if ((objStr.indexOf('document.layers[')==0 && document.layers==null) ||
        (objStr.indexOf('document.all[')   ==0 && document.all   ==null))
      objStr = 'document'+objStr.substring(objStr.lastIndexOf('.'),objStr.length);
    obj = eval(objStr);
    if (obj != null) {
      swapArray[j++] = obj;
      swapArray[j++] = (oldArray==null || oldArray[j-1]!=obj)?obj.src:oldArray[j];
      obj.src = AA_swapImage.arguments[i+2];
  } }

  document.AA_swapImgData = swapArray; //used for restore
}

function AA_swapImgRestore() { //v1.2
  if (document.AA_swapImgData != null)
    for (var i=0; i<(document.AA_swapImgData.length-1); i+=2)
      document.AA_swapImgData[i].src = document.AA_swapImgData[i+1];
}


// Looks to see if the control is filled if TEXT and if != 0 if SELECT
function IsEmpty(Control,Select,qInfo)
  {
    var retVar = false;

    if(Select == "NOTSELECT")
    {
      if (Control.value == "")
      {
		if (qInfo == null)
			alert("Please enter a value for "+ Control.name + ".");
		else
        	alert("Please enter a value for "+ qInfo + ".");
			
        Control.focus();
        retVar = true;
      }
      else
      {
        retVar = false;
      }
    }

    if(Select == "SPECIAL")
    {
      if (Control.value == "")
      {
		if (qInfo == null)
			alert("Please enter a value for "+ Control.name + ".");
		else
        	alert("Please enter a value for "+ qInfo + ".");
			
        Control.focus();
        retVar = true;
      }
      else
      {
      	if ( check() )
      		retVar = false;
      	else
      		retVar = true;
      }
    }
    
    if(Select == "SELECT")
	{
      if (Control.selectedIndex == 0)
      {
		if (qInfo == null)
			alert("Please select a choice for "+ Control.name + ".");
		else
        	alert("Please select a choice for "+ qInfo + ".");
			
        Control.focus();
        retVar = true;
      }
      else
      {
        retVar = false;
      }
    }
    return retVar;
  }

//         IsEmpty(document.form1.State,"SELECT") ||
function ValidateAndSubmit()
{
	if ( Validate() )
	{
		document.form1.submit();
	}
}

//VIEW DATE SCRIPT
 var d, today;
 d = new Date();
 newdate = d.getDate();
 newmonth = d.getMonth();
 newyear = d.getYear();
 if (navigator.appName=="Netscape")
 {
	newyear = newyear + 1900;
 }
 else
 {
	newyear = newyear;
 }
 montharray = new Array(13);
 montharray[0]="January";
 montharray[1]="February";
 montharray[2]="March";
 montharray[3]="April";
 montharray[4]="May";
 montharray[5]="June";
 montharray[6]="July";
 montharray[7]="August";
 montharray[8]="September";
 montharray[9]="October";
 montharray[10]="November";
 montharray[11]="December";
 mth=parseInt(newmonth);
 today= montharray[mth] + " " + newdate + ", " + newyear;
	
// External Photo Viewer
function CaricaFoto(img){
  foto1= new Image();
  foto1.src=(img);
  Controlla(img);
}

function Controlla(img){
  if((foto1.width!=0)&&(foto1.height!=0)){
    viewFoto(img);
  }
  else{
    funzione="Controlla('"+img+"')";
    intervallo=setTimeout(funzione,20);
  }
}

function viewFoto(img){
  largh=foto1.width+20;
  altez=foto1.height+20;
  stringa="width="+largh+",height="+altez;
  finestra=window.open(img,"",stringa);
}
	

// LOAD NEW WINDOW
function loadNewWin(myurl) {
	window.open(myurl, "mynewwindow", 'width=525, height=350, resizable, scrollbars, status=no')
}


// ADD BOOKMARK
function loadBookmark(url,title){
  if ((navigator.appName == "Microsoft Internet Explorer") && (parseInt(navigator.appVersion) >= 4)) {
  window.external.AddFavorite(url,title);
  } else if (navigator.appName == "Netscape") {
    window.sidebar.addPanel(title,url,"");
  } else {
    alert("Press CTRL-D (Netscape) or CTRL-T (Opera) to bookmark");
  }
}


// VALIDATE RIGHT CONTACT FORM
function emailCheck (emailStr) {
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 (emailStr==""){	
	alert("Please enter your email");
	return false;
}
	
if (matchArray==null) {
	alert("Email address seems incorrect (check @ and .'s)");
	return false;
}
var user=matchArray[1];
var domain=matchArray[2];
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 domainArray=domain.match(domainPat);
if (domainArray==null) {
	alert("The domain name doesn't seem to be valid.");
	return false;
}
var atomPat=new RegExp(atom,"g");
var domArr=domain.match(atomPat);
var len=domArr.length;
if ((domArr[domArr.length-1] != "info") &&
	(domArr[domArr.length-1] != "name") &&
	(domArr[domArr.length-1] != "arpa")) {
		if (domArr[domArr.length-1].length<2 || 
			domArr[domArr.length-1].length>3) {
				alert("The address must end in a three-letter domain, or two letter country.");
				return false;
		}
}
if (len<2) {
   var errStr="This address is missing a hostname!";
   alert(errStr);
   return false;
}
return true;
}

function UPTvalidateform(thisform)
{			
	if (thisform.fullname.value==""){	
	alert("Please enter your Name.");
	thisform.fullname.focus();
	return(true);}
		
	if (emailCheck(thisform.email.value))
	{
		if (thisform.phone.value==""){	
		alert("Please enter your Phone Number.");
		thisform.phone.focus();
		return(true);}
	
		if (thisform.message.value==""){	
		alert("Please enter your Event Info/Message.");
		thisform.message.focus();
		return(true);}
		
		return false;
	} else {
		return true;
	}			
}


var http_request = false;
function makePOSTRequest(url, parameters) {
  http_request = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
	 http_request = new XMLHttpRequest();
	 if (http_request.overrideMimeType) {
		// set type accordingly to anticipated content type
		//http_request.overrideMimeType('text/xml');
		http_request.overrideMimeType('text/html');
	 }
  } else if (window.ActiveXObject) { // IE
	 try {
		http_request = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
		try {
		   http_request = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {}
	 }
  }
  if (!http_request) {
	 alert('Cannot create XMLHTTP instance');
	 return false;
  }
  
  http_request.onreadystatechange = alertContents;
  http_request.open('POST', url, true);
  http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  http_request.setRequestHeader("Content-length", parameters.length);
  http_request.setRequestHeader("Connection", "close");
  http_request.send(parameters);
}

function alertContents() {
  if (http_request.readyState == 4) {
	 if (http_request.status == 200) {
		document.bookform.reset();
		alert('Thank you for contacting us.\nSomeone will get back with you as soon as possible.');
		//window.open("http://www.hairtransplanthawaii.com/emailconfirm.html", "mynewwindow", 'width=500, height=510, resizable, scrollbars, status=no')
		//result = http_request.responseText;
		//document.getElementById('email').value = 'Thanks for signing up!';            
	 } else {
		alert('There was a problem with the request.');
	 }
  }
}

function get(obj) {
  var poststr = "fullname=" + encodeURI( document.getElementById("fullname").value) + "&email=" + encodeURI( document.getElementById("email").value) + "&phone=" + encodeURI( document.getElementById("phone").value) + "&message=" + encodeURI( document.getElementById("message").value);
  makePOSTRequest('send_booking.php', poststr);
}
//end hide-->