var avail_email="";

function val_all(){
	//form elements
		var uname=document.getElementById("uname");
		var pwd=document.getElementById("pwd");
		var cpwd=document.getElementById("cpwd");
		var fname=document.getElementById("fname");
		var email=document.getElementById("email");
		var dob=document.getElementById("dob");
		//var cName=document.getElementById("cName");
		var cntry=document.getElementById("cntry");
		var location=document.getElementById("location");
		
		var industry=document.getElementById("industry");
		var qualification=document.getElementById("qualification");
		var institute=document.getElementById("institute");
		var gyear=document.getElementById("gyear");
		var keyskills=document.getElementById("keyskills");
		
		
			var curemp=document.getElementById("curemp");
			var curdesign=document.getElementById("curdesign");
			var jobprof=document.getElementById("jobprof");
				
		var headline=document.getElementById("headline");
		var cpresume1=document.getElementById("cpresume1");

var farea=document.getElementById("farea");

		var captcha=document.getElementById("txtCaptcha");
	//elments validation
		var err=val_uname(uname,'1');
		err=val_password(pwd);
		err=val_confirmPass(cpwd,pwd);
		err=val_name(fname);		
		err=val_email(email,'1');
		err=val_dob(dob);
		//err=val_gender();		
		err=val_country(cntry);
		err=val_loc(location);	
		
		val_Phone();
		
		err=val_qualification(qualification);		
		err=val_institute(institute);		
		err=val_gyear(gyear);
	
		val_YearOfExp();
		val_salary();
		
		err=val_industry(industry);	
		
		err=val_farea(farea);	
		
		err=val_keyskills(keyskills);
		
		if(isVisibleElm(document.createacc.curemp)){
			
		err=val_curemp(curemp);	
		err=val_curdesign(curdesign);	
		err=val_jobprof(jobprof);	
		
		}
		val_duration('0');
		err=val_headline(headline);	
		err=val_cpresume1(cpresume1);	
		
		err=val_captcha(captcha);
		
		
		//err=val_qali(qualif);
//		err=val_spliz(speci);	
		
		
		val_allPage2();
		err1=document.getElementById('checkemail').innerHTML;
		err2=document.getElementById('username').innerHTML;
		err3=document.getElementById('result').innerHTML;
if(err == false  || err1!='' || err2!='' || err3=='<h1 style="color: rgb(255, 0, 0);" id="result">The characters you entered didnot match the word verification. Please try again.</h1>'){
		
		if(err1!='')
		{
		document.getElementById("email").focus();
		}
		if(err2!='')
		{
		document.getElementById("uname").focus();
		}
		if(err3!='')
		{
		document.getElementById("txtCaptcha").focus();
		}
		
		return false;
	}
	else
	{
		err3=document.getElementById('result').style.display='none';
		document.createacc.submit();
		}
	
	
	
}

  //validate uname
function val_captcha(o){
	
	if(is_empty(o.value) == false){
		val_failed(o,"Please enter captcha");
		return false;
	}
	
	else{ val_success(o.id);}
		
}
function checkAlreadyusername(username)
{
	try{
		// Opera 8.0+, Firefox, Safari
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		// Internet Explorer Browsers
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				// Something went wrong
				alert("Your browser broke!");
				return false;
			}
		}
	}
	// Create a function that will receive data sent from the server
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4)
		{	
							
			if(ajaxRequest.responseText!='')
			{
				document.getElementById('username').innerHTML  = ajaxRequest.responseText;
				//document.getElementById('username_valid').value='';				
				return false;
			}
			else
			{
				document.getElementById('username').innerHTML ='';
				
				//document.getElementById('username_valid').value='1';	
				return true;
			}			
		}
	}
	
	var queryString = "?username=" + username;
	ajaxRequest.open("GET", "email_check.php" + queryString, true);
	ajaxRequest.send(null); 

	 
	 }
	 
function val_some(){
	//form elements
		var uname=document.getElementById("uname");
		var pwd=document.getElementById("pwd");
		var cpwd=document.getElementById("cpwd");
		var fname=document.getElementById("fname");
		var email=document.getElementById("email");
		var dob=document.getElementById("dob");
		var captcha=document.getElementById("txtCaptcha");
		
	//elments validation
		var err=val_uname(uname,'1');
		err=val_password(pwd);
		err=val_confirmPass(cpwd,pwd);
		err=val_name(fname);		
		err=val_email(email,'1');
		err=val_dob(dob);
			
		val_comePage2();
		err=val_captcha(captcha);

		err1=document.getElementById('checkemail').innerHTML;
		err2=document.getElementById('username').innerHTML;
		err3=document.getElementById('result').innerHTML;


	if(err == false  || err1!='' || err2!='' || err3=='<h1 style="color: rgb(255, 0, 0);" id="result">The characters you entered didnot match the word verification. Please try again.</h1>'){
		
		if(err1!='')
		{
		document.getElementById("email").focus();
		}
		if(err2!='')
		{
		document.getElementById("uname").focus();
		}
		if(err3!='')
		{
		document.getElementById("txtCaptcha").focus();
		}


return false;
	}
	else
	{
		err3=document.getElementById('result').style.display='none';
		document.createacc.submit();
		}
	
	
	
}


//Validate uname
function val_uname(o,i){
	hideToolTip(o);
	if(is_empty(o.value) == false){
		val_failed(o,"Please enter your Username");
		return false;
	}
	else{ val_success(o.id);}
	if(sapcevalidate(o.value) == true || specialchar_check(o.value) == 0){
		val_failed(o,"Invalid Username. Special characters or spaces are not allowed");
		return false;
	}
	else{ val_success(o.id);}
	if(o.value.length < 5){
		val_failed(o,"Minimum 5 characters");
		return false;
	}
	
}
//Check uname availablity
function availablity_uname(o,strUname){
	avail_uname="";
	val_success(o.id);
	document.getElementById("chackingmsg").innerHTML="<br clear='all'><img src='images/iup-arrow.gif' border='0' alt=''>&nbsp;Checking availability of username...";
	document.getElementById("err_uname").innerHTML="&nbsp;<img src='images/sloading1.gif' border='0' alt='' class='icon icopos'>";
	var pars="selectedIndex="+strUname+"&objname=checkPid";
	var url ='email_check.php';
	var sucReqUname=function(t){
		document.getElementById("chackingmsg").innerHTML="";
		avail_uname=t;
		if(t == "1"){
			val_failed(o,"Sorry! Username already exists. Please choose another");
			return false;
		}
		else{ val_success(o.id);}
	}
	getAjaxRes(url,pars,sucReqUname);

}
//validate password
function val_password(o){
	hideToolTip(o);
	if(is_empty(o.value) == false){
		val_failed(o,"Please enter your password");
		return false;
	}
	else{ val_success(o.id);}
	if(sapcevalidate(o.value) == true){
		val_failed(o,"Invalid password.Spaces are not allowed");
		return false;
	}
	else{ val_success(o.id);}
	if(o.value.length < 5){
		val_failed(o,"Minimum 5 characters");
		return false;
	}
	else{ val_success(o.id);}	
}
function val_confirmPass(o1,o2){
	hideToolTip(o1);
	if(is_empty(o1.value) == false){
		val_failed(o1,"Please enter your password");
		return false;
	}
	else{ val_success(o1.id);}
	if(o1.value != o2.value){
		val_failed(o1,"Passwords do not match");
		return false;
	}
	else{ val_success(o1.id);}	
	
}
//valiodate name
function val_name(o){
	hideToolTip(o);
	if(is_empty(o.value) == false){
		val_failed(o,"Please enter your name");
		return false;
	}
	else{ val_success(o.id);}
	if(specialchar_check(o.value) == 0){
		val_failed(o,"Invalid name. Special characters are not allowed");
		return false;
	}
	else{ val_success(o.id);}

	if(isAlpha(o.value) == false){
		val_failed(o,"Invalid name. Numbers are not allowed");
		return false;
	}
	else{ val_success(o.id);}
	
	if(o.value.length < 3){
		val_failed(o,"Minimum 3 characters");
		return false;
	}
	else{ val_success(o.id);}
}



//Validate employer name
function val_curemp(o,i){
	hideToolTip(o);
	if(is_empty(o.value) == false){
		val_failed(o,"Please enter your current emploer name");
		return false;
	}
	else{ val_success(o.id);}	
	
	
}

//Validate resume headline
function val_headline(o,i){
	hideToolTip(o);
	if(is_empty(o.value) == false){
		val_failed(o,"Please enter your resume headline");
		return false;
	}
	else{ val_success(o.id);}	
	
	
}



function checkAlreadyEmail(email)
{
	 
	try{
		// Opera 8.0+, Firefox, Safari
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		// Internet Explorer Browsers
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				// Something went wrong
				alert("Your browser broke!");
				return false;
			}
		}
	}
	// Create a function that will receive data sent from the server
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4)
		{	
			if(ajaxRequest.responseText!='')
			{
				document.getElementById('checkemail').innerHTML  = ajaxRequest.responseText;
				//document.getElementById('email_valid').value='';				
				return false;
			}
			else
			{
				document.getElementById('checkemail').innerHTML ='';
				//document.getElementById('email_valid').value='1';	
				return true;
			}			
		}
	}
	
	var queryString = "?email=" + email;
	ajaxRequest.open("GET", "email_check.php" + queryString, true);
	ajaxRequest.send(null); 

	 
	 }
	 

//validate email
function val_email(o,i){
	hideToolTip(o);
	if(is_empty(o.value) == false){
		val_failed(o,"Please enter your Email address");
		return false;
	}
	else{ val_success(o.id);}
	if(is_email(o.value) == false){
		val_failed(o,"Invalid Email Address");
		return false;
	}
	else{ val_success(o.id);}

	
	/*var availval=checkavail(o.value,'checkEmail');*/
	if(avail_email == 2){
		val_failed(o,"Invalid Email Address");
		return false;
	}	
}


////validate email
//function val_email(o,i){
//	hideToolTip(o);
//	if(is_empty(o.value) == false){
//		val_failed(o,"Please enter your Email address");
//		return false;
//	}
//	else{ val_success(o.id);}
//	if(is_email(o.value) == false){
//		val_failed(o,"Invalid Email Address");
//		return false;
//	}
//	else{ val_success(o.id);}
//
//	if(i != "1"){
//		availablity_email(o,o.value);
//	}
//	/*var availval=checkavail(o.value,'checkEmail');*/
//	if(avail_email == 1){
//		val_failed(o,"Sorry! Email already exists. Please choose another");
//		return false;
//	}
//	else if(avail_email == 2){
//		val_failed(o,"Invalid Email Address");
//		return false;
//	}	
//}
//check email availablity
function availablity_email(o,strEmail){
	avail_email="";
	val_success(o.id);
	document.getElementById("checkingMsgEmail").innerHTML="<br clear='all'><img src='http://imgs.clickjobs.com/jbs/images/iup-arrow.gif' border='0' alt=''>&nbsp;Checking availability of email...";
	document.getElementById("err_email").innerHTML="&nbsp;<img src='http://imgs.clickjobs.com/jbs/images/sloading1.gif' border='0' alt='' class='icon icopos'>";
	var pars="selectedIndex="+strEmail+"&objname=checkEmail";
	var url ='../email_check.php';
	var sucReqUname=function(t){
		document.getElementById("checkingMsgEmail").innerHTML="";
		alert(avail_email);return false;
		avail_email=t;
		if(t == "1"){
			val_failed(o,"Sorry! Email already exists. Please choose another");
			return false;
		}
		else if(t == "2"){
			val_failed(o,"Invalid Email Address");
			return false;
		}
		else{ val_success(o.id);}
	}
	getAjaxRes(url,pars,sucReqUname);

}

function val_dob(){
	var error = true;
	var y=document.createacc.year.value;
	var m=document.createacc.month.value;
	var d=document.createacc.date.value;
	var err=document.getElementById("dateErrDis");
 	if (d == "" && m == "" && y == "") error =false;
 	else if(d == "") error = false;
  	else if(m == "") error = false;
  	else if(y == "") error = false;
	
	if(d > 28 && y != ""){
		if(m == 02){
			febdays = daysInFebruary(y);
			if (d > parseInt(febdays) )
				error = false;
		}
		else{	
			if(d > 30){
				if (m==4 || m==6 || m==9 || m==11)
				error = false;
			}
		}
	}
	if(error == false){
		document.createacc.year.className='validation-failed';
		document.createacc.month.className='validation-failed';
		document.createacc.date.className='validation-failed';
		val_failed(err,"Invalid date of birth");
		return false;	
	}else{
		document.createacc.year.className='validation-passed';
		document.createacc.month.className='validation-passed';
		document.createacc.date.className='validation-passed'; 
		val_success(err.id);
	}
}
function val_gender(){
	var j=0;
	var genderElm=document.createacc.gender;
	var err=document.getElementById("genErrDis");
	for(var i=0;i<genderElm.length;i++){
		if(genderElm[i].checked == true){
			j++;
		}
	}
	if(j == 0){
		val_failed(err,"Invalid date of birth");
		return false;
	}
	else{ val_success(err.id);}
}
function val_indus(o){
	if(is_empty(o.value) == false){
		val_failed(o,"Please select your Industry");
		return false;
	}
	else{ val_success(o.id);}
}
function val_company(o){
	hideToolTip(o);
	if(isVisibleElm(o) == true){
		if(is_empty(o.value) == false){
			val_failed(o,"Please select your company");
			return false;
		}
		else{ val_success(o.id);}
		if(o.value.length < 3){
			val_failed(o,"Minimum 3 characters");
			return false;
		}
		else{ val_success(o.id);}
	}
	
	
}
function val_jobtit(o){
	hideToolTip(o);
	if(isVisibleElm(o) == true){
		if(is_empty(o.value) == false){
			val_failed(o,"Please enter your job title");
			return false;
		}
		else{ val_success(o.id);}
		if(o.value.length < 3){
			val_failed(o,"Minimum 3 characters");
			return false;
		}
		else{ val_success(o.id);}
	}
			
}
function val_country(o){
	if(is_empty(o.value) == false){
		val_failed(o,"Please select your country");
		return false;
	}
	else{ val_success(o.id);}
}
function val_loc(o){
	if(is_empty(o.value) == false){
		val_failed(o,"Please select your location");
		return false;
	}
	else{ val_success(o.id);}
}

function val_industry(o){
	if(is_empty(o.value) == false){
		val_failed(o,"Please select Industry");
		return false;
	}
	else{ val_success(o.id);}
}

function val_qualification(o){
	if(is_empty(o.value) == false){
		val_failed(o,"Please select Qualification");
		return false;
	}
	else{ val_success(o.id);}
}

function val_specialization(o){
	if(is_empty(o.value) == false){
		val_failed(o,"Please select Specialization");
		return false;
	}
	else{ val_success(o.id);}
}


function val_institute(o){
	if(is_empty(o.value) == false){
		val_failed(o,"Please select Institute");
		return false;
	}
	else{ val_success(o.id);}
}
function val_gyear(o){
	if(is_empty(o.value) == false){
		val_failed(o,"Please select Year");
		return false;
	}
	else{ val_success(o.id);}
}





function val_qali(o){
	if(is_empty(o.value) == false){
		val_failed(o,"Please select your degree");
		return false;
	}
	else{ val_success(o.id);}
}



function val_spliz(o){
	if(is_empty(o.value) == false){
		val_failed(o,"Please select your specialization");
		return false;
	}
	else{ val_success(o.id);}
}

function val_farea(o){
	if(is_empty(o.value) == false){
		val_failed(o,"Please select your Functional Area");
		return false;
	}
	else{ val_success(o.id);}
}

function val_cpresume1(o){
if(is_empty(o.value) == false){
		val_failed(o,"Please upload resume");	
	return false;
	}
	else{	
		val_success(o.id);}
}





function val_interest(){
	var elm=document.createacc.elements;
	var err=document.getElementById("intErrDis");
	var j=0;
	for(var i=0;i<elm.length;i++){
		if(elm[i].name=="intrest[]"){
			if(elm[i].checked == true){
				j++;
			}
		}
	}
	
	if(j == 0){
		val_failed(err,"Please select your interest");
		return false;
	}
	else{ val_success(err.id);}
}

/******************** Common Functions *****************/

function sapcevalidate(aTextField){
	strRE = new RegExp(/[\s ]/gi);
	var nn = strRE.test( aTextField );
	return nn;
}
function val_success(id,classname){
	remErr(id,"validation-passed");
	document.getElementById("err_"+id).innerHTML='';
}
function val_failed(o,errmsg){
	//o.focus();
	addErr(o,errmsg);
	document.getElementById("err_"+o.id).innerHTML='';
}
//Add Error Message 
function addErr(o,errMsg,errDispId)
{
    o.className="validation-failed";
    o.parentNode.insertBefore
    var errMsgId = "manErr_"+o.id;
	if(errDispId == '' || errDispId == null){ errDispId=o; }
	
    if(!document.getElementById(errMsgId)){
        var em = document.createElement('span');
        em.id = errMsgId;
	em.innerHTML = "<br class='clr'><img src='images/iup-arrow.gif' border='0' alt=''>&nbsp;<span class='err' id='err_msg_dis_man_"+o.id+"'>"+errMsg+"</span>";
        errDispId.parentNode.insertBefore(em,errDispId.nextSibling);
    }else{
	document.getElementById("err_msg_dis_man_"+o.id).innerHTML=errMsg;
	}
}

//Remove Error Message 
function remErr(id,cname){
   document.getElementById(id).className=cname;
	 var k = "manErr_"+id
    if(document.getElementById(k))
    {
        var em=document.getElementById(k);	
        em.parentNode.removeChild(em);
    }
}

// empty validation
function is_empty(val){
	var re = /\s/g; 
	RegExp.multiline = true;
	var str = val.replace(re, "");
	if (str.length == 0) { return false;} else {return true;}
}
//email validation
function is_email(e){
	var emailfilter=/^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i
	var returnval=emailfilter.test(e)
	return returnval;
}
//special character validation
function specialchar_check(v)
{
	var retVal=1;
	var iChars = "!@#$%^&*()+=-[]\\\';,./{}|\":<>?";
	  for (var i = 0; i < v.length; i++) {
		if (iChars.indexOf(v.charAt(i)) != -1)
		retVal=0;
  	}
	return retVal;
}
//common ajax
function getAjaxRes(url,params,ResRetFun){
	var http = new GetXmlHttpObject();
	http.open("POST", url, true);
	//Send the proper header information along with the request
	http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	http.setRequestHeader("Content-length", params.length);
	http.setRequestHeader("Connection", "close");

	http.onreadystatechange = function() {
		if(http.readyState == 4 && http.status == 200)
			ResRetFun(http.responseText);	
	}
	http.send(params);
}
function GetXmlHttpObject(){
	var xmlHttp=null;
	try{ xmlHttp=new XMLHttpRequest();}
	catch (e){// Internet Explorer
		try{ xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");}
		catch (e){ xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");}
	}
	return xmlHttp;
}
function isVisibleElm(e) {	
	if (typeof e == "string") {
		e = xGetElementById(e);
	}
	while (e.nodeName.toLowerCase() != 'body' && e.style.display.toLowerCase() != 'none' && e.style.visibility.toLowerCase() != 'hidden') {   
	e = e.parentNode;
	}
	if (e.nodeName.toLowerCase() == 'body') {
	return true;
	} else{
	return false;
	}
}

function isAlpha(parm) {
	var lwr = 'abcdefghijklmnopqrstuvwxyz ';
	var upr = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
	var val = lwr+upr;
	if (parm == "") return true;
	for (i=0; i<parm.length; i++) {
		if (val.indexOf(parm.charAt(i),0) == -1) return false;
	}
	return true;
}
  function findPosX(obj)
  {
    var curleft = 0;
    if(obj.offsetParent)
        while(1) 
        {
          curleft += obj.offsetLeft;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.x)
        curleft += obj.x;
    return curleft;
  }

  function findPosY(obj)
  {
    var curtop = 0;
    if(obj.offsetParent)
        while(1)
        {
          curtop += obj.offsetTop;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.y)
        curtop += obj.y;
    return curtop;
  }