//TOGGLE LOCATION
function togglelocation(stateid){
    if (document.getElementById('p'+stateid).style.display == 'none'){
        document.getElementById('plus'+stateid).src = document.getElementById('plus'+stateid).src.replace('plus','minus')
    } else {
        document.getElementById('plus'+stateid).src = document.getElementById('plus'+stateid).src.replace('minus','plus')
    }
    Effect.toggle('p'+stateid,'blind');
}

//TOGGLE NAV
function togglenav(catid){
    var handle = 'navmenu' + catid
 
    if (document.getElementById(handle).style.display == 'none'){
        document.getElementById(handle).style.display = 'block'
        document.getElementById('expand'+catid).src = '/images/minus.gif'
    } else {
         document.getElementById(handle).style.display = 'none'
          document.getElementById('expand'+catid).src = '/images/plus.gif'
    }
}

//ADDALL
function addall(){
    //AJAX REQUEST
	    new Ajax.Request('addall.aspx?refresh='+ new Date().getTime(), {
	    method: "get",
	    onComplete: function(transport) { 
	        alert('All Tests have been Added.  Click on My Book to view them.')
		    //document.getElementById('message'+dosid).innerHTML = '<b>ADDED!</b>';
		    //document.getElementById('message2'+dosid).innerHTML = '<b>ADDED!</b>';
		    //document.getElementById('dosrow'+dosid).style.backgroundColor='#F9F9F9';
		    //document.getElementById("searchindicator").style.display='none';
		    }//-onSuccess
	      }//-request arguments
	    );// new ajax request	
	}

//REMOVE ALL
function removeall(){
    //AJAX REQUEST
	    new Ajax.Request('removeall.aspx?refresh='+ new Date().getTime(), {
	    method: "get",
	    onComplete: function(transport) { 
	        alert('All Tests have been Removed');
	        refreshdos('refreshdos','mybook=1');
	        document.window.refresh();
		    }//-onSuccess
	      }//-request arguments
	    );// new ajax request	
	}
	
//ADD TO BOOK
function addtobook(dosid){
    //AJAX REQUEST
	    new Ajax.Request('addtobook.aspx?refresh='+ new Date().getTime() + '&' + 'id=' + dosid, {
	    method: "get",
	    onComplete: function(transport) { 
		    document.getElementById('message'+dosid).innerHTML = '<b>ADDED!</b>';
		    document.getElementById('messagetwo'+dosid).innerHTML = '<b>ADDED!</b>';
		    document.getElementById('dosrow'+dosid).style.backgroundColor='#F9F9F9';
		    //document.getElementById("searchindicator").style.display='none';
		    }//-onSuccess
	      }//-request arguments
	    );// new ajax request	
	}
	 
//REMOVE FROM BOOK
function removefrombook(dosid){
    //AJAX REQUEST
	    new Ajax.Request('removefrombook.aspx?refresh='+ new Date().getTime() + '&' + 'id=' + dosid, {
	    method: "get",
	    onComplete: function(transport) { 
	         refreshdos('refreshdos','mybook=1');
	        document.window.refresh();
	        
	        //document.getElementById('message'+dosid).innerHTML = 'REMOVED!';
		    //document.getElementById('dosrow'+dosid).innerHTML = '';
		    //document.getElementById("searchindicator").style.display='none';
		    }//-onSuccess
	      }//-request arguments
	    );// new ajax request	
	}	    

//DOS ROLLOVER
function productrollover(){
	var x=document.getElementsByTagName("tr");
	for (var i=0;i<x.length;i++)
  	{
	if (x[i].id.indexOf("dosrow")>-1){
		var element = document.getElementById(x[i].id);
		element.style.background = 'white';
		//ROLL
		element.onmouseover = function(){
		    var messageid = this.id.replace('dosrow','');
		    document.getElementById("add"+messageid).style.display='block';
		    document.getElementById("messagetwo"+messageid).style.display='none';
		    this.style.backgroundColor='#F9F9F9';
		    this.style.borderTop = '1px solid #000000';
	        //this.style.cursor = 'pointer';
		};
		//OUT
		element.onmouseout  = function(){
		    var messageid = this.id.replace('dosrow','');
		    document.getElementById("messagetwo"+messageid).style.display='block';
		    document.getElementById("add"+messageid).style.display='none';
		    if (document.getElementById("messagetwo"+messageid).innerHTML != '<b>ADDED!</b>'){
		    this.style.backgroundColor='white';
		    }

		};
//		element.onclick = function(){
//		    var messageid = this.id.replace('dosrow','');
//	        var linkid = 'link' + messageid
//	        var thelink = document.getElementById(linkid).href;
//	        window.location.href = thelink;
//		};
	}
  	}
}

//REFRESH DOS
function refreshdos(divid,parameters){
    if (document.getElementById(divid)){
    //AJAX REQUEST
	    new Ajax.Request('/ajax/tests.aspx?refresh='+ new Date().getTime() + '&' + parameters, {
	    method: "get",
	    onComplete: function(transport) { 
		    document.getElementById(divid).innerHTML = transport.responseText;
		    document.getElementById("searchindicator").style.display='none';
		    productrollover();
		    }//-onSuccess
		    }//-request arguments
		    );// new ajax request	
	}	    
}

function buildsearchrequest(){
    return 'keyword=' + document.searchdos.keyword.value + '&catid=' + document.getElementById('searchtests_disease').value + '&method=' + document.getElementById('searchtests_method').value;
}

//VALIDATION
function validEmail(email) {
			var re = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
			return re.test(email); 
		}
		
//VALIDATION
function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}
		
//VALIDATION
function ltrim(stringToTrim) {
	return stringToTrim.replace(/^\s+/,"");
}
		
//VALIDATION
function rtrim(stringToTrim) {
	return stringToTrim.replace(/\s+$/,"");
}
		
//VALIDATION
function isFilled(elm) {
	//alert(elm.type);
	//Last Updated by Sol - 6/14/07
	switch(elm.type){
	case "text":
		if (trim(elm.value) == "" || elm.value == null){
		return false;}
		else {return true;}
		break;
	case "password":
		if (trim(elm.value) == "" || elm.value == null){
		return false;}
		else {return true;}
		break;
	case "textarea":
		if (trim(elm.value) == "" || elm.value == null){
		return false;}
		else {return true;}
		break;
	case "select-one":
		var myindex=elm.selectedIndex;
		if (myindex==0){
		return false;}
		else {return true;}
		break;
	}
}

//VALIDATION
function validateform(formname){
	//last updated on 6/14/07
	//index of is mo betta
	var x = document.forms[formname];
	var allgood = true;
	for (var i=0;i<x.length;i++){
		if (x.elements[i].className.indexOf('required')>-1) {
		 	var thisformname = x.elements[i].name;
			var thisformid = x.elements[i].id;
			if (!isFilled(x.elements[i])) {
				document.getElementById(thisformid).style.background = "#f7f4a6";
				allgood = false;
				} else {
				  document.getElementById(thisformid).style.background = "#ffffff"; 
				}
			}
		}
		if (allgood) {
			return true;
			} else {
			return false;
			}
	}

function subform(formname){
	if(validateform(formname)){		
		document.forms[formname].submit();
	}
}

//VALIDATION
function validateform(formname){
	//last updated on 6/14/07
	//index of is mo betta
	var x = document.forms[formname];
	var allgood = true;
	for (var i=0;i<x.length;i++){
		if (x.elements[i].className.indexOf('required')>-1) {
		 	var thisformname = x.elements[i].name;
			var thisformid = x.elements[i].id;
			if (!isFilled(x.elements[i])) {
				document.getElementById(thisformid).style.background = "yellow";
				allgood = false;
				} else {
				  document.getElementById(thisformid).style.background = "#fff"; 
				}
			}
		}
		if (allgood) {
			return true;
			} else {
			return false;
			}
	}

function subform(formname){
	if(validateform(formname)){		
		document.forms[formname].submit();
	}
}

function spiderform(formname,submit_butt,validateid,successid,indicatorid,ajaxpage) {
	//VALIDATE REQUIRED
	if(validateform(formname,'#f9f7cb','#f9f7cb')){	
	
		//EMAIL IS VALID?
		var email = document.getElementById("email").value; 
		if(!validEmail(email)){
			document.getElementById("email").style.background = "red"; 
			document.getElementById(validateid).innerHTML = 'Invalid Email';
			if (document.getElementById(validateid).style.display == "none"){
					Effect.Appear(validateid,'blind');alert(email);
					} else {
					Effect.Shake(validateid);
					}
			} else {
			document.getElementById(validateid).style.display = "none";
			
			document.getElementById(indicatorid).style.display = "block";
			// alert('got here to ajax post');
			//AJAX POST
			new Ajax.Request(ajaxpage, {
			method: "post",
			parameters: Form.serialize(document.forms[formname]),
			onComplete: function(transport) {		
			document.getElementById(successid).innerHTML = transport.responseText;
			document.getElementById(indicatorid).style.display = "none";
			document.getElementById(submit_butt).style.display = "none";
		
				
				}//-onSuccess
			}//-request arguments
			);// new ajax request	
			
			//document.form.formname.submit();	
			}
	}
}

function ordersupplies(formname,validateid,ajaxpage){
	//VALIDATE REQUIRED
	if(validateform(formname)){				
	
		//EMAIL IS VALID?
		var email = document.getElementById("email").value;
		if(!validEmail(email)){
			document.getElementById("email").style.background = "yellow"; 
			document.getElementById(validateid).innerHTML = 'Invalid Email';
			if (document.getElementById(validateid).style.display == "none"){
					Effect.Appear(validateid,'blind');
					} else {
					Effect.Shake(validateid);
					}
			} else {	
			//AJAX POST
			new Ajax.Request(ajaxpage, {
			method: "post",
			parameters: Form.serialize(document.forms[formname]),
			onComplete: function(transport) { 
			document.getElementById('submitform').innerHTML = '';
			document.getElementById(validateid).innerHTML = transport.responseText;	
			Effect.Appear(validateid,'blind');
			
			}//-onSuccess
			}//-request arguments
			);// new ajax request	
			}
	}
}

//MANAGE CARE LISTS
function filterregions(division){
    //AJAX REQUEST
        document.getElementById('indicatorid1').style.display = "block";
	    new Ajax.Request('/controls/mcl.aspx', {
	    method: "post",
	    parameters: Form.serialize(document.forms['mcl_form']),
	    onComplete: function(transport) { 
	        document.getElementById('indicatorid1').style.display = "none";
			document.getElementById('regionresults').innerHTML = transport.responseText;	
			Effect.Appear('regionresults','blind');
		    }//-onSuccess
	      }//-request arguments
	    );// new ajax request	
	}

function mclresults(){
    //AJAX REQUEST
        document.getElementById('indicatorid2').style.display = "block";
	    new Ajax.Request('/controls/mcl_results.aspx', {
	    method: "post",
	    parameters: Form.serialize(document.forms['mcl_form']),
	    onComplete: function(transport) {
	        document.getElementById('indicatorid2').style.display = "none"; 
			document.getElementById('mcl_results').innerHTML = transport.responseText;	
			Effect.Appear('mcl_results','blind');
		    }//-onSuccess
	      }//-request arguments
	    );// new ajax request	
	}

// row rollover scripts for test menu

function rowrollover(){
	var x=document.getElementsByTagName("div");
	for (var i=0;i<x.length;i++)
  	{
	if (x[i].id.indexOf("therow")>-1){
		var element = document.getElementById(x[i].id);
		element.onmouseover = rollover;
		element.onmouseout  = rollout;
		element.onclick = clickme;
	}
  	}
}

function clickme(){
	var messageid = this.id.replace('therow','');
	var linkid = 'link' + messageid
	var thelink = document.getElementById(linkid).href;
	window.location.href = thelink;
}

function rollover(){
	this.style.backgroundColor='#e8ecd7';
	this.style.cursor = 'pointer';
}

function rollout(){
	this.style.backgroundColor='#f3f7ea';
}


//IMAGE ROLLOVER
function rolloverInit(){
	for (var i=0; i<document.images.length; i++) {
		if (document.images[i].getAttribute('name') == "rollover") {			
			setupRollover(document.images[i]);
		}
	}
}

//IMAGE ROLLOVER
//Last Update August 1, 2008
function setupRollover(thisImage) {
	thisImage.outImage = new Image();
	thisImage.outImage.src = thisImage.src;
	thisImage.onmouseout = rollOut;
	thisImage.overImage = new Image();
	thisImage.overImage.src = thisImage.src.replace('/off/','/on/')
	thisImage.onmouseover = rollOver;	
}

//IMAGE ROLLOVER
function rollOver() {
	this.src = this.overImage.src;
}

//IMAGE ROLLOVER
function rollOut() {
	this.src = this.outImage.src;
}

window.onload = masterloader;

function masterloader(){
	rowrollover();
	rolloverInit();
	productrollover();
}

//spry ajax stuff
function loaddiv(divid,ajaxpage){
	//TABS
	
	//AJAX REQUEST
	new Ajax.Request(ajaxpage, {
	method: "get",
	onComplete: function(transport) { 
		document.getElementById(divid).innerHTML = transport.responseText;
		}//-onSuccess
		}//-request arguments
		);// new ajax request	
}
