function padl(str, tam, caracter) {
	/* Acrescenta o $caracter na string pela esquerda até que o tamanho seja == $tam */
	var resto, i;
	var junta = '';

	resto = tam - str.length;
	// Verifica se a string é maior que o tam especificado
	if (resto < 0) {
		// Se sim, devolve a string sem editar
		return str;
	}
	for (i = 0; i < resto; i++) {
		junta = junta.concat('0');
	}

	str = junta.concat(str);

	return str;
}

function padr(str, tam, caracter) {
	/* Acrescenta o $caracter na string pela esquerda até que o tamanho seja == $tam */
	var resto, i;
	var junta = '';

	resto = tam - str.length;
	// Verifica se a string é maior que o tam especificado
	if (resto < 0) {
		// Se sim, devolve a string sem editar
		return str;
	}
	for (i = 0; i < resto; i++)	{
		junta = junta.concat('0');
	}

	str = str.concat(junta);

	return str;
}

function isCpf(cpf_num) {
	cpf_num = padl(cpf_num, 11, '0');
	var dg1 = parseInt(cpf_num.charAt(0));
	var dg2 = parseInt(cpf_num.charAt(1));
	var dg3 = parseInt(cpf_num.charAt(2));
	var dg4 = parseInt(cpf_num.charAt(3));
	var dg5 = parseInt(cpf_num.charAt(4));
	var dg6 = parseInt(cpf_num.charAt(5));
	var dg7 = parseInt(cpf_num.charAt(6));
	var dg8 = parseInt(cpf_num.charAt(7));
	var dg9 = parseInt(cpf_num.charAt(8));
	var dg10 = parseInt(cpf_num.charAt(9));
	var dg11 = parseInt(cpf_num.charAt(10));
	// Verificação do 10.o digito
	var dc10 = (dg9*2) + (dg8*3) + (dg7*4) + (dg6*5) + (dg5*6) + (dg4*7) + (dg3*8) + (dg2*9) + (dg1*10);
	var rdiv = dc10 % 11;
	//
	if ((rdiv == 0) || (rdiv == 1)) {
		rdiv = 0;
	} else {
		rdiv = 11 - rdiv;
	}
	// Verifica se o resultado é igual ao décimo digito
	if (rdiv != dg10) {
		return false;
	}
	// Verificacao do 11.o digito
	var dc11 = (dg10*2) + (dg9*3) + (dg8*4) + (dg7*5) + (dg6*6) + (dg5*7) + (dg4*8) + (dg3*9) + (dg2*10) + (dg1*11);
	rdiv = dc11 % 11;
	if ((rdiv == 0) || (rdiv == 1)) {
		rdiv = 0;
	} else {
		rdiv = 11 - rdiv;
	}
	if (rdiv != dg11) {
		return false;
	} else {
		return true;
	}
}
