<?php 
session_set_cookie_params(0);
session_start();

// Si l'utilisateur n'est pas admin, on le renvoie à l'accueil
if (!isset($_SESSION['admin']) || $_SESSION['admin'] <= 0) {
	header('Location: https://librairie-cmsy-mtl.ca/librairie.php');
	exit();
}

define('NOM_PAGE','fermer_an.php');

require '../include/liens_utiles.php'; 
require '../include/content.php'; 

// var_dump($_SESSION);
// var_dump($_COOKIE);
// var_dump($_POST);

$an_fiscal_a_fermer = $_POST['an_fiscal_a_fermer'] ?? null;



if (isset($_POST['total_ventes'])){
	$dol_can = new NumberFormatter( 'en_CA', NumberFormatter::CURRENCY );
	$vendant_can=$dol_can->formatCurrency($_POST['total_ventes'], "CAN")."\n";
}

########### CONNEXION LOCALE OU PRODUCTION ###################

if ($_SERVER['HTTP_HOST'] == 'localhost' || $_SERVER['HTTP_HOST'] == '127.0.0.1') {
	include '/opt/lampp/htdocs/connexion/connexion_db.php';
}
else{
	include '/home/bhfhwgg6/public_html/connexion/connexion_db.php';
}

########### AUTO LOGOUT ###################

if ($_SERVER['HTTP_HOST'] == 'localhost' || $_SERVER['HTTP_HOST'] == '127.0.0.1') {
	require '/opt/lampp/htdocs/authentication/auto_logout.php';
}
else{
	require'/home/bhfhwgg6/public_html/authentication/auto_logout.php';
}


?>


<!DOCTYPE html>
<html lang="<?=$lang;?>">
<head>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>Fermer l'année</title>
	<link rel="stylesheet" href="../CSS/global.css">
	<link rel="stylesheet" href="../CSS/fermer_an.css">
	<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
</head>
<body>

	<?php 

	require '../include/banniere_universelle.php';
	
	if (isset($an_fiscal_a_fermer)) {
		$inventaire='inventaire'.$an_fiscal_a_fermer;

		try {
			// On vérifie SI le formulaire a été envoyé (méthode POST)
			if ($_SERVER['REQUEST_METHOD'] === 'POST') {

    			// On récupère la valeur et on vérifie qu'elle n'est pas vide

				if (!empty($inventaire)) {
   					// On cherche une table qui ressemble exactement à ce nom
					$sqlQueryTableExist= $mysqlClient->query("SHOW TABLES LIKE '$inventaire'");

					if ($sqlQueryTableExist->rowCount() > 0) {
						$table_existe="La table existe.";
					} 			
					else {
						// echo "La table n'existe pas.";
						if($an_fiscal_a_fermer >=2024){
							try {

								$ancienneTable = 'inventaire';
								$nouvelleTable = &$inventaire;

    							// 1. Création de la structure de la nouvelle table
								$sql_structure = "CREATE TABLE `$nouvelleTable` LIKE `$ancienneTable` ";
								$mysqlClient->exec($sql_structure);

   								// 2. Copie des données dans la nouvelle table
								$sql_data = "INSERT INTO `$nouvelleTable` SELECT * FROM `$ancienneTable` ";
								$mysqlClient->exec($sql_data);

								$table_copie="La table a été copiée avec succès sous le nom : $nouvelleTable";

							} 
							catch (PDOException $e) {
								die("Erreur : " . $e->getMessage());
							}
						}
						else{
							$table_plus_que_2024="La table doit être plus grande que 2024.";
						}
					}
				} 
			}
		} 
		catch (PDOException $e) {
			die("Erreur : " . $e->getMessage());
		}
	}

	?>
	<h1>
		Fermer l'année fiscale
	</h1>

<div id="boite_fermer_an">
	<form method="post" action="">
		Année fiscale à fermer :
		<input type="number" name="an_fiscal_a_fermer"  min="0" step="1" autofocus oninput="validity.valid||(value='');">
		<input type="hidden" name="lang" value="<?=$lang;?>">
		<input type="submit" value="Fermer">
	</form>
</div>

<?php
echo $table_plus_que_2024 = $table_plus_que_2024 ?? '';
echo $table_existe = $table_existe ?? '';
echo $table_copie = $table_copie ?? '';

?>

	<script>
		let timer;
const tempsLimite = 905 * 1000; // Conversion en millisecondes

function resetTimer() {
	clearTimeout(timer);
	// Lance le compte à rebours pour rediriger vers accueil
	timer = setTimeout(() => {
		window.location.href = "/authentication/log_in.php?erreur=expiree&lang_user=fr";
	}, tempsLimite);
}

// Détecte activité (mouvement souris, touches clavier) pour remettre le compteur à zéro
window.onload = resetTimer;
window.onmousemove = resetTimer;
window.onmousedown = resetTimer; 
window.ontouchstart = resetTimer;
window.onclick = resetTimer;     
window.onkeydown = resetTimer;   
</script>
</body>
</html>