<?php
require '../bootstrap.php';
$conectDB = connectDB();
$conectDB->exec("set names utf8mb4");

$dataCadastro = date("Y-m-d H:i:s");

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
		if( (empty($_POST['userPwd'])) || (empty($_POST['userPwd2'])) ){
			echo messageJson('erro', 'Informe sua senha, é obrigatório');exit;
		}
			if( $_POST['userPwd'] !== $_POST['userPwd2'] ){
				echo messageJson('erro', 'As senhas informadas são diferentes');exit;
			}


			$token    = stringInputCleaner($_POST['token']);
 			$dadosRecuperacao = findItem($conectDB, 'atualiza_senha', ' * ', array("token"=>$token) );
			if(!empty($dadosRecuperacao->id))
			{

				if($dadosRecuperacao->tipo == 1)//professor ou estagiario
				{
					$dadosUsuario = findItem($conectDB, 'professor', ' id, nome, email ', array("id"=>$dadosRecuperacao->usuario_id) );
					$tabela = 'professor';
				}
				else
				{
					$tabela = 'escola';
					$dadosUsuario = findItem($conectDB, 'escola', ' id, nome, email', array("id"=>$dadosRecuperacao->usuario_id) );
				}

				if(!empty($dadosUsuario->id)){
					$userPwd    = stringInputCleaner($_POST['userPwd']);
					$userPwd  	= password_hash($userPwd, PASSWORD_DEFAULT);

			        $cadinsert = "
						UPDATE
							{$tabela}
						SET
							pwd 	= :pwd
						WHERE
							id 		= :id
			         ";
			        try {
			            $cadresult = $conectDB->prepare($cadinsert);
			            $cadresult->bindParam(':id' , $dadosUsuario->id, PDO::PARAM_STR);
			            $cadresult->bindParam(':pwd', $userPwd, PDO::PARAM_STR);
 			            $cadresult->execute();
			            $cadcontar = $cadresult->rowCount();
			            if($cadcontar > 0) {
							enviaEmail($dadosUsuario->email, $dadosUsuario->nome, "Senha alterada no Localiza prof's", $configEmails['usuarioSenhaAlteradaNotifica'], '', '');
			                echo messageJson('sucesso', 'Atualização de senha realizada com sucesso, já pode fazer login', 'redirectToUrl', BASE);
			            }
			            else
			            {
			            	echo messageJson('erro', 'Houve algo de errado, tente novamente', '', '');
			            }
			        }
			        catch(PDOException $e) {
			            echo messageJson('erro', 'Houve algo de errado, tente novamente', '', '');
			        } 
				}
			}
}