<?php
	require '../credentials.php';
	require 'utils.php';
	require (dirname(__FILE__)."/security.php");

	Security::checkIsSignedIn();

	$credentials = new Credentials();
	$usersdb = $credentials->usersdb;

	date_default_timezone_set("Europe/Madrid");

	// Check if confirmation is the same
	if ($_POST['password'] != $_POST['confirmation']) {
		header("Location: /main.php?wrongconfirmation=1");
		exit();
	} else if ($_POST['password'] == '') {
		header("Location: /main.php");
		exit();
	} else {
		// Execute query to change password
		$spassword = mysqli_real_escape_string($conn, password_hash($_POST["password"], PASSWORD_DEFAULT));
		$update_password = "UPDATE $usersdb SET password=\"".$spassword."\" WHERE id=".(int)$_SESSION['id'];
		if(!$result = query($update_password)) die("<script>window.location.href = '../main.php?errordb=1'</script>");

		// Go back to main page
		header("Location: /main.php?successpassword=1");
		exit();
	}
