/**
@name ValidaContaBRB.js
@description Formata e valida Conta Corrente do BRB
@methods fnFormataContaBRB, fnValidaContaBRB
@created 02/08/2010
@author Clendson Gonçalves
*/
//*************************************************************************************************************

/**
@name fnFormataContaBRB
@description Formata o numero da conta BRB seguindo a mascara 000.000.000-0
@created 02/08/2010
@param input: o campo onde a conta está sendo digitado
@return Não retorna nada
@author Clendson Gonçalves
*/
function fnFormataContaBRB(input)
{
	var ContaBRB = input.value;
	
	if (ContaBRB.length != 0)
	{			
		// só formate caso o usuário digite números
		if ((event.keyCode < 96 || event.keyCode > 105) && (event.keyCode < 48 || event.keyCode > 57))
			return;
			
		// acrescente os pontos e os dígitos aos números digitados
		if (ContaBRB.length == 3 || ContaBRB.length == 7)
			ContaBRB = input.value + "." ;
		else if (ContaBRB.length == 11)
			ContaBRB = ContaBRB + "-" ;

		input.value = ContaBRB;
	}
}		
//*************************************************************************************************************

/**
@name fnValidaContaBRB
@description Valida o numero da Conta BRB informado.
@created 02/08/2010
@param input: o campo onde a Conta BRB está sendo digitado
@return true, caso o número seja válido, false, caso contrário
@author Clendson Gonçalves / Aline Goulart
*/
function fnValidaContaBRB(numContaBRB)
{
	var result = false;
	
	// retire os caracteres não-numéricos
	numContaBRB = numContaBRB.replace(/\D/g, "");

	if (numContaBRB == "1111111111" || numContaBRB == "2222222222" || numContaBRB == "3333333333" ||
	    numContaBRB == "4444444444" || numContaBRB == "5555555555" || numContaBRB == "6666666666" ||
		numContaBRB == "7777777777" || numContaBRB == "8888888888" || numContaBRB == "9999999999" ||
		numContaBRB == "0000000000" || numContaBRB == "") {
		result = false;
		return result;
	}
	
	var x = 0;
	var k = 2;
	var soma = 0;
	var resto = 0;
	var dv = 0;
	var texto = "";
	var numContaBRB1 = "";
	var len = numContaBRB.length;
	var totaligual = 0;   
	
	for (var wx=0; wx <= len; wx++)
		if( numContaBRB.substring(wx,wx+1) == numContaBRB.substring(0,1)) { totaligual++;}
	
	if ( totaligual != 11 ) {
		x = len - 1;

		for (var i=9; i>0; i--)
		{
			soma = soma + (numContaBRB.substring( i-1, i ) * k);

			if (k == 9){k=1}
			
			k = k+1;
			
      }
	}

		resto = soma % 11;
		
    if (resto == 0 || resto == 1) {dv = 0}
    else {dv = 11 - resto};    
		
	if ((dv) == numContaBRB.substring(len-1,len))
		result = true;
	


	return result;
}
//*************************************************************************************************************

