function toggleShowHideRow ( stringObject ) {
	objElement = document.getElementById( stringObject );
	if ( objElement.style.display == 'table-row' ){
		objElement.style.display = 'none';
	} else {
		objElement.style.display = 'table-row';
	}
}

function toggleShowHide ( stringObject, classhide ) {
        objElement = document.getElementById( stringObject );

	arrElements = getElementsByClassName ( 'select', classhide)
	for(i=0;i<arrElements.length;i++){
		arrElements[i].style.display = 'none';
	}
	arrElements = getElementsByClassName ( 'input', classhide)
	for(i=0;i<arrElements.length;i++){
		arrElements[i].style.display = 'none';
	}

        if(classhide == 'filteroption'){
            arrElements = getElementsByClassName ( 'div', classhide)
            for(i=0;i<arrElements.length;i++){
                    arrElements[i].style.display = 'none';
            }
            objElement.style.display = 'block';
        } else {
            objElement.style.display = 'inline';
        }

}

//GET ELEMENTS BY CLASS
function getElementsByClassName(stringElementType, stringClassName) {
	d = document.getElementsByTagName(stringElementType);
	j=0;
	var cl = new Array()
	for(i=0;i<d.length;i++){
		if(d[i].className == stringClassName){
			cl[j] = d[i];
			j++
		}
	}
	return cl
}

function individualSubmit(form,formaction){
	if((document.getElementById('invoice'))&&(document.getElementById('invoice').checked)){
		document.forms[form].action = "callback.php";
	} else {
		document.forms[form].action = formaction;
	}
	document.forms[form].submit();
}

function embeddedSubmit(form,formaction){
	if((document.getElementById('invoice'))&&(document.getElementById('invoice').checked)){
		document.forms[form].action = "../jlc/callback.php";
	} else {
		document.forms[form].action = formaction;
	}
	document.forms[form].submit();
}


// VALIDATION
function validate( form ) {
	arrElements = getElementsByClassName ( 'td', 'err')
	for(i=0;i<arrElements.length;i++){
		arrElements[i].innerHTML = '';
	}
	blnReturn = true;
	mNv=form.name.value;
	if (mNv=='') {
		blnReturn=false;
		document.getElementById("name_err").innerHTML="<div>Name cannot be blank</div>";
	}
		
	mNv1=form.pid.value;
	mNv2=form.other.value;
	if (((mNv1=='other')||(mNv1=='2902')||(mNv1=='441'))&&(mNv2=='')) {
		blnReturn=false;
		document.getElementById("other_err").innerHTML="<div>You must specify an Institution</div>";
	}
	
	mNv1=form.pid.value;
	if (mNv1==0) {
		blnReturn=false;
		document.getElementById("selectinst_err").innerHTML="<div>You must select an Institution</div>";
	}
	
	mNv=form.mail.value;
	if (mNv=='') {
		blnReturn=false;
		document.getElementById("mail_err").innerHTML="<div>E-mail cannot be blank</div>";
	}
	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	var address = form.mail.value;
	if(reg.test(address) == false) {
		blnReturn=false;
		document.getElementById("mail_err").innerHTML="<div>This is not a valid Email address</div>";
	}
	
	//password
	p1=form.pass.value;
	p2=form.re_pass.value;
	p3=form.pass_set.value;
	if(p1!=p2){
		blnReturn=false;
		document.getElementById("pass_err").innerHTML="<div>Password fields dont match</div>";
		document.getElementById("re_pass_err").innerHTML="<div>Password fields dont match</div>";
	} else {
		if((p3!=1)&&(p1=='')){
			blnReturn=false;
			document.getElementById("pass_err").innerHTML="<div>Password cannot be blank</div>";
		}
	}
		
	mNv=form.first.value;
	if (mNv=='') {
		blnReturn=false;
		document.getElementById("first_err").innerHTML="<div>First name cannot be blank</div>";
	}
	mNv=form.last.value;
	if (mNv=='') {
		blnReturn=false;
		document.getElementById("last_err").innerHTML="<div>Last Name cannot be blank</div>";
	}
	mNv=form.address1.value;
	if (mNv=='') {
		blnReturn=false;
		document.getElementById("address1_err").innerHTML="<div>Address line 1 cannot be blank</div>";
	}
	mNv=form.city.value;
	if (mNv=='') {
		blnReturn=false;
		document.getElementById("city_err").innerHTML="<div>City cannot be blank</div>";
	}
	mNv=form.country.value;
	if (mNv=='') {
		blnReturn=false;
		document.getElementById("country_err").innerHTML="<div>Country cannot be blank</div>";
	}
	mNv=form.tandc.checked;
	if (mNv == false){
		blnReturn=false;
		document.getElementById("tandc_err").innerHTML="<div>You must accept the Terms and Conditions</div>";
	}
	if (blnReturn==false) {
		//alert('Please complete all fields.');
		window.scrollTo(0,0);
	}
	return blnReturn;
}


// INSTITUTION VALIDATION
function institutionValidate( form ) {
	arrElements = getElementsByClassName ( 'td', 'err')
	for(i=0;i<arrElements.length;i++){
		arrElements[i].innerHTML = '';
	}
	blnReturn = true;
	mNv=form.name.value;
	if (mNv=='') {
		blnReturn=false;
		document.getElementById("institutionName_err").innerHTML="<div>Name of Institution cannot be blank</div>";
	}
	
	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	var address = form.contact_email.value;
	if(reg.test(address) == false) {
		blnReturn=false;
		document.getElementById("contact_email_err").innerHTML="<div>This is not a valid Email address</div>";
	}
	
	//password
	p1=form.pass.value;
	p2=form.re_pass.value;
	p3=form.pass_set.value;
	if(p1!=p2){
		blnReturn=false;
		document.getElementById("pass_err").innerHTML="<div>Password fields dont match</div>";
		document.getElementById("re_pass_err").innerHTML="<div>Password fields dont match</div>";
	} else {
		if((p3!=1)&&(p1=='')){
			blnReturn=false;
			document.getElementById("pass_err").innerHTML="<div>Password cannot be blank</div>";
		}
	}
	
	mNv=form.address1.value;
	if (mNv=='') {
		blnReturn=false;
		document.getElementById("address1_err").innerHTML="<div>Address line 1 cannot be blank</div>";
	}
	mNv=form.city.value;
	if (mNv=='') {
		blnReturn=false;
		document.getElementById("city_err").innerHTML="<div>City cannot be blank</div>";
	}
	/*mNv=form.country.value;
	if (mNv=='') {
		blnReturn=false;
		document.getElementById("country_err").innerHTML="<div>Country cannot be blank</div>";
	}*/
	
	mNv=form.contact_name.value;
	if (mNv=='') {
		blnReturn=false;
		document.getElementById("contact_name_err").innerHTML="<div>Contact name cannot be blank</div>";
	}
	
	mNv=form.tandc.checked;
	if (mNv == false){
		blnReturn=false;
		document.getElementById("tandc_err").innerHTML="<div>You must accept the Terms and Conditions</div>";
	}
	if (blnReturn==false) {
		//alert('Please complete all fields.');
		window.scrollTo(0,0);
	}
	return blnReturn;
}

function checkOther(form){
	mNv1=document.getElementById("pid").value;
	mNv2=document.getElementById("other_specify");
	if((mNv1=='other')||(mNv1=='2902')||(mNv1=='441')){ //IF OTHER IS SELECTED, OR AMEE OR ASMEE
		mNv2.style.display="table-row";
	} else {
		mNv2.style.display="none";
	}
}

function checkboxSystem(chk,name){
	if (document.getElementById(chk).checked == true){
		selectAll(name);
	} else {
		selectNone(name);
	}
}

function selectAll(name){
	d = getElementsByClassName( 'input', name );
	for(i=0;i<d.length;i++){
		if (!d[i].disabled) {
			d[i].checked = true;
		}
	}
}

function selectNone(name){
	d = getElementsByClassName( 'input', name );
	for(i=0;i<d.length;i++){
		d[i].checked = false;
	}
}
