function getFocus(candregistrationform){
		//When the page loads focus on first name field
		document.candregistrationform[getLocalValue('CAND_FIRSTNAME')].focus();
}

function submitregistration() {
	showStatus(true);
	var formname = 'candregistrationform';
	var formobj = document.getElementById(formname);
	var pdelim = formobj.PDELIM.value;
	var vdelim = formobj.VDELIM.value;
	var validatorlist = formobj.VALIDATION_PARAMS.value;
	var validatedfields = validatorlist.split(vdelim);
	
	for ( var i = 0; i < validatedfields.length; i++ ) {
		var params = validatedfields[i].split(pdelim);		
		var obj = getFormElement(formname, params[0]);
		if ( obj != null ) {
			if ( vAlert(params[3], obj.value, params[1], params[2], 0) == false ) {
				showStatus(false);
				return;
			}
			
			if ( params[0] == getLocalValue('WEB_LOGIN_PASSWORD') ) {
				var confirmpwd = formobj.CONFIRMPASSWORD.value;
				if ( obj.value != confirmpwd ) {
					alert(getLocalValue('MSG_SECURITY_PWD_NO_MATCH'));
					showStatus(false);
					return;
				}
			}
		}
	}
	
	if ( validateUser() ) {
		// get the certifications
		if ( formobj.selected_certs.value != '' ) {
			var certname = getLocalValue('CAND_CERT');
			var certarray = formobj.selected_certs.value.split(',');
			for ( var i = 0; i < certarray.length; i++ ) {
				var cert = certarray[i];
				var cname = certname.replace('$$', '$' + (i+1) + '$');
				var cobj = getFormElement(formname, cname);
				if ( cobj != null ) {
					cobj.value = cert;
				}
			}
		}
		
		// get the skills
		if ( formobj.selected_certs.value != '' ) {
			var skillname = getLocalValue('CAND_SKILL');
			var skillarray = formobj.selected_skills.value.split(',');
			for ( var i = 0; i < skillarray.length; i++ ) {
				var skill = skillarray[i];
				var sname = skillname.replace('$$', '$' + (i+1) + '$');
				var sobj = getFormElement(formname, sname);
				if ( sobj != null )
					sobj.value = skill;				
			}
		}
		
		// create the full name:
		var fullname = getFormElement(formname, getLocalValue('CAND_FULLNAME'));
		var firstname = getFormElement(formname, getLocalValue('CAND_FIRSTNAME'));
		var middlename = getFormElement(formname, getLocalValue('CAND_MIDDLENAME'));
		var lastname = getFormElement(formname, getLocalValue('CAND_LASTNAME'));	
		fullname.value = firstname.value + ' ' + middlename.value + ' ' + lastname.value;
		
		// submit the form
		formobj.encoding = "multipart/form-data";
		formobj.method = "post";
		formobj.action = getGlobalValue('SITE_CONTEXT') + '/login/candregistration_post_view.jsp';
		formobj.submit();
	}	
	
	showStatus(false);
}

function validateUser() {
	var formname = 'candregistrationform';
	var prefix = '&' + getGlobalValue('ADAPT_PREFIX');
	var searchname = '&' + getGlobalValue('SEARCHFORM_NAME');
	var countonly = '&' + getGlobalValue('SEARCHFORM_COUNTONLY') + '=yes';
	var obj, email1 = '', email2 = '', login = '';
	
	obj = getFormElement(formname, getLocalValue('CAND_EMAIL'));
	if ( obj != null )
		email1 = prefix + 'Email1=' + obj.value;
		
	obj = getFormElement(formname, getLocalValue('CAND_EMAIL2'));
	if ( obj != null ) {
		if ( obj.value != '' )
			email2 = prefix + 'Email1=' + obj.value;
	}
		
	obj = getFormElement(formname, getLocalValue('WEB_LOGIN_LOGIN'));
	if ( obj != null )
		login = prefix + 'LoginName=' + obj.value;		
		
	// check the first email address
	var params = searchname + '=US_Candidate' + email1 + countonly;
	var count = runSearch( params );
	if ( Number(count) > 0 ) {
		alert(getLocalValue('MSG_CAND_REG_USER_EXISTS'));
		return false;
	}
	
	// now check the second email address
	if ( email2 != '' ) {
		params = searchname + '=US_Candidate' + email2 + countonly;
		var count = runSearch( params );
		if ( Number(count) > 0 ) {
			alert(getLocalValue('MSG_CAND_REG_USER_EXISTS'));
			return false;
		}
	}
	
	// now check the login
	params = searchname + '=US_WebLoginSearch' + login + countonly;
	var count = runSearch( params );
	if ( Number(count) > 0 ) {
		alert(getLocalValue('MSG_CAND_REG_LOGIN_EXISTS'));
		return false;
	}
	
	return true;
}