
window.onload=initialize;

var browserIdx=1;

  if((navigator.userAgent.indexOf('MSIE')!=-1)&&(navigator.userAgent.indexOf('Opera')==-1)){
	--browserIdx;
  }

function expandTable(arg){
	
	
	if(browserIdx == 0){
		
		if(arg.tagName =='A'){
			var obj=arg.parentNode.parentNode.parentNode.parentNode.nextSibling;
			//alert(obj.tagName);
			var obj2=arg.firstChild;
			//alert(obj2.src);
			
			if (obj.style.display=='none'){
				obj.style.display='inline';
				SetCookie(obj.id,'1',10);
				//arg.innerHTML="Collapse";
				//arg.innerHTML="<img src='images/up_arrow.gif' border='0'>";
				obj2.src="images/up.png";
				obj2.alt="Collapse";
				arg.className='registrationHeader';
			} else {
				obj.style.display='none';
				SetCookie(obj.id,'0',10);
				//arg.innerHTML="Expand";
				//arg.innerHTML="<img src='images/down_arrow.gif' border='0'>";
				obj2.src="images/down.png";
				obj2.alt="Expand";
			}
			
			
			
		} else {
		
			var obj=arg.parentNode.parentNode.nextSibling;
			var obj2=arg.childNodes[1].firstChild.firstChild;
			//alert(obj2.tagName);
			
			
			if (obj.style.display=='none'){
				obj.style.display='inline';
				SetCookie(obj.id,'1',10);	
				//arg.innerHTML="Collapse";
				obj2.src="images/up.png";
			} else {
				SetCookie(obj.id,'0',10);
				obj.style.display='none';
				//arg.innerHTML="Expand";
				obj2.src="images/down.png";
			}
			
		}
	
	
	} else {
		
		if(arg.tagName =='A'){
		
			var obj=arg.parentNode.parentNode.parentNode.parentNode.nextSibling.nextSibling;
			var obj2=arg.firstChild;
			//alert(obj2.tagName);
			//alert(obj.id);
			if (obj.style.display=='none'){
				obj.style.display='inline';
				SetCookie(obj.id,'1',10);
				arg.innerHTML="<img src='images/up.png' border='0'>";
				
			} else {
				obj.style.display='none';
				SetCookie(obj.id,'0',10);
				arg.innerHTML="<img src='images/down.png' border='0'>";
			}	
			
		} else {
			
			var obj=arg.parentNode.parentNode.nextSibling.nextSibling;
			//alert(obj.tagName);
			
			if((navigator.userAgent.indexOf('Opera')!=-1)||
			    (navigator.userAgent.indexOf('Safari')!=-1)||
			    (navigator.userAgent.indexOf('KHTML')!=-1)){
				var obj2=arg.childNodes[1].childNodes[1].childNodes[0];
			} else {
				var obj2=arg.childNodes[3].childNodes[1].childNodes[0];
			}
			
			//alert(obj2.tagName);
			if (obj.style.display=='none'){
				obj.style.display='inline';
				SetCookie(obj.id,'1',10);
				//arg.innerHTML="Collapse";
				obj2.src='images/up.png';
			} else {
				obj.style.display='none';
				SetCookie(obj.id,'0',10);
				//arg.innerHTML="Expand";
				//obj2.innerHTML="<img src='images/down.png' border='0'>";
				obj2.src='images/down.png';
			}
		
		}
	
	}
}



// duplicate function with minor changes to account
// for the modified education section

function expandTable2(arg){
	
	
	if(browserIdx == 0){
		
		if(arg.tagName =='A'){
			
			/*
			var obj=arg.parentNode.parentNode.parentNode.parentNode.nextSibling.childNodes[1];
			alert(obj.style.display);
			var obj2=arg.firstChild;
			//alert(obj2.src);
			
			//the checkbox object
			var obj3=arg.parentNode.parentNode.parentNode.parentNode
			var cbxobj=obj3.getElementsByTagName('INPUT');
			var thecbx=cbxobj[0];
			
			//alert(thecbx.checked);
			
			if (obj.style.display=='none'){
				if(thecbx.checked){
					obj.style.display='inline';
					obj2.src="images/up.png";
					obj2.alt="Collapse";
					//arg.className='registrationHeader';
				}
				
			} else {
			
				obj.style.display='none';
				obj2.src="images/down.png";
				obj2.alt="Expand";
				
			} */
			
			//set a cookie to state that the table has been expanded
			
		} else {
		
			var obj=arg.parentNode.parentNode.nextSibling;
			//alert(obj.tagName);
			var obj2=arg.childNodes[2].firstChild.firstChild;
			//alert(obj2.tagName);
			var obj3=arg.parentNode.parentNode;
			var cbxobj=obj3.getElementsByTagName('INPUT');
			var thecbx=cbxobj[0];
			
			//alert(thecbx.checked);
			
			if (obj.style.display=='none'){
				if(thecbx.checked){
					SetCookie(obj.id,'1',10);
					obj.style.display='inline';
					//arg.innerHTML="Collapse";
					obj2.src="images/up.png";
				}
			} else {
				SetCookie(obj.id,'0',10);
				obj.style.display='none';
				//arg.innerHTML="Expand";
				obj2.src="images/down.png";
			}
			
		}
	
	} else {
		
		if(arg.tagName =='A'){
		   
		   /*
		   
			var obj=arg.parentNode.parentNode.parentNode.parentNode.nextSibling.nextSibling;
			var obj2=arg.firstChild;
			//alert(obj2.tagName);
			//alert(obj.id);
			if (obj.style.display=='none'){
				obj.style.display='';
				arg.innerHTML="<img src='images/up.png' border='0'>";
				
			} else {
				obj.style.display='none';
				arg.innerHTML="<img src='images/down.png' border='0'>";
			}	
			
			*/
			
		} else {
			
			var obj=arg.parentNode.parentNode.nextSibling.nextSibling;
			//alert(obj.tagName);
			var obj3=arg.parentNode.parentNode;
			var cbxobj=obj3.getElementsByTagName('INPUT');
			var thecbx=cbxobj[0];
			//use this line if firefox
			
			//alert(arg.childNodes.length);
			//use this line if opera / safari
			
			if((navigator.userAgent.indexOf('Opera')!=-1)||
			    (navigator.userAgent.indexOf('Safari')!=-1)||
			    (navigator.userAgent.indexOf('KHTML')!=-1)){
				var obj2=arg.childNodes[2].childNodes[1].childNodes[0];
			} else {
				var obj2=arg.childNodes[5].childNodes[1].childNodes[0];	
			}
			//alert(obj2.tagName);
			if (obj.style.display=='none'){
				if(thecbx.checked){
					obj.style.display='inline';
					SetCookie(obj.id,'1',10);
					//arg.innerHTML="Collapse";
					//obj2.innerHTML="<img src='images/up.png' border='0'>";
					obj2.src='images/up.png';
				}
			} else {
				obj.style.display='none';
				SetCookie(obj.id,'0',10);
				//arg.innerHTML="Expand";
				//obj2.innerHTML="<img src='images/down.png' border='0'>";
				obj2.src='images/down.png';
			}
		
		}
	
	}
}




function initialize(){

	var TableCollection=document.getElementsByTagName('TABLE');
	
	for (var x=0;x<TableCollection.length;x++){
		if(TableCollection[x].className.indexOf('formTable')!=-1){
		
			TableCollection[x].style.display='none';
				
		}
	}
	
	//show the first one
	
	for (var x=0;x<TableCollection.length;x++){
		if(TableCollection[x].className.indexOf('formTable')!=-1){
		
			TableCollection[x].style.display='inline';
			
			// toggle the icon
			var obj=TableCollection[x].parentNode.getElementsByTagName('IMG');
				obj=obj[0];
		

				obj.src='images/up.png';
			
				break;
		}
	}
	
}


function expandAll(){

	var TableCollection=document.getElementsByTagName('TABLE');
	
	for (var x=0; x < TableCollection.length; x++){
	
		if(TableCollection[x].className == 'formTable'){
		// find the image handle
		
			if(browserIdx == 0){
				var obj=TableCollection[x].parentNode.childNodes[0].childNodes[browserIdx].childNodes[0].childNodes[1].childNodes[0].childNodes[0];
			} else {
				var obj=TableCollection[x].parentNode.getElementsByTagName('IMG');
				obj=obj[0];
			}
				//alert(obj.tagName);
			//var fimage=firstImage[0];

				obj.src='images/up.png';

			
			TableCollection[x].style.display='inline';
				
		}
	}

}


function collapseAll(){

	var TableCollection=document.getElementsByTagName('TABLE');
	
	for (var x=0;x<TableCollection.length;x++){
		
		if(TableCollection[x].className == 'formTable'){
		
			if(browserIdx == 0){
				var obj=TableCollection[x].parentNode.childNodes[0].childNodes[browserIdx].childNodes[0].childNodes[1].childNodes[0].childNodes[0];
			} else {
				var obj=TableCollection[x].parentNode.getElementsByTagName('IMG');
				obj=obj[0];
			}
				//alert(obj.tagName);
			//var fimage=firstImage[0];
			if(browserIdx == 0){
				obj.src='images/down.png';
			} else {
				obj.src='images/down.png';
			}
		
		
			TableCollection[x].style.display='none';
				
		}
		
	}
	
}


////////////////////////////////////////////////////////////
//   cookie functions					  //
////////////////////////////////////////////////////////////


function SetCookie(cookieName,cookieValue,nDays) {
 var today = new Date();
 var expire = new Date();
 if (nDays==null || nDays==0) nDays=1;
 expire.setTime(today.getTime() + 3600000*24*nDays);
 document.cookie = cookieName+"="+escape(cookieValue)
                 + ";expires="+expire.toGMTString();
}

function DeleteCookie(CookieName) {
   SetCookie(CookieName,"",-1);
}


function ReadCookie(cookieName) {
 var theCookie=""+document.cookie;
 var ind=theCookie.indexOf(cookieName);
 if (ind==-1 || cookieName=="") return "";
 var ind1=theCookie.indexOf(';',ind);
 if (ind1==-1) ind1=theCookie.length; 
 return unescape(theCookie.substring(ind+cookieName.length+1,ind1));
}

function getStoredCookieStrings() {

	var obj=getElementsById();

}


//////////////////////////////////////////////////////////////
// diegos launch window routine
//////////////////////////////////////////////////////////////

var newwin;

function launchwin(winurl,winname,winfeatures)

{

        //This launches a new window and then

        //focuses it if window.focus() is supported.

        newwin = window.open(winurl,winname,winfeatures);

        if(javascript_version > 1.0)

        {

                //delay a bit here because IE4 encounters errors

                //when trying to focus a recently opened window

                setTimeout('newwin.focus();',250);

        }

}


function reDrawRows(){
	var tables
	var rowObj=document.getElementsByTagName('TR');
	var count=0;
	for(var x=0; x<rowObj.length;x++){
		//alert(rowObj[x].parentNode.tagName);
	   if((rowObj[x].parentNode.parentNode.className=='formTable')){	
		if(rowObj[x].innerHTML.indexOf('Qualification')==-1){
		  if(rowObj[x].className!='exempt'){
		    if(rowObj[x].className.indexOf('error_r')==-1){  //allow error highlighting
		       if(rowObj[x].style.display!='none'){
			   if(count % 2 == 0){
				rowObj[x].className='one';
			     } else {
				rowObj[x].className='two';	   
			     }
			   count++;
		       }   
		    }
		  }
		}
	   }
	}
}

///////////////////////////////////////////////////////////////
// Image roll over functions
///////////////////////////////////////////////////////////////

function rollOverArrow(arg){
	if (arg.src.indexOf('down')!=-1){
			arg.src='images/down_blue.png';
	} else {
			arg.src='images/up_blue.png';
	}
}


function restoreArrow(arg){
	if (arg.src.indexOf('down')!=-1){
			arg.src='images/down.png';
	} else {
			arg.src='images/up.png';
	}

}


////////////////////////////////////////////////////////////////////////
// Date drop down funcions
////////////////////////////////////////////////////////////////////////

function chkDate(){
	
	var obj1=document.getElementById('dob_month');
	var obj2=document.getElementById('dob_year');
	var obj3=document.getElementById('dob_day');
	
	if(obj1.value != ''){
	   if(obj2.value != ''){
		var mdays=daysInMonth(obj1.value,obj2.value);
		//alert(daysInMonth(obj1.value,obj2.value));
		var day=obj3.value
		removeOptions('dob_day');
			addOption('dob_day','--','');
		for (var x=1;x<=mdays;x++){
			addOption('dob_day',x,x);
		}
		obj3.value=day;
	   
	   if(obj3.value != ''){
		document.getElementById('ageCalc').innerHTML=getAge(obj3.value,obj1.value,obj2.value);
	   } 
	   }
	}
	
}	

function getAge(d,m,y) {                             
TheDate = new Date();                     
Month = TheDate.getMonth();              
Day = TheDate.getDate();                 
Year = TheDate.getYear();
if (Year< 1000)
Year+=1900
Hour = TheDate.getHours();
Minute = TheDate.getMinutes();
Second = TheDate.getSeconds();   
by = y;
bm = m;
bd = d;
bh = 0;
bmn = 0;
bs = 0;
BDate = Date.UTC(by,bm,bd,bh,bmn,bs);
if (Year<2000) {              
CDate = Date.UTC(Year,Month,Day,Hour,Minute,Second);
} else {
CDate = Date.UTC(Year,Month,Day,Hour,Minute,Second);
}
Age = CDate-BDate + (1000*60*60*24*30); 
//document.your_age.yrs.value = parseInt(((((Age/1000)/60)/60)/24)/365.25,10); 
/*document.your_age.dys.value = parseInt((((Age/1000)/60)/60)/24,10); 
document.your_age.hrs.value = parseInt(((Age/1000)/60)/60,10); 
document.your_age.mins.value = parseInt((Age/1000)/60,10);
document.your_age.secs.value = parseInt(Age/1000,10);*/

return parseInt(((((Age/1000)/60)/60)/24)/365.25,10);
}	


function daysInMonth(month,year) {
var m = [31,28,31,30,31,30,31,31,30,31,30,31];
if (month != 2) return m[month - 1];
if (year%4 != 0) return m[1];
if (year%100 == 0 && year%400 != 0) return m[1];
return m[1] + 1;
} 

function addOption(selectbox,text,value )
{
var optn = document.createElement("OPTION");
var obj=document.getElementById(selectbox);
optn.text = text;
optn.value = value;
obj.options.add(optn);
}

function removeOptions(selectbox)
{
var i;
var obj=document.getElementById(selectbox);

for(i=obj.length-1;i>=0;i--)
{
//if(obj.options[i].selected)
obj.remove(i);
}
}

////////////////////////////////////////////////////////////////////
// hide / show other fields
////////////////////////////////////////////////////////////////////

function showOther(arg){

	var obj1=document.getElementById('o1');
	var obj2=document.getElementById('o4');
	var obj3=document.getElementById('o5');
	var obj4=document.getElementById('o3');
	
	if(arg.id == 'spokenLanguage'){
		if(arg.value=='Other'){
			obj1.style.display='';
		} else {
			obj1.style.display='none';
		}
	}

	if(arg.id == 'cbx_o4'){
		if(arg.checked){
			obj2.style.display='';
		} else {
			obj2.style.display='none';
		}
	}
	
	if(arg.id == 'cbx_o5'){
		if(arg.checked){
			obj3.style.display='';
		} else {
			obj3.style.display='none';
		}
	}
	
	if(arg.id == 'cbx_o3'){
		if(arg.checked){
			obj4.style.display='';
		} else {
			obj4.style.display='none';
		}
	}
	
	
	reDrawRows();
}	


/////////////////////////////////////////////////////
//   disable 'none' fields
/////////////////////////////////////////////////////


function disableOtherBoxes(arg){

	if(browserIdx == 0){
			var obj=arg.parentNode.parentNode.parentNode;
			var cbxFields=obj.getElementsByTagName('INPUT');
			var nextRow=obj.parentNode.parentNode.parentNode.nextSibling;
			
		if(arg.checked){
			//alert(cbxFields.length);
			
			for(var x=0;x<cbxFields.length;x++){
				if(cbxFields[x].id.indexOf('cbx_n')==-1){
					cbxFields[x].disabled=true;
					cbxFields[x].checked=false;
				}
			}
			//showOther(arg)
			//alert(obj.parentNode.parentNode.parentNode.nextSibling.tagName);
			nextRow.style.display="none";
			
		} else {
			for(var x=0;x<cbxFields.length;x++){
				cbxFields[x].disabled=false;
				
			}
		}
	} else {
	
		var obj=arg.parentNode.parentNode.parentNode;
		var cbxFields=obj.getElementsByTagName('INPUT');
		var nextRow=obj.parentNode.parentNode.parentNode.nextSibling.nextSibling;	
		
		if(arg.checked){
			//alert(cbxFields.length);
			
			for(var x=0;x<cbxFields.length;x++){
				if(cbxFields[x].id.indexOf('cbx_n')==-1){
					cbxFields[x].disabled=true;
					cbxFields[x].checked=false;
				}
			}
			//showOther(arg)
			nextRow.style.display="none";
		} else {
			for(var x=0;x<cbxFields.length;x++){
				cbxFields[x].disabled=false;
				
			}
		}	
		
	}
	reDrawRows();
}


function radioButtonShowOther(arg){

	if(browserIdx == 0){
	
		var nextRow=arg.parentNode.parentNode.nextSibling;
		//alert(arg.checked);
		if(arg.value == "Other"){
		   if(arg.checked){	
			nextRow.style.display="";
		   } else {
			nextRow.style.display="none";
	           }
		} else {
		nextRow.style.display="none";
		}

	} else {
	
		var nextRow=arg.parentNode.parentNode.nextSibling.nextSibling;
		//alert(nextRow.tagName);
		if(arg.value == "Other"){
		   if(arg.checked){	
			nextRow.style.display="";
		   } else {
			nextRow.style.display="none";
	           }
		} else {
		nextRow.style.display="none";
		}
		
	}
	reDrawRows();
}


function toggleQualificationFields(arg){
	//alert();
	if(arg.checked){
		var disabled="";
	} else {
		var disabled="true";
	
	}

	if(arg.id.indexOf('cbx_q1')!=-1){
		var table=document.getElementById('tqual1');
	} else if(arg.id.indexOf('cbx_q2')!=-1){
		var table=document.getElementById('tqual2');		
	} else if(arg.id.indexOf('cbx_q3')!=-1){
		var table=document.getElementById('tqual3');		
	} else {
		var table=document.getElementById('tqual4');
	}

	if(browserIdx == 0){

	
	
			//alert(tables[x].className);
			var fields=table.getElementsByTagName('INPUT');
			//alert(fields.length);
				for(var y=0;y<fields.length;y++){	
					fields[y].disabled=disabled;
				}
				
			var fields=table.getElementsByTagName('SELECT');
				for(var y=0;y<fields.length;y++){	
					fields[y].disabled=disabled;
				}

			var fields=table.getElementsByTagName('TEXTAREA');
					for(var y=0;y<fields.length;y++){	
						fields[y].disabled=disabled;
					}	

	
	} else {
	
				//alert(tables[x].className);
			var fields=table.getElementsByTagName('INPUT');
			//alert(fields.length);
				for(var y=0;y<fields.length;y++){	
					fields[y].disabled=disabled;
				}
				
			var fields=table.getElementsByTagName('SELECT');
				for(var y=0;y<fields.length;y++){	
					fields[y].disabled=disabled;
				}

			var fields=table.getElementsByTagName('TEXTAREA');
					for(var y=0;y<fields.length;y++){	
						fields[y].disabled=disabled;
					}	
					
	}
	
	expandTable2(arg.parentNode.parentNode)

}


function disableAllEducationalTableFields(){

	var tables=document.getElementsByTagName('TABLE');

	for(var x=0;x<tables.length;x++){
		if(tables[x].className=='formTable2'){	
			
			if(browserIdx == 0){
				var cbx=tables[x].parentNode.childNodes[browserIdx].firstChild.firstChild.firstChild.firstChild;
			} else {
				var cbx=tables[x].parentNode.childNodes[1].childNodes[1].childNodes[0].childNodes[1].childNodes[1];
				//alert(cbx.tagName);
			}
			
			if(!cbx.checked){
			
				var fields=tables[x].getElementsByTagName('INPUT');
				for(var y=0;y<fields.length;y++){	
					fields[y].disabled='true';
				}
				
				var fields=tables[x].getElementsByTagName('SELECT');
				for(var y=0;y<fields.length;y++){	
					fields[y].disabled='true';
				}

				var fields=tables[x].getElementsByTagName('TEXTAREA');
				for(var y=0;y<fields.length;y++){	
					fields[y].disabled='true';
				}	
				
			}
		}
	}

}


function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

function showErrors(arg){
   var obj=document.getElementById('updateValidationErrors');
   //alert(arg.tagName);
    if(arg.innerHTML=="Show Errors"){
	obj.style.display='';
	arg.innerHTML="Hide Errors";
    } else {
	obj.style.display='none';
	arg.innerHTML="Show Errors";
    }
}

