<?php
include_once '../configuracao/modelo.php';
$error_msg = "";
if (isset($_POST['username'], $_POST['email'], $_POST['p'])) {
// Limpa e valida os dados passados em 
$username = filter_input(INPUT_POST, 'username', FILTER_SANITIZE_STRING);
$email = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_EMAIL);
$email = filter_var($email, FILTER_VALIDATE_EMAIL);
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
// Email inválido
$error_msg .= '<p class="error">O endereço de email digitado não é válido</p>';
}
$password = filter_input(INPUT_POST, 'p', FILTER_SANITIZE_STRING);
if (strlen($password) != 128) {
// A senha com hash deve ter 128 caracteres.
// Caso contrário, algo muito estranho está acontecendo
$error_msg .= '<p class="error">Invalid password configuration.</p>';
}
// O nome de usuário e a validade da senha foram conferidas no lado cliente.
// Não deve haver problemas nesse passo já que ninguém ganha 
// violando essas regras.
//
$prep_stmt = "SELECT codigo FROM usuario WHERE email = ? LIMIT 1";
$stmt = $mysqli->prepare($prep_stmt);
if ($stmt) {
$stmt->bind_param('s', $email);
$stmt->execute();
$stmt->store_result();
if ($stmt->num_rows == 1) {
// Um usuário com esse email já esixte
$error_msg .= '<p class="error">Atencao E-mail ja Cadastrado</p>';
}
} else {
$error_msg .= '<p class="error">Database error</p>';
}
/// VALIDAR CRC ANTES DE PERMITIR GRAVAR PARA HAVER SO UM 
$prep_stmt = "SELECT codigo FROM usuario WHERE nome = ? LIMIT 1";
$stmt = $mysqli->prepare($prep_stmt);
if ($stmt) {
$stmt->bind_param('s', $username);
$stmt->execute();
$stmt->store_result();
if ($stmt->num_rows == 1) {
// Um usuário com esse email já esixte
$error_msg .= '<p class="error">Atenção NOME ja Cadastrado</p>';
}
} else {
$error_msg .= '<p class="error">Database error</p>';
}   
// LISTA DE TAREFAS: 
// Precisamos bolar soluções para quando o usuário não tem 
// direito a se registrar, verificando que tipo de usuário está tentando 
// realizar a operação.
if (empty($error_msg)) {
// Crie um salt aleatório
$random_salt = hash('sha512', uniqid(openssl_random_pseudo_bytes(16), TRUE));
// Crie uma senha com salt 
$password = hash('sha512', $password . $random_salt);
// Inserir o novo usuário no banco de dados 
$date = date('dmYHisuo');
$dateu = date('d/m/y');
$key_contador=md5($_SERVER["REMOTE_ADDR"]."-".$date);
$key_enum=("usuario".$_SERVER["REMOTE_ADDR"]."-".$date);

if ($insert_stmt = $mysqli->prepare("INSERT INTO usuario (nome, email, senha, salt) VALUES (?, ?, ?, ?)")) {
$insert_stmt->bind_param('ssss', strtoupper($username), $email, $password, $random_salt);
// Executar a tarefa pré-estabelecida.
if (! $insert_stmt->execute()) {
	}
}
/*
$email_remetente = "naoresponda@ncmlive.com.br";
$headers = "MIME-Version: 1.1\n";
$headers .= "Content-type:  text/html\r\n";
$headers .= "From: $email_remetente\n"; // remetente
$headers .= "Return-Path: $email_remetente\n"; // return-path
$headers .= "Reply-To: ".$email."\n"; // Endereço (devidamente validado) que o seu usuário informou no contato
$envio = mail($email, 
"Registro de Usuário Realizado Com Sucesso  ", 
"<div>&nbsp;</div>

<div style=\"text-align: center;\">
<div><span style=\"font-size:14px;\">Para Ativar sua Conta acesse o Monitor Tribut&aacute;rio&nbsp; em:</span></div>

<div><br />
<span style=\"font-size:14px;\">NCMLIVE.COM.BR</span></div>

<div><br />
<span style=\"font-size:14px;\">MENU->1-NCM MONITOR TRIBUTÁRIO->1-10-CONTADOR->1-10-4-ATIVAR</span></div>

<div>&nbsp;</div>

<div><span style=\"font-size: 14px; text-align: center;\">Copie e Cole o C&oacute;digo Abaixo</span><br style=\"font-size: 14px; text-align: center;\" />
<span style=\"color: rgb(255, 0, 0); font-size: 48px; text-align: center;\">$key_contador</span></div>

<div><br />
&nbsp;</div>

<div style=\"text-align:center\"><img alt=\"\" height=\"246\" src=\"http://ncmlive.com.br/monitor_trib/configuracao/LOGO.png\" width=\"250\" /></div>
</div>
", $headers, "-f$email_remetente");*/
header('Location: register_success.php');
}
}
