/*
----------------------------------------------------------------------------------------------------------------------------------------------------
Data Início							:	Goiânia, segunda-feira, 15 de maio de 2000 às 15:14 hs
Data Fim								:	Goiânia, segunda-feira, 15 de maio de 2000 às 00:00 hs
Data de Atualização		:	
Autor										:	Marcelo de Oliveira Assis
													Bruno Estevão Monteiro Guida
Objetivo								:	 
													Exemplo : 
Nome									:	Function ValidaCGC ( )
Padrões								:	. Cabeçalho em toda função, com as informações acima
													. Nome da função sempre intuitiva, com iniciais maiúsculas, sem espaços, sem sublinha
													. Variáveis sempre declaradas, com a seguinte nomenclatura :
														- V - Variáveis - Início de todo nome de variável
														- P - Parâmetro - Variável de parâmetro
														- Nome - Sempre intuitivo, com as iniciais maiúsculas, sem espaços, sem sublinha
														- VNomeRazaoSocial - nome ou razão social de um contribuinte
													. Marcar todo inicío e final de bloco com a seguinte nomenclatura :
														- F01 - início e final da primeira função, 02 para a segunda, etc . . .
														- I01 - início e final do primeiro if, 02 para o segundo, etc . . .
														- Fo01 - início e final do primeiro for, 02 para o segundo, etc . . .
----------------------------------------------------------------------------------------------------------------------------------------------------
*/

/* -------------------- Início da função de validação do CGC */
function ValidaCGC(VPCGC)
{ // F04
	var VCGC = VPCGC; // Recebe o valor do parametro repassado
	var I; //
	var J; // 
//	var VTotal;
//	var VDigito1;
	var VResto = 0;
//	var VValor;
	var VPosicao;
	
	// ----  Consiste 1º Dígito verificador
	
	J = 5;
	VResto = 0;
	for (I = 0; I < 12; I++)
	{
		VPosicao = VCGC.charAt(I);
		VResto = VResto + (VPosicao * J);
		J--;
		if (J == 1)
		J = 9;
	}
	VResto %= 11;
	VResto = 11 - VResto;

	if (VResto > 9)
	VResto = 0;

	if (VCGC.charAt(12) != VResto)
	{
		alert('CNPJ incorreto');
		return false;
	}
	
	// ------ Consiste 2º Digito verificador -------
	
	VResto = VResto + VResto;
	J = 6;
	for (I = 0; I < 12; I++)
	{
		VPosicao = VCGC.charAt(I);
		VResto = VResto + (VPosicao * J);
		J--;
		if (J == 1)
		J = 9;
	}
	
	VResto %= 11;
	VResto = 11 - VResto;
	
	if (VResto > 9)
	VResto = 0;
	
	if (VCGC.charAt(13) != VResto)
	{
		alert('CNPJ incorreto');
		return false;
	}
	return true;
}

