﻿function addTitle(myJobTitle,myManagerialLevelId,myFieldId,mySubFieldId,myExperienceId)
{
	jobTitle[jobTitle.length] = new Array();
	jobTitle[jobTitle.length - 1][idxJT_id] = "-1";
	jobTitle[jobTitle.length - 1][idxJT_text] = myJobTitle;
	jobTitle[jobTitle.length - 1][idxJT_experience] = myExperienceId;
	jobTitle[jobTitle.length - 1][idxJT_field] = myFieldId;
	jobTitle[jobTitle.length - 1][idxJT_subfield] = mySubFieldId;
	jobTitle[jobTitle.length - 1][idxJT_managerial] = myManagerialLevelId;

	calculateSumExperience();
	modalHide();
}

function cantFindJobtitle_popUp()
{
	modalShow(cantFindJobTitleLiteral, 'EmploymentHistory_Add.aspx', 600, 400)
}

function addJobTitle( idx )
{
	if( arrSearchJobTitle[idx][0] == -1 )
	{
		cantFindJobtitle_popUp();
		hideMenu();	
	}
	else
	{
		var exists = false;
		if(jobTitle.length-1 >= 0)
		{
			if (exists)
			{
				alert('Job title already selected.');
			}
			else
			{
				var d = getObj('RegistrationSearchBox');
				d.parentNode.removeChild(d);
			
				reg.addRow( arrSearchJobTitle[idx][0], arrSearchJobTitle[idx][1], 0, -1, -1, -1 );	
				hideMenu();		
			}
		}
		else
		{
			var d = getObj('RegistrationSearchBox')
			d.parentNode.removeChild(d);
		
			reg.addRow( arrSearchJobTitle[idx][0], arrSearchJobTitle[idx][1] );	
			hideMenu();		
		}
	}		
}

function addAnotherJobTitle()
{
	if(getObj('RegistrationRowAdd') != null)
	{
		getObj('RegistrationRowAdd').className = '';
		getObj('RegistrationRowAdd').innerHTML = strAddAnother;
	}
}

function doOnKeyPress( obj )
{
	var firstChar = obj.value.substr(0,1).toLowerCase();
	workSearch = obj.value.toLowerCase();		
	
	if(firstChar != '')
		populateSelect( null, 'AllJobTitlesByFirstLetter', null, firstChar , "ENU", doAfterType, null, null, 'a_' + firstChar )
}

function doAfterType( obj )
{
	if( workSearch.length == 1 )
		arrSearchJobTitle = copyAssociativeArray( obj );
	else
		arrSearchJobTitle = copyArray( obj, workSearch );

	search.Build_Search( arrSearchJobTitle, true );
}	

function copyAssociativeArray( obj )
{
	var newArray = new Array();
	    
	for(var i in obj)
	{			
		for(var j in obj[i])
		{
			newArray[newArray.length] = obj[i][j];				
		}
	}
	
	newArray.sort( function(a,b){ return( (a[2] > b[2])?1:0) } );
	
	return newArray;
}

function copyArray( obj, workSearch )
{
	var arrData = obj[ workSearch.substr(1,1) ];
	
	var newArray = new Array();
		    
	for(var j in arrData)
	{
		if( workSearch.length > 2 )
		{
			if( arrData[j][1].toLowerCase().indexOf(workSearch.toLowerCase()) == 0 )
				newArray[newArray.length] = arrData[j];				
		}
		else
			newArray[newArray.length] = arrData[j];				
	}
	
	return newArray;
}

function UpdateFieldOfWork(DataValue)
{
    ddlFieldOfWork = getObj('ddlFieldOfWork');
    for (i = 0; i < ddlFieldOfWork.length; i++)
    {
        ddlValue = ddlFieldOfWork[i].value;
        if (ddlValue == DataValue)
        {
            $(ddlFieldOfWork).getSetSSValue(ddlValue);
            break;
        }
    }
}

//===================== AutoComplete =========================
function prepareJobTitleAutocomplete(ulObject, suffix) {
    //debugger;
    $(ulObject).find("input[id$='_txtJobTitleText" + suffix + "']")
		.autocomplete("../Common/GenericHandlers/AutoCompleteJobTitle.ashx",
		{
		    minChars: 3,
		    width: 278,
		    matchContains: true,
		    autoFill: false,
		    max: 15,
		    delay: 200,
		    selectFirst: false,
		    extraParams: { langId: langId }
		}).result(function(evt, data, formatted)
		{
		    UpdateFieldOfWork(data[3]);
		});
}


