/*
arrAreasFuncionais -> #frm_EP_AreaFuncional
arrGruposActividade -> #frm_EP_GrupoActividade
arrNiveisTitulo -> #frm_HA_Habilitacao
arrTitulos_... -> #frm_HA_HabilitacaoTipo
arrSexos -> 'not used'
arrNacoes -> #frm_IP_Nacionalidade
arrEstadosCivis -> #frm_IP_EstadoCivil
arrQualificacaoGrupo
arrQualificacaoGrupo_...
*/

var frmRec_iReplicatorCurrent = 1;


$(document).ready(function() {

	//--------------------------
	// Initialize Data Types
	//--------------------------
	$("INPUT.Numeric").numeric();
	
	$('INPUT[@onempty]').each(function() {
		if($(this)[0].value == '') { $(this)[0].value = $(this)[0].getAttribute('onempty'); }
	});
	$('INPUT[@onempty]').focus(function() {
		if($(this)[0].value == $(this)[0].getAttribute('onempty')) { $(this)[0].value = ''; }
	});
	$('INPUT[@onempty]').blur(function() {
		if($(this)[0].value == '') { $(this)[0].value = $(this)[0].getAttribute('onempty'); }
	});

	//--------------------------
	// Fill Selects
	//--------------------------
	$('#frm_IP_Nacionalidade').addOption(arrNacoes, false);
	$('#frm_IP_EstadoCivil').addOption(arrEstadosCivis, false);

	$('#frm_EP_GrupoActividade').addOption(arrGruposActividade, false);
	$('#frm_EP_AreaFuncional').addOption(arrAreasFuncionais, false);

	$('#frm_HA_Habilitacao').addOption(arrNiveisTitulo, false);
	$('#frm_HA_Habilitacao').change(function() {
		var sArrayName = 'arrTitulos_' + $(this).selectedValues()[0];
		$('#frm_HA_HabilitacaoTipo').removeOption(/./);
		try {
			$('#frm_HA_HabilitacaoTipo').addOption(eval(sArrayName), false);
		}
		catch(err) {}
	});
	
	$('.frm_CMI_Competencia').addOption(arrQualificacaoGrupo, false);
	$('.frm_CMI_Competencia').change(function() {
		var sTargetClass = '.frm_CMI_Competencia_' + $(this)[0].num;
		var sArrayName = 'arrQualificacaoGrupo_' + $(this).selectedValues()[0];
		sArrayName = sArrayName.replace(/\./,'');
		try {
			$(sTargetClass).find('SELECT').removeOption(/./);
			$(sTargetClass).find('SELECT').addOption(eval(sArrayName), false);
		}
		catch(err) {}
	})

	//--------------------------
	// Replicator
	//--------------------------
	$('.Replicate').click(function() {
		$('.Replicator').append($('.ReplicatorHidden')[0].innerHTML);

		$('.Replicator INPUT').each(function() {
			$(this)[0].name = $(this)[0].name.replace(/\[XXX\]/, '[' + frmRec_iReplicatorCurrent + ']');
		})
		$('.Replicator SELECT').each(function() {
			$(this)[0].name = $(this)[0].name.replace(/\[XXX\]/, '[' + frmRec_iReplicatorCurrent + ']');
		})
		$('.Replicator TEXTAREA').each(function() {
			$(this)[0].name = $(this)[0].name.replace(/\[XXX\]/, '[' + frmRec_iReplicatorCurrent + ']');
		})
				
		frmRec_iReplicatorCurrent++;
	})

	$('.Replicate').trigger('click');
	
})


function validateRecForm(obj) {
	var bRet = true;
	var sMessage = '';

	//- Sexo ----------
	var bHasSexo = false;
	$('INPUT[@name="Identificação_Pessoal[Sexo]"]').each(function() {
		if($(this)[0].checked) { bHasSexo = true; }
	})
	if(!bHasSexo) {
		sMessage += FRM_REC_SEX + "\n";
		$('INPUT[@name="Identificação_Pessoal[Sexo]"]')[0].focus();
		bRet = false;
	}

	//- Nacionalidade ----------
	$('SELECT[@name="Identificação_Pessoal[Nacionalidade]"]').each(function() {
		if($(this).selectedValues()[0] == '') { sMessage += FRM_REC_NATIONALITY + "\n"; $(this)[0].focus(); bRet = false; }
	})

	//- Identificação Pessoal ----------
	$('SELECT[@name="Identificação_Pessoal[Estado_Civil]"]').each(function() {
		if($(this).selectedValues()[0] == '') { sMessage += FRM_REC_CIVIL_STATE + "\n"; $(this)[0].focus(); bRet = false; }
	})

	//- Habilitação ----------
	$('SELECT[@name="Habilitações_Académicas[Habilitação]"]').each(function() {
		if($(this).selectedValues()[0] == '') { sMessage += FRM_REC_HABILITATION + "\n"; $(this)[0].focus(); bRet = false; }
	})

	//- Habilitação Tipo ----------
	$('SELECT[@name="Habilitações_Académicas[Habilitação_Tipo]"]').each(function() {
		if($(this).selectedValues()[0] == '') { sMessage += FRM_REC_HABILITATION_TITLE + "\n"; $(this)[0].focus(); bRet = false; }
	})

	//- Alert if there is an Error --------
	if(sMessage != '') { alert(sMessage); return(bRet); }

	//- Validate Standard ----------
	if(!validateStandard(obj)) { return(false); }

}


