/**
 * Controla as camadas de GPRS do contrato operadora
 */
function controlaCamada() {
	var tpCont = document.getElementById("comboTipoContra");		
	if (tpCont == null ){
		return;
	}else{
		tipoContratacao = tpCont.value;
	}
	var divNaoContratado = document.getElementById("divNaoContratado");
	var divMBAvulso = document.getElementById("divMBAvulso");
	var divCompartilhado = document.getElementById("divCompartilhado");
	var divIlimitado = document.getElementById("divIlimitado");
	var divFranquia = document.getElementById("divFranquia");
		
	if(tipoContratacao == 0 ) {
		divNaoContratado.style.display = "block";
			divMBAvulso.style.display = "none";
  		divCompartilhado.style.display = "none";
  		divIlimitado.style.display = "none";
  		divFranquia.style.display = "none";
	}else if(tipoContratacao == 1){
        divNaoContratado.style.display = 'none';
			divMBAvulso.style.display = 'block';
  		divCompartilhado.style.display = 'none';
  		divIlimitado.style.display = 'none';
  		divFranquia.style.display = 'none';
	}else if(tipoContratacao == 2){
      divNaoContratado.style.display = 'none';
			divMBAvulso.style.display = 'none';
  		divCompartilhado.style.display = 'block';
  		divIlimitado.style.display = 'none';
  		divFranquia.style.display = 'none';
				}else if(tipoContratacao == 3){
        divNaoContratado.style.display = 'none';
		divMBAvulso.style.display = 'none';
 			divCompartilhado.style.display = 'none';
 			divIlimitado.style.display = 'block';
 			divFranquia.style.display = 'none';
				}else if (tipoContratacao == 4){
		divNaoContratado.style.display = 'none';
		divMBAvulso.style.display = 'none';
 			divCompartilhado.style.display = 'none';
 			divIlimitado.style.display = 'none';
 			divFranquia.style.display = 'block';
	}
	var obj = document.getElementById("comboTipoContra");
	obj.value = tipoContratacao;
}


/** <br>
 * Função que exibirá inicialmente as abas dos contratos, estas abas são divs. Que irá mudar o display<br>
 * igual a <code>block</code> ou <code>none</code>.<br>
 * <br>
 * @param imagem Caminho da imagem, referente a aba habilita .<br>
 * @param aba Referencia a qual aba será habilitada.<br>
 * @param qtAbas Quantidade de abas que a página conterá.<br> 
 */
function exibe_aba(imagem, aba,qtAbas){
	document.getElementById("tabelaAbas").style.backgroundImage="url("+imagem+")";
	for (iCont = 1; iCont <= qtAbas; iCont++){
		divAba = document.getElementById("aba"+iCont);
		if (iCont == aba){
			divAba.style.display = "block";
		}else{
			divAba.style.display = "none";
		}
	}
}

/**
 * Encarregada de limpar todos os elementos da tela.<br> 
 * Colocando o background de cada elemento de cor branca.<br> 
 */
function limpaMensagens(){
	for (iCont = 0;  iCont < document.forms[0].elements.length; iCont++){
		document.forms[0].elements[iCont].style.backgroundColor = "#FFFFFF";
	}
}

/**
 * Encarregada de verificar os id dos elementos das páginas e colorir(para demonstrar o erro) os elementos <br> 
 * que contem algum dado inválido e exibir uma janela com a descrição dos erros.<br> 
 * Colocando o background de cada elemento de cor vermelha clara.<br>
 * @param campos
 */
function carregaMensagens(campos){		
	erros = "";	
	for (iCont = 0; iCont < campos.length; iCont++){
		erros += campos[iCont].erro+"\n";
		if(campos[iCont].campo != ''){
			document.getElementById(campos[iCont].campo).style.backgroundColor = "#ffc6c6";
			if(campos[iCont].campo == "deData"){
				document.getElementById("deHora").style.backgroundColor = "#ffc6c6";
			}
			if(campos[iCont].campo == "ateData"){
				document.getElementById("ateHora").style.backgroundColor = "#ffc6c6";
			}
		}
	}
	alert(unescape(erros));
}

/**
 * Encarregada de limpar a tabela .<br> 
 * Limpando o(s) registro(s) do ultimo para o primeiro.<br>
 * @param tabela 
 */
function limpaTabela(tabela){
	for (iCont = tabela.rows.length -1; iCont > 0; iCont--){
		tabela.deleteRow(iCont);
	}
}

/**
 * Função usada para popular combos via XML
 */
function populaCombos(httpRequest,combo){
	combo.options.length = 0;
	//var teste = '<root><ConsultorTO><codigo>0</codigo><descricao>Selecione...</descricao></ConsultorTO><ConsultorTO><codigo>8</codigo><descricao><![CDATA[ANA PAULA FERREIRA BARBOSA]]></descricao></ConsultorTO><ConsultorTO><codigo>9</codigo><descricao><![CDATA[Leonardo R. do Valle Gomes]]></descricao></ConsultorTO><ConsultorTO><codigo>10</codigo><descricao><![CDATA[Karina Marques Ribeiro ]]></descricao></ConsultorTO><ConsultorTO><codigo>11</codigo><descricao><![CDATA[MARIA CRISTINA RINCON]]></descricao></ConsultorTO><ConsultorTO><codigo>12</codigo><descricao><![CDATA[CLAUDIO MURILO VIANA GOMES]]></descricao></ConsultorTO><ConsultorTO><codigo>13</codigo><descricao><![CDATA[TIAGO SPINA SIMÕES]]></descricao></ConsultorTO><ConsultorTO><codigo>14</codigo><descricao><![CDATA[ALESSANDRO BIBIANO DE FREITAS]]></descricao></ConsultorTO><ConsultorTO><codigo>15</codigo><descricao><![CDATA[FRANCISCO JOSÉ DE OLIVEIRA]]></descricao></ConsultorTO></root>';
	//var teste = '<root><PerfilTO><codigo>0</codigo><descricao>Selecione...</descricao></PerfilTO><PerfilTO><codigo>2</codigo><descricao><![CDATA[Gestor]]></descricao></PerfilTO><PerfilTO><codigo>3</codigo><descricao><![CDATA[Usuário]]></descricao></PerfilTO><PerfilTO><codigo>10</codigo><descricao><![CDATA[Gerente Gestor]]></descricao></PerfilTO><PerfilTO><codigo>8</codigo><descricao><![CDATA[Gerente de Canal]]></descricao></PerfilTO><PerfilTO><codigo>7</codigo><descricao><![CDATA[Consultor do Agente Autorizado]]></descricao></PerfilTO><PerfilTO><codigo>9</codigo><descricao><![CDATA[Gerente de Contas]]></descricao></PerfilTO><PerfilTO><codigo>1</codigo><descricao><![CDATA[Administrador]]></descricao></PerfilTO></root>';
    //alert('responseText: '+httpRequest.responseText);
    var root = getDOM(httpRequest.responseText);
    //var root = getDOM(teste);
    //alert('root: '+root);
    for (iNode = 0; iNode < root.childNodes.length; iNode++) {
    	var node = root.childNodes.item(iNode);
       	var codigo = 0;
       	var descricao = '';
        for (i = 0; i < node.childNodes.length; i++) {
       		var sibl = node.childNodes.item(i);
       		if(sibl.firstChild!=undefined){
	           	if(i==0){
	           		codigo=sibl.firstChild.data;
	           	}else if(i==1){
	           		descricao=sibl.firstChild.data;
	           	}
           	}
        }
        var option = new Option(descricao, codigo);
       	try{
        	combo.add(option,null); // standards compliant
        }catch(ex){
           	combo.add(option, -1); // IE only
        }
    }
}

/*
 * Decodifica o XML
 */
function getDOM(xml){
    // code for IE
    if (window.ActiveXObject){
        var doc=new ActiveXObject("Microsoft.XMLDOM");
        doc.async=false;
        doc.loadXML(xml);
    }
    // code for Mozilla, Firefox, Opera, etc.
    else{
        var parser=new DOMParser();
        var doc=parser.parseFromString(xml,"text/xml");
    }
    // documentElement always represents the root node
    return doc.documentElement;
}

/**
 * Função usada para receber texto em XML
 */
function pegaTexto(httpRequest){
	var root = getDOM(httpRequest.responseText);
    var texto = '';
    for (iNode = 0; iNode < root.childNodes.length; iNode++) {
    	var node = root.childNodes.item(iNode);
       	for (i = 0; i < node.childNodes.length; i++) {
       		var sibl = node.childNodes.item(i);
           	texto=sibl.firstChild.data;
        }        
    }
    return texto;
}

/**
 * Função usada para setar o valor de campo pelo id
 */
function setaCampo(campo,valor){
	document.getElementById(campo).value = valor;
}

