
var http_request = getXMLHttpRequest();
var forcaSenha = 0;

function $(id) 
{
	return document.getElementById(id);
}

function getXMLHttpRequest()
{
	try { return new XMLHttpRequest(); } catch(e) {};
	try { return new ActiveXObject ("Msxml2.XNLHTTP"); } catch(e) {};
	try { return new ActiveXObject ("Microsoft.XMLHTTP"); } catch(e) {};
	
	return null;
}


function gerarCertificado()
{
	if (http_request.overrideMimeType) http_request.overrideMimeType('text/plain');
	
	$('mensagens_sistemas').innerHTML = '<div class="informacao">Gerando certificado... Aguarde!</div>';
	
	http_request.open("GET",'./certificado_gerar.php',true);
	http_request.onreadystatechange = checaRespostaCertificado;
	http_request.send(null);
}

function checaRespostaCertificado()
{
	var resposta = [];
	
	if (http_request.readyState == 4)
	{
		if (http_request.status == 200) resposta = http_request.responseText.split("\n");
		else resposta[0] = 'erro';
	}
	else return;
	
	if (resposta[0] == 'sucesso')
	{
		var login = $('login').innerHTML.replace(/<[^>]+>/g, "");
		
		$('login').innerHTML = '<a href="certificado_download.php?login='+login+'">'+login+'</a>';
		$('mensagens_sistemas').innerHTML = '<div class="'+resposta[0]+'">Certificado gerado com sucesso!</div>';
	}
	else if (resposta[0] == 'erro')
	{
		$('mensagens_sistemas').innerHTML = '<div class="'+resposta[0]+'">Erro ao gerar Certificado. Informe ao Suporte Brisanet.</div>';
	}
}

function checaPassword()
{
	var min_len = 6;
	var max_len = 40;
	var senha = $('senha_nova').value;
	var matches = 0;
	
	if (senha.length < 1) return;
	
	if (senha.length >= min_len && senha.length <= max_len) 
	{
		if (senha.match(/[0-9]+/g)) matches++;
		if (senha.match(/[A-Z]+/g)) matches++;
		if (senha.match(/[a-z]+/g)) matches++;
		if (senha.match(/[^0-9A-Za-z -\/:-@-`{-~]+/g)) matches++;
		if (senha.match(/[ -\/:-@-`{-~]+/g)) matches++;
	}
	
	switch (matches)
	{
		case 0:
			$('mensagens_password').className = 'erro';
			$('mensagens_password').innerHTML = 'Senha Fraca! Você deve escolher uma senha melhor para poder alterar!';
			forcaSenha = 0;
			break;
		case 1:
			$('mensagens_password').className = 'erro';
			$('mensagens_password').innerHTML = 'Senha Fraca!';
			forcaSenha = 1;
			break;
		case 2:
			$('mensagens_password').className = 'aviso';
			$('mensagens_password').innerHTML = 'Senha Média!';
			forcaSenha = 2;
			break;
		case 3:
			$('mensagens_password').className = 'sucesso';
			$('mensagens_password').innerHTML = 'Senha Forte!';
			forcaSenha = 3;
			break;
		case 4:
			$('mensagens_password').className = 'sucesso';
			$('mensagens_password').innerHTML = 'Senha Excelente!';
			forcaSenha = 4;
			break;
	}
}

function alterarSenha() 
{
	if (forcaSenha < 2) return;
	
	if ($('senha_nova').value != $('confirmar_senha').value)
	{
		$('mensagens_password').className = 'erro';
		$('mensagens_password').innerHTML = 'As novas senhas não são iguais!';
		return;
	}
	
	var rand   = '&rand=' + Math.random(9999);
	var opcoes = 'atual=' + $('senha_atual').value + '&nova=' + $('senha_nova').value + rand;
	
	if (http_request.overrideMimeType) http_request.overrideMimeType('text/plain');
	
	http_request.open("GET",'./senha_alterar.php?' + opcoes,true);
	http_request.onreadystatechange = checaRespostaSenha;
	http_request.send(null);
}

function checaRespostaSenha()
{
	var resposta = [];
	
	if (http_request.readyState == 4)
	{
		if (http_request.status == 200) resposta = http_request.responseText.split("\n");
		else resposta[0] = 'erro';
	}
	else return;
	
	if (resposta[0] == 'sucesso')
	{
		$('mensagens_password').className = resposta[0];
		$('mensagens_password').innerHTML = 'Senha alterada com sucesso!';
	}
	else if (resposta[0] == 'erro')
	{
		$('mensagens_password').className = resposta[0];
		$('mensagens_password').innerHTML = 'Erro alterando a senha!';
	}
	
	return;
}



