var _UPDATE = "U";
var _INSERT = "I";
var _ACTION = "";// I = INSERT; U = UPDATE;

abrirModalPerfilContrato = function() {
	_ACTION = _INSERT;
	limparFormulario('formPerfilContrato');
	Modal.open('modal-popup-perfil-contrato');
};

fechaModalPopupPerfilContrato = function(){
	document.getElementById('rowIndexPerfil').value = '';
	Modal.close('modal-popup-perfil-contrato');
};
/** XXX----------------------PERFIL DO CONTRATO-----------------------* */

inserirPerfilDoContrato = function() {
	var perfil = new CIT_ContratoPerfilDTO();
	perfil = perfilContratoItem();

	if (perfil.nomePerfilContrato == null || perfil.nomePerfilContrato == '') {
		var labelInicioValidacao = i18n_message("gerenciaportfolio.descricao");
		alert(labelInicioValidacao.concat(' ').concat(LABEL_FINAL_VALIDACAO));
		return false;
	}

	var index = document.getElementById('rowIndexPerfil').value;
	var itemJaExisteNaLista = registroExistenteEmTabela(index);
	var colunas = [ "nomePerfilContrato", "custoHora", "" ]
	var funcaoExibirIcons = [ exibeIconesTabelaPerfil ];

	if (itemJaExisteNaLista) {
		if (validaExistenciaRegistroIgualEmOutroIndexDaTabelaPerfis(perfil)) {
			alert(i18n_message("citcorpore.comum.registroJaCadastrado"));
			return false;
		}
		atualizarLinhaEmTabela('tblPerfilContrato', perfil, colunas,
				funcaoExibirIcons, document.formCadastroContrato, index);
	} else {
		adicionaLinhaEmTable('tblPerfilContrato', perfil, colunas,
				funcaoExibirIcons, document.formCadastroContrato);
	}

	var objsCriterios = HTMLUtils.getObjectsByTableId('tblPerfilContrato');
	document.formCadastroContrato.colItens_Perfis_Serialize.value = ObjectUtils
			.serializeObjects(objsCriterios);
	limparFormulario('formPerfilContrato');
	document.getElementById('rowIndexPerfil').value = '';

	fechaModalPopupPerfilContrato();
};

perfilContratoItem = function() {
	var perfil = new CIT_ContratoPerfilDTO();

	perfil.idPerfilContrato = document.getElementById('idPerfilContrato').value != null ? document
			.getElementById('idPerfilContrato').value
			: '';
	perfil.nomePerfilContrato = document.getElementById('nomePerfilContrato').value;
	perfil.idContrato = document.getElementById('idContrato').value;
	perfil.custoHora = document.getElementById('custoHora').value;

	return perfil;
};

exibeIconesTabelaPerfil = function(row, obj) {
	var linkAlterar ='';
	var linkExcluir ='';
	if(permissaoGravar == true){
		linkAlterar = '<a title="'
			+ i18n_message("citcorpore.comum.editar")
			+ '" onclick="editarModalPerfilContrato(this.parentNode.parentNode.rowIndex);" class=\"btn-action glyphicons pencil btn-success\"><i></i></a>';
	}
	var espaco = "&nbsp;"
	if(permissaoDelete == true){
		linkExcluir = '<a title="'
			+ i18n_message("citcorpore.comum.excluir")
			+ '" onclick="controlarDelecaoLinhaTabelaPerfilContrato(this.parentNode.parentNode.rowIndex);" class=\"btn-action glyphicons remove_2 btn-default\"><i></i></a>';
	}
	row.cells[2].innerHTML = linkAlterar.concat(espaco).concat(linkExcluir);
};

editarModalPerfilContrato = function(index) {
	_ACTION = _UPDATE;
	var lista = ObjectUtils
			.deserializeCollectionFromString(document.formCadastroContrato.colItens_Perfis_Serialize.value);
	document.getElementById('rowIndexPerfil').value = index;

	for (var i = 0; i < lista.length; i++) {
		if (index == i + 1) {
			var perfil = new CIT_ContratoPerfilDTO();
			perfil = lista[i];
			document.getElementById('idPerfilContrato').value = perfil.idPerfilContrato;
			document.getElementById('nomePerfilContrato').value = perfil.nomePerfilContrato;
			document.getElementById('idContrato').value = perfil.idContrato;
			document.getElementById('custoHora').value = perfil.custoHora;
			break;
		}
	}
	Modal.open('modal-popup-perfil-contrato');
};

controlarDelecaoLinhaTabelaPerfilContrato = function(index) {
	var lista = ObjectUtils
			.deserializeCollectionFromString(document.formCadastroContrato.colItens_Perfis_Serialize.value);
	for (var i = 0; i < lista.length; i++) {
		if (index == i + 1) {
			var ans = new CIT_ContratoPerfilDTO();
			ans = lista[i];
			if (ans.idPerfilContrato != null && ans.idPerfilContrato != '') {
				document.getElementById('colItens_Delecao_Perfil').value += ans.idPerfilContrato
						+ ",";
				break;
			}
		}
	}

	removeLinhaTabela('formCadastroContrato', 'colItens_Perfis_Serialize',
			'tblPerfilContrato', index);
};

validaExistenciaRegistroIgualEmOutroIndexDaTabelaPerfis = function(objCompare) {
	var lista = ObjectUtils.deserializeCollectionFromString($(
			'#colItens_Perfis_Serialize').val());
	for (var i = 0; i < lista.length; i++) {
		var ans = new CIT_ContratoPerfilDTO();
		ans = lista[i];

		if((_ACTION == _INSERT) && (objCompare.nomePerfilContrato == ans.nomePerfilContrato) && (objCompare.custoHora == ans.custoHora)){
			return true;

		}else if (_ACTION == _UPDATE) {
			if((objCompare.nomePerfilContrato == ans.nomePerfilContrato) && (objCompare.custoHora == ans.custoHora)){
				return true;
			}
		}
	}
	return false;
};

verificaSeNuloIndefinidoVazio = function(param){
	if(param === null || param === undefined || param === ""){
		return true;
	}
	return false;
};