var form_submitted = false;
var no_error = true;
var allergies_max = 16;
var illnesses_max = 16;
var medications_max = 16;

list = arr_list();

var start = function(){new Suggest.LocalMulti("search_field", "suggest", list, {ignoreCase: true, highlight: true});};
window.addEventListener ?
window.addEventListener('load', start, false) :
window.attachEvent('onload', start);

function GetElementAbsolutePos(element) {
	var res = new Object();
	res.x = 0; res.y = 0;
	if (element !== null) {
		res.x = element.offsetLeft; 
		res.y = element.offsetTop; 
    	
		var offsetParent = element.offsetParent;
		var parentNode = element.parentNode;

		while (offsetParent !== null) {
			res.x += offsetParent.offsetLeft;
			res.y += offsetParent.offsetTop;

			if (offsetParent != document.body && offsetParent != document.documentElement) {
				res.x -= offsetParent.scrollLeft;
				res.y -= offsetParent.scrollTop;
			}
			if (__isFireFox) {
				while (offsetParent != parentNode && parentNode !== null) {
					res.x -= parentNode.scrollLeft;
					res.y -= parentNode.scrollTop;
					parentNode = parentNode.parentNode;
				} 
				res.x+=40;    
				res.y-=10
			}
			parentNode = offsetParent.parentNode;
			offsetParent = offsetParent.offsetParent;
		}
	}
    return res;
}


function placeSuggest() {
	var res = GetElementAbsolutePos(document.getElementById("search_field"));
	if (__isFireFox) {
		document.getElementById("suggest").style.top = (res.y+32).toString() + "px";
		document.getElementById("suggest").style.left = (res.x-47).toString() + "px";	
	} else {
		__ie_version = getInternetExplorerVersion();
		if (__ie_version == 6 || __ie_version == 7) {
			document.getElementById("suggest").style.top = (res.y+22).toString() + "px";
			document.getElementById("suggest").style.left = (res.x-15).toString() + "px";	
		} else {
			document.getElementById("suggest").style.top = (res.y+22).toString() + "px";
			document.getElementById("suggest").style.left = (res.x-8).toString() + "px";	
		}
	}
}

function getInternetExplorerVersion() {
   var rv = -1; // Return value assumes failure.
   if (navigator.appName == 'Microsoft Internet Explorer')
   {
      var ua = navigator.userAgent;
      var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
      if (re.exec(ua) != null)
         rv = parseFloat( RegExp.$1 );
   }
   return rv;
}

var __isFireFox = navigator.userAgent.match(/gecko/i);

function focus_search_field() {
	var search_field = document.getElementById("search_field");
	if (search_field.value == "Enter product name here to check availability...") {
		search_field.value = "";
		search_field.style.color = '#000000';
	}
}

function blur_search_field() {
	var search_field = document.getElementById("search_field");
	if (search_field.value == "") {
		search_field.value = "Enter product name here to check availability...";
		search_field.style.color = "#999999";
	}	
}
