////create the cpaint object to initiate the request to server
var cpsign = new cpaint();

cpsign.set_transfer_mode('get');
cpsign.set_response_type('text');
cpsign.set_async(true);
cpsign.set_debug(0);

function sendpasswordmail(){
	alert('Password sent via email.');	
	window.location ='../index.php';
}
function checkemailduplication(email){
	if (email){
	showWait('sp_checkemailduplication');	
	cpsign.call('signup_ajax.php', 'checkemailduplication', email_results,email);
	}
	else{
	$('sp_checkemailduplication').innerHTML="";	
	}
}
function email_results(result){


	if (result=='none'){
		$('sp_checkemailduplication').style.display = 'none';
		getusername();
	}
	else{
		$('sp_checkemailduplication').innerHTML=result;
		getusername();
	}
}
/////////////////////////////////////////////////////////////////////////////////////////////
function get_skillsd(subfow,spanfow){

  
   if ($(spanfow).style.display=='block')
	($(spanfow).style.display='none')
   else
   {
   		cpsign.call('signup_ajax.php', 'get_skillsd', skillsd_results,subfow,spanfow);
		showWait('showloader');
   }
}
function skillsd_results(result){
	
	hideWait('showloader');
	
	var arrf = result.split("|||");
	$(arrf[1]).style.display='block';
	$(arrf[1]).innerHTML = arrf[0];
}

///fucntion for getting the list of cities against country//////////////////////////////////////////////////////////////////
function get_city()
{
   showWait('showmsg');
 
  var countryid = $('country').value;
  cpsign.call('signup_ajax.php', 'get_city', city_results, countryid);
}


function city_results(result) {

	/////////hide the loading message/////////////////////
	$('showmsg').innerHTML="Done...";
	$('showmsg').style.display = 'none';
	//////////////////////////////////////////////////////
	//var x=result.documentElement; //store the result in var
	
	//var text=x.childNodes[0].childNodes[0].nodeValue;
	//text = text.replace(/\\u003c/g, "<"); //replace the server side <> code
	//text = text.replace(/\\u003e/g, ">"); //replace the server side <> code
	
	$('combo').innerHTML = result;
}
//////////////////////////////////////////////////////////////////////////
function getLevels()
{
   showWait('msgdegree');
 
  var degree = $('degree').value;
  cpsign.call('signup_ajax.php', 'getLevels', level_results, degree);
}


function level_results(result) {

	/////////hide the loading message/////////////////////
	$('msgdegree').innerHTML="Done...";
	$('msgdegree').style.display = 'none';
	//////////////////////////////////////////////////////
	
	$('showdegree').innerHTML = result;
}
///////////////////////////////////////function for checkusername availability///////////////////////////////////
function userAvailability(){
	showWait('userIdInfo');
	var username = $('username').value;
	cpsign.call('signup_ajax.php', 'checkUsername', usernameResults , username);
}

function usernameResults(result){

	if (result == 'available'){
		$('rowuser').style.display = '';
		$('userIdInfo').innerHTML = 'Username is available';
	}else{
	$('rowuser').style.display = '';
	$('userIdInfo').innerHTML = result;
	}
	var t=setTimeout("document.getElementById('rowuser').style.display = 'none';",2500)
	
}
//////////////////////////////////////////////////////////////////////////////////////////////////////
function showHideLyrs(flag){
	if (flag=="N")
	{
		
		$('row7').style.display = 'none';
		$('row3').style.display = 'none';
		$('row3a').style.display = 'none';
		$('row3b').style.display = 'none';
		$('row6').style.display = 'none';
		$('rowskills').style.display = 'none';
		$('rowpreffow').style.display = '';
		$('rowprefindustry').style.display = '';
		$('industry').value = '';
		$('su_otherIndustry').value = '';
		$('experience').value = '';
		$('cv_empTitle').value = '';
		$('cv_empmlevel').value = '';
		$('cv_empfow').value = '';
		$('dv_skills').innerHTML = '';
		
	}
	else
	{

		////remove the selected options
		var elSel = $('prefIndustry');
  		for (i = elSel.length - 1; i>=0; i--) {
      		elSel.remove(i);
  		}
		////remove the selected options
		var elSel = $('preffow');
  		for (i = elSel.length - 1; i>=0; i--) {
      		elSel.remove(i);
  		}
		
		$('rowpreffow').style.display = 'none';
		$('rowprefindustry').style.display = 'none';
		$('row7').style.display = '';
		$('row6').style.display = '';
		$('row3').style.display = '';	
		$('row3a').style.display = '';	
		$('row3b').style.display = '';	
		$('rowskills').style.display = '';
		
		

	}
	
}
function showHideLyrsCV(flag){
	if (flag=="N")
	{
		$('tableupload').style.display = 'none';
	}
	else
	{
		$('tableupload').style.display = '';
	}	
}
///////////////////server side validation//////////////////
function checkFields(){
	
	
	if  (document.SignUp["skills[]"]!=null){
	var countskill = skillLength();
	
	if (countskill > 30){
		alert('You cannot add more then 40 skills');
		return;
	}
	}
	
	saveFow();
	saveIndustry();
	var fields
	
	if ($('userIdInfo').innerHTML =="Username not available") {
		showError("Username not available");
		return false;
	}

	if ($('password').value != $('confirmpass').value)
	{	
		showError('Password doesnt match');
		return;
	}

	if (!checkemail($('email').value))
	{	
		showError('Not a valid email address');
		return false;
	}
	
	//if (!emailSpecific($('email').value))
	//{	
	//	showError('Not a valid email address');
	//	return false;
	//}

	if (!$('isRead').checked)
	{
		showError('Please read and accept the terms of service');
		return false;
	}
		
	showWait('messageStep1');
	///common field to validate	
	fieldscommon = 'Username='+$('username').value
	+'||User Password='+$('password').value
	+'||Confirm Password='+$('confirmpass').value
	+'||Email='+$('email').value
	+'||Gender='+$('su_gender').value
	+'||DOB='+$('day').value
	+'||DOB='+$('month').value
	+'||DOB='+$('year').value
	+'||Country='+$('country').value
	+'||City='+$('city').value
	+'||Highest qualification held='+$('degree').value
	
	if (document.getElementById('eduMajor').options[document.getElementById('eduMajor').selectedIndex].text == "Others")
		fieldscommon += '||Main field of study='+$('cv_eduMajorOther').value;	
	else
		fieldscommon += '||Main field of study='+$('eduMajor').value;

	////fields for experienced person
	if (document.getElementById('industry').options[document.getElementById('industry').selectedIndex].text == "Others")
		var fieldsexp = '||Industry='+$('su_otherIndustry').value	;
	else
		var fieldsexp = '||Industry='+$('industry').value;
	
	 fieldsexp +='||Experience='+$('experience').value					
					+'||Managerial Lavel='+$('cv_empmlevel').value
					+'||Field Of Work='+$('cv_empfow').value   
					+'||Latest Job Title='+$('cv_empTitle').value

	////////fields for fresh person
	var fieldsfresh ='||Preferred Industry='+$('prefhindustry').value
					+'||Preferred Field Of Work='+$('prefhfow').value
	
						
	if ($('fresh').checked){ // has experience hen do the following
		fields = fieldscommon+fieldsexp;

		if  (document.SignUp["skills[]"]!=null){
			var i=0;
			var scheck=false;
			
			if (!document.SignUp["skills[]"].length)//handle single skill
			{
				if (document.SignUp["skills[]"].checked) scheck=true;		
			}	
			else
			{
				while (i < document.SignUp["skills[]"].length){
					if (document.SignUp["skills[]"][i].checked) scheck=true;
				i++;
				}
			}
			
			if (scheck==false) {
				showError('Please Check atleast one Skill');
				return;
			}
		}/// end skill null check


	}//end radio fresh checked
	else///case for fresh candidate
	{
		fields=fieldscommon+fieldsfresh;
	}
	
	var emailadd = $('email').value;
	var username = $('username').value;
	//You mistyped one of the letters. Please enter the letters as they are shown in the image below.

	cpsign.call('signup_ajax.php', 'checkFields', fieldResults , fields, emailadd, username);

}

function fieldResults(result){
	
	//var x=result.documentElement;
	//var text=x.childNodes[0].childNodes[0].nodeValue;
	
	if (result=="success")
	{
		document.SignUp.submit();
	}
	else
	{
		$('messageStep1').style.background = "#FF0000";
		$('messageStep1').style.color = "#FFFFFF";
		$('messageStep1').innerHTML = '&nbsp;'+result;
	}

}
////////////////////function for saving pref location to text field///////////////

function saveMe() {
/* document.SignUp.items.value = "";
    for (var i = 0; i < document.SignUp.pref_city.length; i++) {
        if (document.SignUp.pref_city.options[i].selected) {
            document.SignUp.items.value += "|" + document.SignUp.pref_city.options[i].value;
        }
    }*/
	

}
/////////////////////////////////////////////////////////////////////////////
function searchSuggest(){
	
	var searchText = $('institution').value;
	
	cpsign.call('ajax_cv_manager.php', 'autoComplete', searchResult, searchText);
	
	
}

function searchResult(result){

        var ss = document.getElementById('search_suggest')
        ss.style.display = 'block';
		ss.innerHTML = '';
        var str = result.split("\r\n");
        for(i=0; i < str.length - 1; i++) {
            //Build our element string.  This is cleaner using the DOM, but
            //IE doesn't support dynamically added attributes.
            var suggest = '<div onmouseover="javascript:suggestOver(this);" ';
            suggest += 'onmouseout="javascript:suggestOut(this);" ';
            suggest += 'onclick="javascript:setSearch(this.innerHTML);" ';
            suggest += 'class="suggest_link">' + str[i] + '</div>';
			ss.innerHTML += suggest;

        }
		
		if (ss.innerHTML!='')
			ss.innerHTML += "<a href=\"javascript:void(0)\" onclick=\"document.getElementById(\'search_suggest\').style.display = \'none\';;\">Close</a>";
	
}

function suggestOver(div_value) {
    div_value.className = 'suggest_link_over';
}
function suggestOut(div_value) {
    div_value.className = 'suggest_link';
}
function setSearch(value) {
    document.getElementById('institution').value = value;
    document.getElementById('search_suggest').innerHTML = '';
}
///////////////////////////////////////////////////////////////////////////////
function fetchTitles(){
  //showWait('msgdegree');
  var industry = $('industry').value;
  var emptitle = $('cv_empTitle').value;
  cpsign.call('signup_ajax.php', 'fetchTitles', fetchTitlesResult , industry, emptitle);
	
}

function fetchTitlesResult(result){
	
		$('showtitles').style.display = 'block';
		$('showtitles').innerHTML = result;
	
}
///////////////function used in the title result span///////////////////////////////
function doTitlechange(linktoshow,mlevel,fow){

	$('cv_empTitle').value = linktoshow;
	$('cv_empmlevel').value = mlevel;
	$('cv_empfow').value = fow;
	$('showtitles').style.display = 'none';
	getsubFow();
	
}

function doTitlechangeauto(linktoshow,mlevel,fow){

	$('cv_empTitle').value = linktoshow;
	$('cv_empmlevel').value = mlevel;
	$('cv_empfow').value = fow;
	getsubFow();
	
}
///////////////////////////////////////////////
function insertOptionBeforeIndustry(val)
{
  var elSel = document.getElementById('prefIndustry');
  //if (elSel.selectedIndex >= 0) {
    var elOptNew = document.createElement('option');
    elOptNew.text = val;
    elOptNew.value = val;
	if (val!=""){
		var elOptOld = elSel.options[elSel.selectedIndex+1];  
		try {
		  elSel.add(elOptNew, elOptOld); // standards compliant; doesn't work in IE
		}
		catch(ex) {
		  elSel.add(elOptNew, elSel.selectedIndex); // IE only
		}
	}
  //}
  
}

function removeOptionSelectedIndustry()
{
  var elSel = document.getElementById('prefIndustry');
  var i;
  var flag = true;
  for (i = elSel.length - 1; i>=0; i--) {
    if (elSel.options[i].selected)
	{
      elSel.remove(i);
	  var flag = false;
    }
  }
  if (flag == true)
  	alert('Please select an industry to remove');
}


function saveIndustry() {
 
 $('prefhindustry').value = "";

    for (var i = 0; i < $('prefIndustry').length; i++) {
         $('prefhindustry').value += "|" + $('prefIndustry').options[i].value;
    }
}
////////////fow//////////////////////////////////
function insertOptionBeforeFOW(val)
{
  
  var countcheck = countSelected('preffow');
  if (countcheck >= 5){
  	alert('You cannot add more then 5 Field of work');
	return;
  }
  var elSel = document.getElementById('preffow');
  //if (elSel.selectedIndex >= 0) {
    var elOptNew = document.createElement('option');
    elOptNew.text = val;
    elOptNew.value = val;
	if (val!=""){
		var elOptOld = elSel.options[elSel.selectedIndex+1];  
		try {
		  elSel.add(elOptNew, elOptOld); // standards compliant; doesn't work in IE
		}
		catch(ex) {
		  elSel.add(elOptNew, elSel.selectedIndex); // IE only
		}
	}
  //}
  
}

function removeOptionSelectedFOW()
{
  var elSel = document.getElementById('preffow');
  var i;
  var flag = true;
  for (i = elSel.length - 1; i>=0; i--) {
    if (elSel.options[i].selected)
	{
      elSel.remove(i);
	  var flag = false;
    }
  }
  if (flag == true)
  	alert('Please select a field of work to remove');
}


function saveFow() {
 
 $('prefhfow').value = "";

    for (var i = 0; i < $('preffow').length; i++) {
         $('prefhfow').value += "|" + $('preffow').options[i].value;
    }
}

function getsubFow(){
	
   var fow=$('cv_empfow').value;
   cpsign.call('signup_ajax.php', 'getsubFow', getsubFowResults, fow);	
   showWait('showloader');
}

function getsubFowResults(result){

	hideWait('showloader');
	$('dv_skills').innerHTML = result;
	
}

function getusername(){
	
		var at="@"
		var emailtocheck = $('email').value;
		var lat=emailtocheck.indexOf(at);
		$('username').value = emailtocheck.substring(0,lat);

}
//////function to count the number of items in list////
function countSelected(fld)
{
  var elSel = document.getElementById(fld);
  var i,j=0;
  for (i = 0; i<elSel.length ; i++) {
    j++;
  }
  
  return(j);
}

function skillLength(){
	var i;
	var j=0;
	for (i=0; i < document.SignUp["skills[]"].length ;i++){
	if (document.SignUp["skills[]"][i].checked)
		j++;
	}
	return (j);
}


function searchSuggest(){
	
	var searchText = $('cv_empTitle').value;
	
	cpsign.call('signup_ajax.php', 'autoComplete', searchResult, searchText);
	
	
}

function searchResult(result){

        var ss = document.getElementById('search_suggest')
        ss.style.display = 'block';
		ss.innerHTML = '';
        var str = result.split("\r\n");
        for(i=0; i < str.length - 1; i++) {
            //Build our element string.  This is cleaner using the DOM, but
            //IE doesn't support dynamically added attributes.
            var suggest = '<div onmouseover="javascript:suggestOver(this);" ';
            suggest += 'onmouseout="javascript:suggestOut(this);" ';
            suggest += 'onclick="javascript:setSearch(this.innerHTML);" ';
            suggest += 'class="suggest_link">' + str[i] + '</div>';
			ss.innerHTML += suggest;

        }
		
		if (ss.innerHTML!='')
			ss.innerHTML += "<a href=\"javascript:void(0)\" onclick=\"document.getElementById(\'search_suggest\').style.display = \'none\';$(\'col_search_suggest\').height = \'\';\">Close</a>";
			
		var version = explorerversion();///do this only if ie less then 7
		if (version < 7)
			$('col_search_suggest').height = '120px'; 	
	
}

//Mouse over function for autocomplete
function suggestOver(div_value) {
    div_value.className = 'suggest_link_over';
}
 
//Mouse out function for autocomplete
function suggestOut(div_value) {
    div_value.className = 'suggest_link';
}

//Click function for autocomplete
function setSearch(value) {
    //document.getElementById('cv_empTitle').value = value;
    document.getElementById('search_suggest').innerHTML = '';
	$('col_search_suggest').height = '';
}

function explorerversion(){
if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ //test for MSIE x.x;
 var ieversion=new Number(RegExp.$1) // capture x.x portion and store as a number
 	return ieversion;
}
}