function changeToPublicSearch(){
sform = document.getElementById("records_search");
sform.action="/web/quality/laboratories.xhtml";
sform.submit();
}
function changeToAdminSearch(){
sform = document.getElementById("records_search");
sform.action="/web/quality/laboratories_admin.xhtml";
sform.submit();
}
function changeToProvidersAdminSearch(){
sform = document.getElementById("records_search");
sform.action="/web/quality/eqa_providers_admin.xhtml";
sform.submit();
}
function checkSurveyQAu(){
/* DEPENDING ON FORM */
	/* QAU */	
	var selected1=0;
	var selected2=0;
	var selected3=0;
	var message3="";
	var error3=false;
	
	$$('select[id^=dd_function_id_new_]').each(function(el4){
		var selected = el4.options[el4.selectedIndex].value;
		if(selected=="1") selected1++;
		if(selected=="2") selected2++;
		if(selected=="3") selected3++;
	});
	if(selected1>1){
		message3 = message3 + "Please select only one lab director.\nbreak;";
		error3=true;
	}
	if(selected2>1){
		message3 = message3 + "Please select only one department director.\nbreak;";
		error3=true;
	}
	if(selected3>1){
		message3 = message3 + "Please select only one quality manager.\nbreak;";
		error3=true;
	}	
	
	
	var contacts  = $(document).getElements('input[name=primary_contact]');
	if(contacts && contacts.length > 0  && hasPrimary(contacts)){
			if(!isChecked2(contacts)){
				message3 = message3 + "Please select a primary contact ('PC').\nbreak;";
				error3=true;	
			}	
	}		
	var qm=false;
	var ld=false;
	var dd=false;
	var qm_id="";
	var ld_id="";
	var dd_id="";
	
	var inputfunc =  $$('input[name^=function_id_]');
	    inputfunc.each(function(function_id){
	      if(!function_id.getParent().getParent().hasClass("unvisible")){
	         if(function_id.value=="1"){
	           var tempname=function_id.name;
	           if(tempname.match("_old")==null){
		           ld_id = tempname.replace(/function_id/,"");
		       }
	           ld=true;
	         }
	         if(function_id.value=="2"){
	         	var tempname=function_id.name;
	           if(tempname.match("_old")==null){
		           dd_id = tempname.replace(/function_id/,"");
		       }
	           dd=true;
	         }
	         if(function_id.value=="3"){
	         var tempname=function_id.name;
	           if(tempname.match("_old")==null){
		           qm_id = tempname.replace(/function_id/,"");
		       }
	           qm=true;
	         }
	        } 
	    });
	    var selectfunc =  $$('select[name^=function_id_]');
	    selectfunc.each(function(function_id){
	      if(!function_id.getParent().getParent().hasClass("unvisible")){
	         var test_elem = function_id.getElement("option[value=1]")
	         if(test_elem){
	         	if(test_elem.selected){
	         	 var tempname=function_id.name;
	           if(tempname.match("_old")==null){
		           ld_id = tempname.replace(/function_id/,"");
		       }
	          		ld=true;
	         	}
	         }
	         test_elem = function_id.getElement("option[value=2]")
	         if(test_elem){
	         	if(test_elem.selected){
	         	 var tempname=function_id.name;
	           if(tempname.match("_old")==null){
		           dd_id = tempname.replace(/function_id/,"");
		       }
	          		dd=true;
	         	}
	         }
	         test_elem = function_id.getElement("option[value=3]")
	         if(test_elem){
	         	if(test_elem.selected){
	         	 var tempname=function_id.name;
	           if(tempname.match("_old")==null){
		           qm_id = tempname.replace(/function_id/,"");
		       }
	          		qm=true;
	         	}
	         }
	      } 
	    });
	
	var qmanager  = $('quality_manager_yes');
	if(qmanager){		
		if(qmanager.checked){
	   	    if(!qm){
	   		     message3 = message3 + "You selected 'Yes' for 'Does your lab have a Quality manager', but did not enter a Primary Quality Manager in the 'Persons' section.\nbreak;";
	    		 error3=true;
	     	}
		}	
	}
	if(qm){
	   	if(qmanager){		
			if(!qmanager.checked){
				message3 = message3 + "You entered a Primary Quality Manager in the 'Persons' section, but chose 'No' for 'Does your lab have a Quality manager'. Please change one of the 2 questions.\nbreak;";
	    		error3=true;
			}
		}	
	}
	if(!ld){
	     message3 = message3 + "Please add in the lab director.\nbreak;";
		 error3=true;
	}
	if(!dd){
	     message3 = message3 + "Please add in the department director.\nbreak;";
		 error3=true;
	}     	
	
	
	if(ld_id!=""){
		var email_ld=document.getElementById("email"+ld_id);
		var email_ld = $(email_ld);
		if(email_ld){
			if(isEmpty(email_ld)){
			   			message3 = message3 + "You did not enter an e-mail address for the lab director.\nbreak;";
							error3=true;
							email_ld.getParent().getParent().addClass('requiredCheck');
							email_ld.getParent().getParent().addClass('requiredCheck');
				
			   }else{
			      if(isEmail(email_ld)){
			      message3 = message3 + "You entered an invalid e-mail address for the lab director.\nbreak;";
							error3=true;
							email_ld.getParent().getParent().addClass('requiredCheck');
							email_ld.getParent().getParent().addClass('requiredCheck');
			      }else{
			      			email_ld.getParent().getParent().removeClass('requiredCheck');
							email_ld.getParent().getParent().removeClass('requiredCheck');
			      }
			   }
	}
	}
	
	if(dd_id!=""){
		var email_ld=document.getElementById("email"+dd_id);
		var email_ld = $(email_ld);
		if(email_ld){
			if(isEmpty(email_ld)){
			   			message3 = message3 + "You did not enter an e-mail address for the department director.\nbreak;";
							error3=true;
							email_ld.getParent().getParent().addClass('requiredCheck');
							email_ld.getParent().getParent().addClass('requiredCheck');
				
			   }else{
			      if(isEmail(email_ld)){
			      message3 = message3 + "You entered an invalid e-mail address for the department director.\nbreak;";
							error3=true;
							email_ld.getParent().getParent().addClass('requiredCheck');
							email_ld.getParent().getParent().addClass('requiredCheck');
			      }else{
			      			email_ld.getParent().getParent().removeClass('requiredCheck');
							email_ld.getParent().getParent().removeClass('requiredCheck');
			      }
			   }
	}
	}
	
	if(qm_id!=""){
		var email_ld=document.getElementById("email"+qm_id);
		var email_ld = $(email_ld);
		if(email_ld){
			if(isEmpty(email_ld)){
			   			message3 = message3 + "You did not enter an e-mail address for the quality manager.\nbreak;";
							error3=true;
							email_ld.getParent().getParent().addClass('requiredCheck');
							email_ld.getParent().getParent().addClass('requiredCheck');
				
			   }else{
			      if(isEmail(email_ld)){
			      message3 = message3 + "You entered an invalid e-mail address for the quality manager.\nbreak;";
							error3=true;
							email_ld.getParent().getParent().addClass('requiredCheck');
							email_ld.getParent().getParent().addClass('requiredCheck');
			      }else{
			      			email_ld.getParent().getParent().removeClass('requiredCheck');
							email_ld.getParent().getParent().removeClass('requiredCheck');
			      }
			   }
	}
	}
	if(error3){
      survey_message = survey_message + "Persons\nbreak;";
	  survey_error=true;
	  survey_message = survey_message + message3
	  survey_message=survey_message+"--group--";
	}	

}



/* CHECKFORM */
function checkform(sform){
	survey_message="";
	survey_error="";
	
	
	var groups = $$('div.group_holder');
	groups.each(function(el3){
		if(!el3.hasClass('unvisible')){
			var message2="";
			survey_error2=false;
			if(el3.getElement('h2')){
				var h2 = el3.getElement('h2').getText();
				message2 = message2 + h2 + '\nbreak;';
				message2 += checkSurveyRows(el3);
				message2 += checkSurveyInputs(el3);	
				message2 += checkSurveyNumbers(el3);	
				message2 += checkSurveyDropdowns(el3);
				message2 += checkSurveyCollections(el3);
				message2 += checkSurveyChoices(el3);	
				message2 += checkSurveyBooleans(el3);
				
				message2=message2+"--group--";
				
				if(survey_error2){
				  survey_error=true;
				  survey_message = survey_message + message2
				}
			}
		}
	});
	

    var person_groups  = $$('#group_holder_persons');
	if(person_groups && person_groups.length > 0){
		checkSurveyQAu();
	}
	
	checkSurveyDependencies();		
			 
	var nowd = new Date();
	var t = nowd.getTime();
	document.getElementById('trace_date').value=t;
	
	if(survey_error){
		showErrors(survey_message);
		return false;
	}else{
		return true;
	}
}



function checkform2(sform){
	survey_message ="";
	survey_error=false;
	
	
	
	var groups = $$('div.group_holder');
	groups.each(function(el3){
		if(!el3.hasClass('unvisible')){
			var message2="";
			survey_error2=false;
			if(el3.getElement('h2')){
				var h2 = el3.getElement('h2').getText();
				message2 = message2 + h2 + '\nbreak;';
				
				message2 += checkSurveyNumbers(el3);	
				
				message2=message2+"--group--";
				
				if(survey_error2){
				  survey_error=true;
				  survey_message = survey_message + message2
				}
			}
		}
	});


	/* DEPENDING ON FORM */
	/* QAU */	
	var message3 ="";
	var error3=false;
	var contacts  = $(document).getElements('input[name=primary_contact]');
	if(contacts && contacts.length > 0 && hasPrimary(contacts)){
			if(!isChecked2(contacts)){
				message3 = message3 + "\nbreak;Please select a primary contact ('PC').\nbreak;";
				error3=true;	
			}else{
			   var checkedobject = getCheckedObject(contacts);
			   var objectid = checkedobject.value;
			   var emailobject;
			   if(objectid.match("_")!=null){
			     emailobject = $('email'+objectid);
			   }else{
			   	 emailobject = $('email_'+objectid);
			   }
			   
			   if(isEmpty(emailobject)){
			   			message3 = message3 + "You did not enter an e-mail address for the primary contact.\nbreak;";
							error3=true;
							emailobject.getParent().getParent().addClass('requiredCheck');
							emailobject.getParent().getParent().addClass('requiredCheck');
				
			   }else{
			      if(isEmail(emailobject)){
			      message3 = message3 + "You entered an invalid e-mail address for the primary contact.\nbreak;";
							error3=true;
							emailobject.getParent().getParent().addClass('requiredCheck');
							emailobject.getParent().getParent().addClass('requiredCheck');
			      }else{
			      emailobject.getParent().getParent().removeClass('requiredCheck');
							emailobject.getParent().getParent().removeClass('requiredCheck');
			      }
			   }
			}
	}
					
			
	if(error3){
      survey_message = survey_message + "Persons\nbreak;";
	  survey_error=true;
	  survey_message = survey_message + message3
	  survey_message=survey_message+"--group--";
	}	

	var nowd = new Date();
	var t = nowd.getTime();
	document.getElementById('trace_date').value=t;
	
	
	
	if(survey_error){
	   showErrors(survey_message);
	   return false;
	}else{
		return true;
		$('save_type').setProperty("value",save_type);
	
	}
}



function removeErrors(button){
$(button).getParent().addClass("unvisible");
$("darkenBackground").addClass("unvisible");
}


function showFinalQuestions(){
    $("darkenBackground").setStyle('z-index','50');
	$("darkenBackground").removeClass("unvisible");
	
	$("popupFinal").setStyle('z-index','60');
	$('popupFinal').removeClass('unvisible');
	
	$('popupFinal').getElement("p[class=head]").setText("Please answer these final questions.");
	var test=$('popupFinalText');
	
	
	$$("div[id^=final_]").each(function(item, index){
	   item.removeClass("unvisible");
	   item.injectInside(test);
	});
	
	
	$('popupFinal').addClass('popup');
	window.scrollTo(0,0);
}


function hasPrimary(collection){
	var count=0;
	collection.each(function(el){
	    if(!el.getParent().getParent().getParent().hasClass('unvisible')){
		    count++; 
		}
	});
	if(count>0)return true;
	else return false;
}

