//$(document).load(alert("load"));
//$("input[type='text'],input[type='password']")
var tmpRootElement;
var pattNameWithIndexLikeArr=/^([a-zA-Z0-9_]{1,})(\[{1})([0-9]{1,})(\]{1})$/;
var pattPhoneInBD =/^([0-9]{1,5})(\(){1}([0-9]{1,7})(\)){1}([0-9]{4,10})$/;
var patEmail=/^([-_a-zA-Z0-9\.]){1,50}(@){1}([-_a-zA-Z0-9]{1,30}\.){1,3}([a-zA-Z]){2,5}$/i;	// email
var langStr = 'lang='+lang;
var formhasBeenChanged = false;


function initJqForCrewdata() {
	

	// rank
	
	tmpRootElement.find('input[name=rank]').autocomplete('tmpl_autocomplete.php?fieldName=rank'); 
	tmpRootElement.find('input[name=vesselTypeSearch]').autocomplete('tmpl_autocomplete.php?fieldName=vesselTypeSearch'); 
	tmpRootElement.find('input[name=engineType]').autocomplete('tmpl_autocomplete.php?fieldName=engineType'); 
	tmpRootElement.find('input[name=engineType]').result(function(eventObj, data, formatted) { engineType_AC(eventObj, data, formatted); });
	tmpRootElement.find('input[name=countryLSearch]').autocomplete('tmpl_autocomplete.php?fieldName=countryLSearch'); 

	tmpRootElement.find('input[name=city]').autocomplete('tmpl_autocomplete.php?fieldName=city'); 
	tmpRootElement.find('input[name=city]').result(function(eventObj, data, formatted) { city_AC(eventObj, data, formatted); });

	tmpRootElement.find('input[name^=cityCAeng]').autocomplete('tmpl_autocomplete.php?fieldName=city'); 
	tmpRootElement.find('input[name^=cityCArus]').autocomplete('tmpl_autocomplete.php?fieldName=city&lang=rus'); 
	tmpRootElement.find('input[name^=cityCA]').result(function(eventObj, data, formatted) { cityCA_AC(eventObj, data, formatted); });

	tmpRootElement.find('input[name^=cityOnly]').autocomplete('tmpl_autocomplete.php?fieldName=city'); 
	tmpRootElement.find('input[name^=cityAgenciesExp]').autocomplete('tmpl_autocomplete.php?fieldName=city'); 
	tmpRootElement.find('input[name^=cityExp]').autocomplete('tmpl_autocomplete.php?fieldName=city'); 

	tmpRootElement.find('input[name=region]').autocomplete('tmpl_autocomplete.php?fieldName=region'); 
	tmpRootElement.find('input[name^=regionCAeng]').autocomplete('tmpl_autocomplete.php?fieldName=region'); 
	tmpRootElement.find('input[name^=regionCArus]').autocomplete('tmpl_autocomplete.php?fieldName=region&lang=rus'); 
	tmpRootElement.find('input[name^=regionCA]').result(function(eventObj, data, formatted) { regionCA_AC(eventObj, data, formatted); });
	
	//form=education
	tmpRootElement.find('input[name^=collegeName]').autocomplete('tmpl_autocomplete.php?form=education&fieldName=collegeName'); 
	tmpRootElement.find('input[name^=collegeName]').result(function(eventObj, data, formatted) { collegeName_AC(eventObj, data, formatted); });

	tmpRootElement.find('input[name^=facultyName]').autocomplete('tmpl_autocomplete.php?form=education&fieldName=facultyName'); 
	tmpRootElement.find('input[name^=speciality]').autocomplete('tmpl_autocomplete.php?form=education&fieldName=speciality'); 

	tmpRootElement.find('input[name^=docCity]').autocomplete('tmpl_autocomplete.php?fieldName=city'); 
	tmpRootElement.find('input[name^=addDocCity]').autocomplete('tmpl_autocomplete.php?fieldName=city'); 
	tmpRootElement.find('input[name^=docCity]').result(function(eventObj, data, formatted) { cityDoc_AC(eventObj, data, formatted); });
	tmpRootElement.find('input[name^=addDocCity]').result(function(eventObj, data, formatted) { cityDoc_AC(eventObj, data, formatted); });

	tmpRootElement.find('input[name^=vesselNameExp]').autocomplete('tmpl_autocomplete.php?fieldName=vessel'); 
	tmpRootElement.find('input[name^=vesselNameTechExp]').autocomplete('tmpl_autocomplete.php?fieldName=vessel'); 
	tmpRootElement.find('input[name^=vesselNameExp]').result(function(eventObj, data, formatted) { vesselNameExpAC(eventObj, data, formatted); });
	tmpRootElement.find('input[name^=vesselNameTechExp]').result(function(eventObj, data, formatted) { vesselNameExpAC(eventObj, data, formatted); });

	tmpRootElement.find('input[name^=crewingExp]').autocomplete('tmpl_autocomplete.php?fieldName=crewing' ); 
	tmpRootElement.find('input[name^=crewingAgenciesExp]').autocomplete('tmpl_autocomplete.php?fieldName=crewing' ); 
//	tmpRootElement.find('input[name^=companyNameCA]').autocomplete('tmpl_autocomplete.php?fieldName=companyname' ); 
//	tmpRootElement.find('input[name^=companyNameCArus]').autocomplete('tmpl_autocomplete.php?fieldName=companyname&lang=rus' ); 
	tmpRootElement.find('input[name^=companyCAregi]').autocomplete('tmpl_autocomplete.php?fieldName=companyname' ); 
	tmpRootElement.find('input[name^=crewingExp]').result(function(eventObj, data, formatted) { crewingAgenciesExpAC(eventObj, data, formatted); });
	tmpRootElement.find('input[name^=crewingAgenciesExp]').result(function(eventObj, data, formatted) { crewingAgenciesExpAC(eventObj, data, formatted); });

	//tmpRootElement.find('input[name^=companyNameCA]').result(function(eventObj, data, formatted) { companyNameCAAC(eventObj, data, formatted); });
	tmpRootElement.find('input[name^=companyCAregi]').result(function(eventObj, data, formatted) { companyCAregi_AC(eventObj, data, formatted); });


	tmpRootElement.find('input[name^=shipownerExp]').autocomplete('tmpl_autocomplete.php?fieldName=shipowner'); 
	tmpRootElement.find('input[name=addOtherTitle]').autocomplete('tmpl_autocomplete.php?fieldName=certificate'); 
	
	
	//tmpRootElement.find('input[name^=shipownerExp]').change(onchangeACfieldFunc);
	//tmpRootElement.find('input[name^=vesselNameExp]').bind('change',onchangeACfieldFunc);





	tmpRootElement.find('*[name^=addRecord]').bind('click', addNewRecord);
	tmpRootElement.find('*[name^=duplicateRecord]').bind('click', addNewRecord);
	tmpRootElement.find('*[name^=deleteRecord]').bind('click', deleteRecordFunc);
	tmpRootElement.find('*[name^=deleteDocsRecord]').bind('click', deleteDocsRecordFunc);


	tmpRootElement.find('*[name^=addICRecord]').bind('click', addNewICRecord);
	tmpRootElement.find('*[name^=duplicateICRecord]').bind('click', addNewICRecord);
	tmpRootElement.find('*[name^=deleteICRecord]').bind('click', deleteICRecordFunc);
	
    if (!hideToggleTooltips) {
		tmpRootElement.find('*[m_error]').tipsy({trigger: 'focus', gravity: 's', title: 'm_error'});
		tmpRootElement.find('*[m_inf]').tipsy({trigger: 'focus', gravity: 's', title: 'm_inf'});
	} // if
	
	//$('form[name=crewingForm]').find('input').change(onFormDataChangedFunc);
	tmpRootElement.find('input').change(onFormDataChangedFunc);
	tmpRootElement.find('select').change(onFormDataChangedFunc);
	tmpRootElement.find('textarea').change(onFormDataChangedFunc);

	tmpRootElement.find('input').bind('keydown',onEnterPressFormFieldFunc);
	tmpRootElement.find('select').bind('keydown',onEnterPressFormFieldFunc);
	//tmpRootElement.find('textarea').change(onEnterPressFormFieldFunc);

//	tmpRootElement.find('input[name^=langSlider]').slider({ from: 0, to: 100, step: 1, round: 0, dimension: '&nbsp;%', 
//	scale: ['Don&#039;t&nbsp;know','Poor','Good','Excellent','Fluently'],
//	limit: true,
//	skin: 'plastic' });
	
	//disabled form ___________________________________________
	var disabledForm = tmpRootElement.find('form[disabled]');
	disabledForm.attr('class',disabledForm.attr('class')+' formDisabled');
	disabledForm.find('input').attr('disabled',true);
	disabledForm.find('select').attr('disabled',true);
	disabledForm.find('textarea').attr('disabled',true);
	


	//search form _____________________________________________
	$("#BHPslider").slider({ from: bhpSliderMin, to: bhpSliderMax, heterogeneity: ['50/15000'], step: 1000, smooth: true, round: 0, dimension: '', skin: "blue", calculate: function( value ){
    var tmp = value-0;
    var tmpStr = '';
	if (tmp<=bhpSliderMin) tmpStr = languageLevelArr[0]; 
	else if ((tmp>=0) && (tmp<bhpSliderMax)) tmpStr = tmp; 
	else if (tmp>=bhpSliderMax) tmpStr = bhpSliderMax + '&nbsp;+'; 
    return tmpStr;
  } });

  
	$("#DWTslider").slider({ from: dwtSliderMin, to: dwtSliderMax, heterogeneity: ['50/30000'], step: 1000, smooth: true, round: 0, dimension: "", skin: "blue", calculate: function( value ){
    var tmp = value-0;
    var tmpStr = '';
	if (tmp<=dwtSliderMin) tmpStr = languageLevelArr[0]; 
	else if ((tmp>=0) && (tmp<dwtSliderMax)) tmpStr = tmp; 
	else if (tmp>=dwtSliderMax) tmpStr = dwtSliderMax + '&nbsp;+'; 
    return tmpStr;
  } });


	$("#SalarySlider").slider({ from: salarySliderMin, to: salarySliderMax, step: 100, smooth: true, round: 0, dimension: "", skin: "blue", calculate: function( value ){
    var tmp = value-0;
    var tmpStr = '';

	if (tmp<=salarySliderMin) tmpStr = languageLevelArr[0]; 
	else if ((tmp>=0) && (tmp<salarySliderMax)) tmpStr = '0-'+tmp; // +'&nbsp;$' 
	else if (tmp>=salarySliderMax) tmpStr = salarySliderMax + '&nbsp;+'; 

    return tmpStr;
  } });


  
	$("#EnglishSlider").slider({ from: englishSliderMin, to: englishSliderMax, step: 1, smooth: true, round: 0, dimension: "", skin: "blue", calculate: function( value ){
    var tmp = value-0;
    var tmpStr = '';
	if (tmp<=englishSliderMin) tmpStr = languageLevelArr[englishSliderMin]; 
	else if ((tmp>englishSliderMin) && (tmp<englishSliderMax)) tmpStr = languageLevelArr[tmp]; 
//	else if (tmp==1) tmpStr = languageLevelArr[1]; 
//	else if (tmp==2) tmpStr = languageLevelArr[2]; 
//	else if (tmp==3) tmpStr = languageLevelArr[3]; 
//	else if (tmp==4) tmpStr = languageLevelArr[4]; 
	else if (tmp>=englishSliderMax) tmpStr = languageLevelArr[englishSliderMax]; 
// Don&#039;t know,Poor,Average,Good,Fluently
    return tmpStr;
  } });


	$("#englishLevel").slider({ from: englishSliderMin, to: englishSliderMax, step: 1, smooth: false, round: 0, dimension: "", skin: "blue", calculate: function( value ){
    var tmp = value-0;
    var tmpStr = '';
	if (tmp<=englishSliderMin) tmpStr = languageLevelArr[englishSliderMin] + andHigher; 
	else if ((tmp>englishSliderMin) && (tmp<englishSliderMax)) tmpStr = languageLevelArr[tmp] + andHigher; 
	else if (tmp>=englishSliderMax) tmpStr = languageLevelArr[englishSliderMax]; 
    return tmpStr;
  } });




} // func


function onEnterPressFormFieldFunc(eventObj) {
	tObj = $(eventObj.target);
	elem = tObj.parents('form');
	
	if (elem!==null) {
		if (elem.attr('name').indexOf('loginForm')==-1) {
			if (eventObj.which==13) return false;
		} // if
	} // if
} // func

function vesselNameExpAC(eventObj, data, formatted) {
	tObj = $(eventObj.target);
	
	cleanField = data[0];
	tObj.val(cleanField);
	
	if (tObj.attr('name').indexOf('vesselNameExp')!=-1) {
		

		//set new values in hidden fields
		var vesselExpContainerPar = tObj.parents('div[class^=item]');
		vesselExpContainerPar.find('*[name^=idShipExp]').val(data[6]);


		shipDescrFieldsArr = $('input[name^=vesselNameTechExp]');
		var elemPar = shipDescrFieldsArr.eq(0).parents('div[class^=item]');
		allFieldsIsEmpty = false;


		// check if already descr exists +++++++++++++++++++++++++++++++++++++++++
		descrRecordExist = false;
		for (var i=0; i<shipDescrFieldsArr.length; i++) {
			shipDescrParDiv = shipDescrFieldsArr.eq(i).parents('div[class^=item]');
			
			if ((shipDescrParDiv.find('*[name^=vesselNameTechExp]').val()==cleanField) &&
			(shipDescrParDiv.find('*[name^=vesselTypeTechExp]').val()==data[1]) &&
			(shipDescrParDiv.find('*[name^=yearTechExp]').val()==data[5]) &&
			(shipDescrParDiv.find('*[name^=dwtTechExp]').val()==data[2]) &&
			
			(shipDescrParDiv.find('*[name^=hpTechExp]').val()==data[4]) &&
			(shipDescrParDiv.find('*[name^=engineTypeTechExp]').val()==data[3])) {
				descrRecordExist = true;
				break;
			} // if

		} // for
		if (descrRecordExist) return;
		// check if already descr exists -------------------------------------------

		
		
		tmpElem = findFirstClearFieldsBlock(shipDescrFieldsArr);
		if (tmpElem!==null) {
			elemPar = tmpElem;
			allFieldsIsEmpty = true;
		} // if

		
		var idFieldset =elemPar.parents('fieldset').attr('id');
		tmpRootElement = elemPar.clone();
		
		elemPar.find('*[name^=vesselNameTechExp]').val(cleanField);
		elemPar.find('*[name^=vesselTypeTechExp]').val(data[1]);
		elemPar.find('*[name^=yearTechExp]').val(data[5]);
		elemPar.find('*[name^=dwtTechExp]').val(data[2]);
		
		elemPar.find('*[name^=hpTechExp]').val(data[4]);
		elemPar.find('*[name^=engineTypeTechExp]').val(data[3]);
		if (allFieldsIsEmpty) return;
		
		tmpRootElement.insertAfter(elemPar);
		renameByOrderRecords(idFieldset); 
		initJqForCrewdata(); 

	} else if (tObj.attr('name').indexOf('vesselNameTechExp')!=-1) {

		var elemPar = tObj.parents('div[class^=item]');
		var idFieldset =elemPar.parents('fieldset').attr('id');
		
		elemPar.find('*[name^=vesselNameTechExp]').val(cleanField);
		elemPar.find('*[name^=vesselTypeTechExp]').val(data[1]);
		elemPar.find('*[name^=yearTechExp]').val(data[5]);
		elemPar.find('*[name^=dwtTechExp]').val(data[2]);
		
		elemPar.find('*[name^=hpTechExp]').val(data[4]);
		elemPar.find('*[name^=engineTypeTechExp]').val(data[3]);

	} // if

} // func


function findFirstClearFieldsBlock(fieldDescrFieldsArr) {

	//fieldDescrFieldsArr = $('input[name^='+nameOfOneFieldFromBlock+']');
//	var elemPar = fieldDescrFieldsArr.eq(0).parents('div[class^=item]');
	allFieldsIsEmpty = false;

	for (var i=0; i<fieldDescrFieldsArr.length; i++) {
		allFieldsIsEmpty = true;
		fieldDescrParDiv = fieldDescrFieldsArr.eq(i).parents('div[class^=item]');
		inpArr = fieldDescrParDiv.find('input:text');
		for (var j=0; j<inpArr.length; j++) {
			fieldTxt = inpArr.eq(j).val();
			if (trimStr(fieldTxt).length>0) {
				allFieldsIsEmpty = false;
				break;
			} // if
		} // for
		if (allFieldsIsEmpty) {
//			elemPar = fieldDescrParDiv;
//			break;
			return fieldDescrParDiv;
		} // if
	} // for
	return null;

} // func

function popupProtection(fieldName,value) {
	
	var popupHTML = $('form[name=protectionCode]');
	var hiddenField = popupHTML.find('input[name='+fieldName+']');
	if (hiddenField.length>0) hiddenField.val(value);
	else {
		var hiddenFieldHTML = '<input name="'+fieldName+'" type="hidden" value="'+value+'">';
		popupHTML.append(hiddenFieldHTML);  
	} // if else
	
	$.modal( popupHTML,{ overlayClose:true, opacity:75 });
	
	updateCpcha();
	return false;	
} // func


function onCrewingmailSuccess(data) {

	$('#companyEmails').html(data);
	//alert($('#companyEmails').html());	
	
	dataObj = $('#companyEmails').find('span')
	$('input[name=emailCAregi]').val(dataObj.eq(0).text());

	$('#restoreCompanyEmail').css("display",displayParam); //table
	
	var tmpLinks = '';
	for (var i=0; i<dataObj.length; i++) {
		tmpLinks += '<a onclick="popupProtection(\'restorePass\',\''+dataObj.eq(i).text()+'\')">'+sendPasswordToEmail+' <span>'+dataObj.eq(i).text()+'</span></a>';
	} // for

	$('#companyEmails').html(tmpLinks);

} // func


function companyCAregi_AC(eventObj, data, formatted) {
	tObj = $(eventObj.target);
	cleanField = data[4];
	tObj.val(cleanField);

	$("#restorecompanyemail").css("display","none");
	$("#successCompanyEmail").css("display","none");
	$("#errorCompanyEmail").css("display","none");
	
	//cityCA
	//countryCA
	//var companyNameCAcontainerPar = tObj.parents('div[class^=item]');
	$('*[name=countryCA]').val(data[3]);
	$('input[name^=cityCAeng]').val(data[2]);
	$('#companyEmails').html();
	$('#companyName').text(data[4]+" ("+data[2]+","+data[1]+")");
	$('#companyName').attr("href", "crewing.php?"+langStr+"&crewing="+data[4]+"&city="+data[2]);

	$.get(
	  'tmpl_autocomplete.php',
	  {
		crewingmail: data[5],
		cache: false
	  },
	  onCrewingmailSuccess
	);

} // func

function crewingAgenciesExpAC(eventObj, data, formatted) {
	tObj = $(eventObj.target);
	
	//alert(data[0] + ' ' + data[1] + ' ' + data[2] + ' ' + data[3]);
//	substrInd = data[0].indexOf(" (");
//	if (substrInd!=-1) cleanField = data[0].substr(0,substrInd);
//	else cleanField = data[0];
	cleanField = data[5];
	tObj.val(cleanField);
	
	phoneCountry = '';
	phoneCity = '';
	phoneDirect = '';

	if (tObj.attr('name').indexOf('crewingExp')!=-1) {

		//set new values in hidden fields
		var crewingExpContainerPar = tObj.parents('div[class^=item]');
		crewingExpContainerPar.find('*[name^=countryExp]').val(data[4]);
		crewingExpContainerPar.find('*[name^=cityExp]').val(data[2]);
		
		
		crewAgDescrFieldsArr = $('input[name^=crewingAgenciesExp]');
		var elemPar = crewAgDescrFieldsArr.eq(0).parents('div[class^=item]');
		allFieldsIsEmpty = false;

		if (resultPhone = pattPhoneInBD.exec(data[3])) {
			phoneCountry = resultPhone[1];
			phoneCity = resultPhone[3];
			phoneDirect = resultPhone[5];
		} // if


		// check if already descr exists +++++++++++++++++++++++++++++++++++++++++
		descrRecordExist = false;
		for (var i=0; i<crewAgDescrFieldsArr.length; i++) {
			crewAgDescrParDiv = crewAgDescrFieldsArr.eq(i).parents('div[class^=item]');
			
			if ((crewAgDescrParDiv.find('*[name^=crewingAgenciesExp]').val()==cleanField) &&
			(crewAgDescrParDiv.find('*[name^=countryAgenciesExp]').val()==data[4]) &&
			(crewAgDescrParDiv.find('*[name^=cityAgenciesExp]').val()==data[2])) {
				descrRecordExist = true;
				break;
			} // if

		} // for
		if (descrRecordExist) return;
		// check if already descr exists -------------------------------------------


		tmpElem = findFirstClearFieldsBlock(crewAgDescrFieldsArr);
		if (tmpElem!==null) {
			elemPar = tmpElem;
			allFieldsIsEmpty = true;
		} // if


		var idFieldset =elemPar.parents('fieldset').attr('id');
		tmpRootElement = elemPar.clone();
		
		elemPar.find('*[name^=crewingAgenciesExp]').val(cleanField);
		elemPar.find('*[name^=countryAgenciesExp]').val(data[4]);
		elemPar.find('*[name^=cityAgenciesExp]').val(data[2]);

		elemPar.find('*[name^=lastNameCPAgenciesExp]').val('');
		elemPar.find('*[name^=firstNameCPAgenciesExp]').val('');
		
		elemPar.find('*[name^=phoneNumberCPAgenciesExpCountryCode]').val(phoneCountry);
		elemPar.find('*[name^=phoneNumberCPAgenciesExpCityCode]').val(phoneCity);
		elemPar.find('*[name^=phoneNumberCPAgenciesExpDirect]').val(phoneDirect);
		if (allFieldsIsEmpty) return;
	
		tmpRootElement.insertAfter(elemPar);
		renameByOrderRecords(idFieldset); 
		initJqForCrewdata(); 

	} else if (tObj.attr('name').indexOf('crewingAgenciesExp')!=-1) {

		var elemPar = tObj.parents('div[class^=item]');
		var idFieldset =elemPar.parents('fieldset').attr('id');
		
		elemPar.find('*[name^=crewingAgenciesExp]').val(cleanField);
		elemPar.find('*[name^=countryAgenciesExp]').val(data[4]);
		elemPar.find('*[name^=cityAgenciesExp]').val(data[2]);
		
		if (resultPhone = pattPhoneInBD.exec(data[3])) {
			phoneCountry = resultPhone[1];
			phoneCity = resultPhone[3];
			phoneDirect = resultPhone[5];
		} // if
		elemPar.find('*[name^=phoneNumberCPAgenciesExpCountryCode]').val(phoneCountry);
		elemPar.find('*[name^=phoneNumberCPAgenciesExpCityCode]').val(phoneCity);
		elemPar.find('*[name^=phoneNumberCPAgenciesExpDirect]').val(phoneDirect);

	} // if if (tObj.attr('name').indexOf('crewingExp')!=-1)

} // func


function regionCA_AC(eventObj, data, formatted) {

	if ($(eventObj.target).attr('name')=='regionCArus') {
		$('input[name=regionCAeng]').val(data[1]);
		$('input[name=regionCArus]').val(data[0]);
	} else {
		$('input[name=regionCAeng]').val(data[0]);
		$('input[name=regionCArus]').val(data[1]);
	} // if

} // func


function city_AC(eventObj, data, formatted) {
	tObj = $(eventObj.target);
	cleanField = data[0];

	$('input[name=region]').val(data[1]);
	
	if (data[2]>0) {
		optArr = $('select[name=countryOfLiving]').find('option');
		for (var j=0; j<optArr.length; j++) {
			if (optArr.eq(j).attr('value')==data[2]) {
				optArr.eq(j).attr('selected',true);
			} // if
		} // for
	} // if
	
	tObj.val(cleanField);
	if ($("#adressWillLookLike")!==null) $('#houseStreetFlat').keyup();

} // func


function cityCA_AC(eventObj, data, formatted) {

	//alert(' 0'+data[0]+' 1'+data[1]+' 2'+data[2]+' 3'+data[3]+' 4'+data[4]);
	if ($(eventObj.target).attr('name')=='cityCArus') {
		$('input[name=cityCAeng]').val(data[3]);
		$('input[name=cityCArus]').val(data[0]);
	} else {
		$('input[name=cityCAeng]').val(data[0]);
		$('input[name=cityCArus]').val(data[3]);
	} // if

	$('input[name=regionCAeng]').val(data[1]);
	$('input[name=regionCArus]').val(data[4]);
	if (data[2]>0) setSelectedState($('select[name=countryCA]'),data[2]);


} // func

function cityDoc_AC(eventObj, data, formatted) {
	tObj = $(eventObj.target);
	tObj.val(data[0]);

	if (tObj.attr('name').indexOf('docCity')!=-1) {
		var currentFieldItem = tObj.parents('div[class^=item]');
		if (data[2]>0) setSelectedState(currentFieldItem.find('*[name^=docCountry]'),data[2]);
	} else if (tObj.attr('name').indexOf('addDocCity')!=-1) {
		if (data[2]>0) setSelectedState($('select[name=addDocCountry]'),data[2]);
	} // if
	
	tObj.val(cleanField);

} // func



function collegeName_AC(eventObj, data, formatted) {

	tObj = $(eventObj.target);
	tObj.val(data[1]);

	if (tObj.attr('name').indexOf('collegeName')!=-1) {
		var currentFieldItem = tObj.parents('div[class^=item]');
		if (data[2]>0) setSelectedState(currentFieldItem.find('*[name^=countryCollege]'),data[2]);
		currentFieldItem.find('input[name^=cityOnly]').val(data[3]);
	} // if

} // func

	
//function onchangeACfieldFunc(eventObj) {
////	tObj = $(eventObj.target);
////	tmpName = tObj.attr('name');
////
////	if (result = pattNameWithIndexLikeArr.exec(tmpName)) {
////	//if (result = /^([a-zA-Z0-9_]{1,})(\[{1})([0-9]{1,})(\]{1})$/.exec(tmpName)) {
////		index = result[3]; // '['+i+']'
////		clearName = result[1]; 
////	
////		//if (tmpName.indexOf("vesselNameExp")!=-1) vesselNameExpTmp = $('*[name=vesselNameExp['+index+']]').val();
////		if (clearName=="vesselNameExp") {
////			vesselNameExpTmp = $('*[name=vesselNameExp['+index+']]').val();
////		} // if
////	
////		$('*[name=crewingExp['+index+']]').setOptions({ 
////			extraParams: {
////				'exF1': vesselNameExpTmp,
////				'exF3': '3' 
////			}  	
////		 });
////		 $('*[name=crewingExp['+index+']]').flushCache();
////	} // if
////
//} // func



function hideShowBehaviorFunc(eventObj) {
	var elem = $(eventObj.target);
//	var elemPar = elem.parents('.hideShowTop');
//	var elemChild = elem.parents('fieldset').children('div.toggle');
	var elemChild = elem.parents('.hideShowTop').children('div.toggle');
	//elemChild.toggle();
	elemChild.slideToggle();
	if (elem.text()==hideToggle) elem.text(showToggle);
	else elem.text(hideToggle);
} // func



function fieldsetToggleFunc(eventObj) {
	var elem = $(eventObj.target);
	var elemPar = elem.parents('fieldset');
	var elemChild = elem.parents('fieldset').children('div.toggle');
	//elemChild.toggle();
	elemChild.slideToggle();
	if (elem.text()==hideToggle) elem.text(showToggle);
	else elem.text(hideToggle);
} // func

function toggleAdvancedSearchFunc() {
	var displayBlock = $("#AdvancedSearchBlock");
	var elem = $("#AdvancedSearchLink");
	var inputHidden = $("#advancedSearchShow");

	if (displayBlock.css("display")=="block") {
		elem.text(showAdvncedSearchToggle);
		displayBlock.css("display","none");
		inputHidden.val("no");
		displayBlock.find("input").attr("disabled",true);
	} else if (displayBlock.css("display")=="none") {
		elem.text(hideAdvncedSearchToggle);
		displayBlock.css("display","block");
		inputHidden.val("yes");
		displayBlock.find("input").attr("disabled",false);
		//$("#BHPslider").slider("value", bhpSliderMin, bhpSliderMax);
		//initSlider();
		$("#engineType").val("");
	} // if else
	//displayBlock.slideToggle();
	
} // func


function printAllInputTextnames() {
	var txtVar = '';
	$('input:text').each(function(i) {
		txtVar += '$1' + $('input:text').eq(i).attr('name') + '$2\r\n';
	});
	$('#tmpTxt').text(txtVar);

} // func




function deleteICRecordFunc(eventObj) {
	var elem = $(eventObj.target);
	var containerItems = elem.parents('div[name=containerItems]');
	currentRow = elem.parents('div[class^=item]');
	
	divsWithClassItemArr = containerItems.find('div[class^=item]');
	
	if (divsWithClassItemArr.length<=1) {
		cleanAllFormFieldsInCurrentRow(currentRow); //clean all fields
		return false;
	} // if

	currentRow.remove();
	renameByOrderRecordsInsideObj(containerItems,false); 
	return false;
} // func

function addNewICRecord(eventObj) {
	var elem = $(eventObj.target);
	var elemPar = elem.parents('div[class^=item]');
	var containerItems = elem.parents('div[name=containerItems]');

	tmpRootElement = elemPar.clone();
	//emailConfirmationStatus
	tmpRootElement.find('span[class^=emailConfirmationStatus]').remove();
	if (elem.attr('name').indexOf('duplicateICRecord')==-1) {
		cleanAllFormFieldsInCurrentRow(tmpRootElement); //clean all fields
	} else {
		copySelectedStateFromOneOption2Another(elemPar,tmpRootElement);
	} // if
	tmpRootElement.insertAfter(elemPar);
	renameByOrderRecordsInsideObj(containerItems,false); 
	initJqForCrewdata(); 

	return false;
} // func



function deleteDocsRecordFunc(eventObj) {
	var elem = $(eventObj.target);
	var idFieldset = elem.parents('fieldset').attr('id');
	currentRow = elem.parents('div[class^=item]');
	
	currentRow.remove();

	itemsArr = $('#'+idFieldset).find('div[class^=item]');
	var n = itemsArr.length;
	for(i=0;i<n;i++) {
		if ((i>0) && (i%2!=0)) itemsArr.eq(i).addClass(' even');
		else itemsArr.eq(i).removeClass(' even');
	} // for

	return false;
} // func




function deleteRecordFunc(eventObj) {
	var elem = $(eventObj.target);
	var idFieldset = elem.parents('fieldset').attr('id');
	currentRow = elem.parents('div[class^=item]');
	
	if ((idFieldset=='seaGoingExperienceFieldset') || (idFieldset=='shipExpirienceFieldset') || (idFieldset=='crewingCompaniesExpirienceFieldset') ) {
		divsWithClassItemArr = $('#'+idFieldset).find('div[class^=item]');
	} else {
		divsWithClassItemArr = $('div[class*=item]');
	} // if
	
	if (divsWithClassItemArr.length<=1) {
		cleanAllFormFieldsInCurrentRow(currentRow); //clean all fields
		return false;
	} // if

	if ($('div[class*=item]').length<=1) {
		cleanAllFormFieldsInCurrentRow(currentRow); //clean all fields
		return false;
	} // if
	currentRow.remove();
	renameByOrderRecords(idFieldset); 
	radioElArr = $('#'+idFieldset).find('input:radio');

	if (radioElArr.length>0) {
		noChecked = true;
		for(i=0; i<radioElArr.length; i++) {
			if (radioElArr.eq(i).attr('checked')) {
				noChecked = false;
				break;
			} // if
		} // for
		if (noChecked) radioElArr.eq(0).attr('checked',true);
	} // if
	return false;
} // func

function addNewRecord(eventObj) {
	var elem = $(eventObj.target);
	var elemPar = elem.parents('div[class^=item]');
	var idFieldset = elem.parents('fieldset').attr('id');
	tmpRootElement = elemPar.clone();

	tmpRootElement.find('input:radio').attr('checked',false);
	//if (elem.parent('a').attr('name').indexOf('duplicateRecord')==-1) {
	if (elem.attr('name').indexOf('duplicateRecord')==-1) {
		cleanAllFormFieldsInCurrentRow(tmpRootElement);
	} else {
		copySelectedStateFromOneOption2Another(elemPar,tmpRootElement);
	} // if


	tmpRootElement.insertAfter(elemPar);
	renameByOrderRecords(idFieldset); 
	initJqForCrewdata(); 

	return false;
} // func
//				optArr.eq(j).attr('selected',true);

function renameByOrderRecords(idFieldset) {
	itemsObj = $('#'+idFieldset);
	renameByOrderRecordsInsideObj(itemsObj,true);
} // func

function renameByOrderRecordsInsideObj(insideObj,addClassEven) {
	//if ((typeof insideObj == "undefined") || (typeof insideObj.valueOf() != "object")) return false;
	itemsArr = insideObj.find('div[class^=item]');
	var n = itemsArr.length;
	for(i=0;i<n;i++) {
		if (addClassEven) {
			if ((i>0) && (i%2!=0)) itemsArr.eq(i).addClass(' even');
			else itemsArr.eq(i).removeClass(' even');
		} // if
		
		radArr = itemsArr.eq(i).find('input:radio');
		if ((radArr.size()==1) && (!isNaN(radArr.eq(0).val()))) {
			radArr.eq(0).val(i);
		} // if
		labArr = itemsArr.eq(i).find('label');
		iterateArrayAndRenameItemsIndexes(i,labArr,'for');
		inpArr = itemsArr.eq(i).find('input');
		iterateArrayAndRenameItemsIndexes(i,inpArr,'name','id');
		selArr = itemsArr.eq(i).find('select');
		iterateArrayAndRenameItemsIndexes(i,selArr,'name','id');
	} // for

} // func



function iterateArrayAndRenameItemsIndexes(i,tmpArr,attrName,idStr) {
	if (is_emptyArr(tmpArr)) return; 
	if ((attrName!='name') && (attrName!='for')) return;
	for(j=0;j<tmpArr.length;j++) {
		tmpName = tmpArr.eq(j).attr(attrName);
		//if (result = /^([a-zA-Z0-9_]{1,})([)([0-9]{1,})(])$/.exec(tmpName)) {
		if (result = /^([a-zA-Z0-9_]{1,})(\[{1})([0-9]{1,})(\]{1})$/.exec(tmpName)) {
			newName = result[1]+'['+i+']';
			tmpArr.eq(j).attr(attrName,newName);
			if (!is_emptyStr(idStr) && (idStr=='id')) {
				tmpArr.eq(j).attr('id',newName);
			} // if
		} // if
	} // for
} // func


function is_emptyStr(tmpStr) {
	if(((typeof tmpStr != "undefined") && (typeof tmpStr.valueOf() == "string")) && (tmpStr.length > 0)) return false;
	return true;
} // func

function is_emptyArr(tmpArr) {
	if(((typeof tmpArr != "undefined") && (typeof tmpArr.valueOf() == "object")) && (tmpArr.length > 0)) return false;
	return true;
} // func

function onFormDataChangedFunc(eventObj) {
	tObj = $(eventObj.target);

	elem = tObj.parents('form')
	if (elem.attr('name').indexOf('loginForm')==-1) {
		elem.find('input[type=submit]').css('background-color','#dd7000');
		formhasBeenChanged = true;
	} // if
} // func



function onchangeFunc(eventObj) {
	tObj = $(eventObj.target);
	
	if (tObj.val()=='Diploma or Certificate of Competency') {
		$('div[name=addDocGradeRowForm]').css('visibility','visible');
		$('#addDocGrade').attr('disabled',false);
	} else {
		$('#addDocGrade').attr('disabled',true);
		$('div[name=addDocGradeRowForm]').css('visibility','hidden');
	} // if

	if ((tObj.val()=='Diploma or Certificate of Competency') || (tObj.val()=='Certificate')) {
		$('input.addDocEndorsement').attr('disabled',false);
		$('.addDocEndorsement').css('visibility','visible');
	} else {
		$('input.addDocEndorsement').attr('disabled',true);
		$('.addDocEndorsement').css('visibility','hidden');
	} // if

} // func

function cleanAllFormFieldsInCurrentRow(currentRow) {
	currentRow
//	impArr = currentRow.find('input');
	impArrText = currentRow.find('input[type=text]');
	impArrCheckbox = currentRow.find('input[type=checkbox]');
	selArr = currentRow.find('select');
	impArrText.val('');
	impArrCheckbox.attr('checked',false);
	if (!isNaN(selArr.val())) selArr.val(-1);
	else selArr.val('');

	currentRow.find('input[name^=countryExp]').val('');
	currentRow.find('input[name^=cityExp]').val('');

	currentRow.find('input[name^=idShipExp]').val('');

} // func


function toggleTooltips(eventObj) {
	var elem = $(eventObj.target);
	var qStr = 'tmpl_toggleNoSecureCookies.php?cookie=toggleTooltips';
	
	if (elem.attr('class')=='hideTooltips') {
		$('a[name=toggleTooltips]').text(toggleTooltipsShow);
		elem.attr('class','showTooltips');
		$('*[m_error]').unbind('mouseenter mouseleave');
		$('*[m_inf]').unbind('mouseenter mouseleave');
		qStr += '&do=show';
		hideToggleTooltips = true;
	} else if (elem.attr('class')=='showTooltips') {
		$('a[name=toggleTooltips]').text(toggleTooltipsHide);
		elem.attr('class','hideTooltips');
		$('*[m_error]').tipsy({trigger: 'focus', gravity: 's', title: 'm_error'});
		$('*[m_inf]').tipsy({trigger: 'focus', gravity: 's', title: 'm_inf'});
		qStr += '&do=hide';
		hideToggleTooltips = false;
	} // if
	qStr += '&uid='+Math.random();
	$('img[name=tooltipsHelpImg]').attr('src',qStr);
	return false;
} // func

function hideBlock(eventObj,parentObjClassName) {
	var elem = $(eventObj);
	var parrentBlock = elem.parents("'."+parentObjClassName.toString()+"'");
	parrentBlock.css('display','none');
	parrentBlock.css('visibility','hidden');
} // func

function copySelectedStateFromOneOption2Another(sourceContObj,destContObj) {
	
	var selArr = sourceContObj.find('select');
	for (var i=0; i<selArr.length; i++) {
		selElemName = selArr.eq(i).attr('name');
		
		if (result = /^([a-zA-Z0-9_]{1,})(\[{1})([0-9]{1,})(\]{1})$/.exec(selElemName)) {
			tmpName = result[1];
			tmpId = result[3];
			//alert(tmpName+' '+tmpId);
			
			optArr = selArr.eq(i).find('option');
			for (var j=0; j<optArr.length; j++) {
				if (optArr.eq(j).attr('selected')==true) {
					//destContObj.find('select[name='+selElemName+']').find('option').eq(j).attr('selected',true);
					destContObj.find('select[name^='+tmpName+']').find('option').eq(j).attr('selected',true);
				} // if
			} // for

		} // if

	} // for

} // func

function setSelectedState(destContObj,idValOption) {
	
	optArr = destContObj.find('option');
	for (var j=0; j<optArr.length; j++) {
		if (optArr.eq(j).val()==idValOption) {
		//if (optArr.eq(j).attr('selected')==true) {
			optArr.eq(j).attr('selected',true);
		} // if
	} // for

} // func


function popupLoaderImg(imgPath,imgW,imgH) {
	$.modal('<div><img src="'+imgPath+'" width="'+imgW+'" height="'+imgH+'"  title="" style="display: block;"></div>',{ appendTo:'body',overlayClose:true, opacity:75 });
	return false;	
} // func

function popupLoader(messageType) {
	optArr = $('#messageServiceType').find('option');
	if (messageType=='Error') optArr.eq(1).attr('selected',true);
	else optArr.eq(0).attr('selected',true);

	$.modal( $('#messageServiceForm'),{ overlayClose:true, opacity:75 });
	updateCpcha();
	return false;	
} // func

function popupLoaderHtml(htmlPage) {
//	optArr = $('#messageServiceType').find('option');
//	if (messageType=='Error') optArr.eq(1).attr('selected',true);
//	else optArr.eq(0).attr('selected',true);

	$.modal( $('#'+htmlPage),{ overlayClose:true, opacity:75 });
	return false;	
} // func

function popupClose() {
	$.modal.close();
	updateCpcha();
	return false;	
} // func

function updateCpcha()  { 
//	var tmp=document.getElementById('cpchaImg');
//	if (tmp!=null) tmp.src='tmpl_cpcha.php?uid='+Math.random();
	cpchaImg = $('img.cpchaImg');
	srcTmp = cpchaImg.attr('src');

	if ((indexStringStart=srcTmp.indexOf('&uid='))!=-1) {
		srcTmp = srcTmp.substr(0,indexStringStart);
	} // if
	srcTmp += '&uid='+Math.random(); 

	cpchaImg.attr('src',srcTmp);
	//$('img[id^=cpchaImg]').attr('src','tmpl_cpcha.php?uid='+Math.random());

	return false;
}

function updateEmailValue(emailOpType,indElem) {
	//alert('updateEmailValue');
	if(((typeof emailOpType != "undefined") && (typeof emailOpType.valueOf() == "string")) && (emailOpType.length > 0)) {
		if (((emailOpType=='email_confirm') || (emailOpType=='email_status')) && (typeof indElem != "undefined")) {
			elemInpVal = $('input[id=emailCA['+indElem+']]').val();
			aLinkObj = $('a[name='+emailOpType+'['+indElem+']]');
			aLinkObjSrc = aLinkObj.attr('href');
			if (patEmail.test(elemInpVal)) {
				if ((indexStringStart=aLinkObjSrc.indexOf('op='))!=-1) {
					aLinkObjSrc = aLinkObjSrc.substr(0,indexStringStart);
					//alert(aLinkObjSrc+'2');
					//aLinkObj.attr('href',aLinkObjSrc+'email='+elemInpVal+'&uniq='+Math.random());
					aLinkObj.attr('href',aLinkObjSrc+'op='+emailOpType+'&email='+elemInpVal+'&uniq='+Math.random());
				} // if

			} // if
			
		} // if
	} // if
	return true;
} // func
//email_confirm['.$i.']
//	'<a href="tmpl_op.php?op=email_confirm&email='.$emailCA[$i].'&uniq='.getRandomStr(5).'" target="techOp">подтвердить</a>&nbsp;<a href="tmpl_op.php?op=email_status&email='.$emailCA[$i].'&uniq='.getRandomStr(5).'" target="techOp">обновить статус</a>';


function hidePartOrMessageBlock(eventObj,contentClassName) {

	tObj = $(eventObj);
	contentItemBlock = tObj.parent('.'+contentClassName);
	messageBlock = contentItemBlock.parent('div').parent('div');
	countBlocks = messageBlock.find('.'+contentClassName).size();
	if (countBlocks<2) {
		messageBlock.remove();
	} else {
		contentItemBlock.remove();
	} // if else
	
	return true;
} // func

// onChange="onChangeCheckBoxHideRelativeObj('subscrVacancy','vesselTypeCBoxList')"
function onChangeCheckBoxHideRelativeObj(cBoxName,relativeObj) {

  	var tObj = $("#"+cBoxName);
	if (tObj.attr('checked')==true) $("#"+relativeObj).css('display','block');
	else $("#"+relativeObj).css('display','none');
	
} // func

function onChangeHouseStreetFlatAdress() {

	var printToDiv = $("#adressWillLookLike").find('div.c1');
	if (printToDiv===null) return;
	
	var countryTxt = $("#countryOfLiving").find('option:selected').text();
	var cityTxt = $("#city").val();
	var regionTxt = $("#region").val();
	var postIndexTxt = $("#postIndex").val();
//	var adress = $("#houseStreetFlat").val() + '<br>' + $("#city").val() + ', ' + $("#region").val() + ', ' + countryTxt + ', ' + $("#postIndex").val();	
	
	var adress = $("#houseStreetFlat").val() + '<br>'; 
	adress += $("#city").val();	
	if (regionTxt.length>0) adress += ', ' + regionTxt;
	adress += ', ' + countryTxt;	
	if (postIndexTxt.length>0) adress += ', ' + postIndexTxt;
	
	printToDiv.html(adress);
	
} // func


function onChangeWorkState(eventObj) {

  var currDate = new Date();
  $("#workStateFrom").val(currDate.getDate()+'.'+currDate.getMonth()+'.'+currDate.getFullYear());

  var tObj = $(eventObj.target);
  if (tObj.val() == 'On board now') $("#workStateTillContainer").css('display','inline');
  else $("#workStateTillContainer").css('display','none');
	
} // func


function onKeyUpOrChangeFieldFunc(eventObj) { // eventName,sourceFieldId,printToDivId
	
	tObj = $(eventObj.target);
	tName = tObj.attr('name');

	var printToDiv = null;
	var phoneCountry='';
	var phoneCity='';
	var phoneNumber='';
	//var phoneRegExp=/([0-9]{1,5})\s*([\(]{1})\s*([0-9]{1,5})\s*([\)]{1})([0-9\s\-]{4,10})/;
	var phoneRegExp=/([0-9]{1,5})([\(]{1})([0-9]{1,5})([\)]{1})([0-9]{4,10})/;
	var cleanDelimiterRegExp=/([\-\s])/g;
	var tVal = tObj.val().replace(cleanDelimiterRegExp,'');

	if (tName=='phoneNumberCountryCode' || tName=='phoneNumberCityCode' || tName=='phoneNumberDirect') {
		printToDiv = $('#phoneDirectWillLookLike');
		phoneCountry=$('#phoneNumberCountryCode');
		phoneCity=$('#phoneNumberCityCode');
		phoneNumber=$('#phoneNumberDirect');
	} else if (tName=='phoneNumberMobileCountryCode' || tName=='phoneNumberMobileCityCode' || tName=='phoneNumberMobileDirect') {
		printToDiv = $('#phoneNumberMobileWillLookLike');
		phoneCountry=$('#phoneNumberMobileCountryCode');
		phoneCity=$('#phoneNumberMobileCityCode');
		phoneNumber=$('#phoneNumberMobileDirect');
	} // if else
	
	if (printToDiv===null) return;
	matchArr = tVal.match(phoneRegExp);
	if (matchArr!==null) { 
		//alert(matchArr[1]+'('+matchArr[3]+')'+matchArr[5]);
		phoneCountry.val(matchArr[1]);
		phoneCity.val(matchArr[3]);
		phoneNumber.val(matchArr[5]);
	} // if
	
	fullNumber = phoneCountry.val()+''+phoneCity.val()+''+phoneNumber.val();
	if (fullNumber.length>0) printToDiv.html('<span class="memo">+</span>'+phoneCountry.val()+'<span class="memo">(</span>'+phoneCity.val()+'<span class="memo">)</span>'+phoneNumber.val());
	else printToDiv.html('');

} // func


function engineType_AC(eventObj, data, formatted) {
	tObj = $(eventObj.target);
	cleanField = str_replace('&amp;','&',data[0]);
	tObj.val(cleanField);
} // func

function printObjProperties(someObj) { 
	
	for (var key in someObj) {  
		var val = someObj[key];
		alert (key+' = '+val);  
	}  // for

} // func

//unused____________________________________________________

//function replaceIndexOfArrayInStr(i,strTmp) {
//	if (is_emptyStr(strTmp)) return '';
//	var re = /\[[0-9]\]/;
//	strTmp = strTmp.replace(re, '['+i+']');
//	return strTmp;
//} // func

