var TJMG_COOKIE = "TJMG_SESSION_ID";

function getCookie(pName) {
	var search = pName + "=";
	if (document.cookie.length > 0) { // if there are any cookies
		var offset = document.cookie.indexOf(search);
		if (offset != -1) { // if cookie exists
			offset += search.length;
			// set index of beginning of value
			var end = document.cookie.indexOf(";", offset);
			// set index of end of cookie value
			if (end == -1)
				end = document.cookie.length
			return unescape(document.cookie.substring(offset, end))
		}
	}
	return null;
} // getCookie

// Atribui valor de um cookie. Data de expiração é opcional.
function setCookie(pName, pValue, pExpire) {
	if (pName && pValue)
		document.cookie = pName + "=" + escape(pValue)
		 + ((pExpire == null) ? "" : ("; expires=" + pExpire.toGMTString()));
} // setCookie


//------------------------------ DV10 ------------------------------//

function dv10(pNumProc) {
	var vDigito;
	var vSoma = 0;
	var vTamanho;
	var j;
	var vParcela;
	var vMultiplicador; // 1 ou 2

	v1NumProc = pNumProc.substring(0,12);
	if (! v1NumProc) {
		return 0;
	}

	vTamanho = v1NumProc.length;
	vMultiplicador = (vTamanho % 2) + 1; // 1 se par, 2 se impar
	for (j = 0; j < vTamanho; j++) {
		vParcela = (v1NumProc.substring(j,j+1)) * vMultiplicador;
		if (vParcela >= 10) {
			vParcela = (vParcela % 10) + 1;
		}
		vMultiplicador = 3 - vMultiplicador; // Alterna entre 1 e 2
		vSoma += vParcela;
	}

	vDigito = (10 - (vSoma % 10)) % 10;
	return vDigito;
} // dv10


//------------------------------ dvProcesso ------------------------------//

function dvProcesso(pTipoTribunal, pNumero)
{
	var digito;
	var soma = 0;

	if (pTipoTribunal == 1)
	{
		// Se o TIPO TRIBUNAL for 1 (TJ), chama a função FN_DV10
		digito = dv10(pNumero);
	}
	else if (pTipoTribunal == 2)
	{
		// Se o TIPO TRIBUNAL for 2 (TA), realiza o cálculo do dígito
		// de acordo com as regras do antigo TA

		// Verifica se a Comarca e o Ano (TA) são iguais a zero (0)
		if (pNumero.substring(0, 6) != 0)
		{
			return null;
		}

		numProcesso = pNumero.substring(6, 13);
		// Multiplica cada algarismo pela (posição + 1) correspondente
		// Ex.: 2 * 1º algarismo / 3 * 2º algarismo / 4 * 3º etc.
		for (i = 0; i < 6; i++)
		{
			soma += (2 + i) * (numProcesso.charAt(i) - '0');
		}

		// Calcula o Dígito pelo MOD 10 da Soma
		digito = (soma % 10);
	}
	else
		return null;

	return digito;
} // dvProcesso