<?php
if(!defined('INDEX')) { header('Location: ../'); exit; }
$page = 'options';
$titre = 'Options';
	$template->assign('page',$page);
	$template->assign('titre',$titre);

$pseudo = $queryUser['pseudo'];
$mailUtil = $queryUser['mail'];
$mdp = $queryUser['mdp'];
$mdp_var = $queryUser['mdp_var'];

if (isset($_GET['a']) && $_GET['a'] == 'mv' && isset($_GET['n']) && $_GET['n'] == $sess->values['idvac']) {
	$impossible = false;
	include_once(_FCORE."../game/Class/class.gerefile.php");
	$nbPlan = count($queryPlanetes);
	for ($i=0 ; $i<$nbPlan ; $i++) {
		$file = unserialize($queryPlanetes[$i]['file_bat']);
		if (!empty($queryPlanetes[$i]['file_bat']) && count($file->file)) $impossible = true;

		$file = unserialize($queryPlanetes[$i]['file_tech']);
		if (!empty($queryPlanetes[$i]['file_tech']) && count($file->file)) $impossible = true;

		$file = unserialize($queryPlanetes[$i]['file_cas']);
		if (!empty($queryPlanetes[$i]['file_cas']) && count($file->file)) $impossible = true;

		$file = unserialize($queryPlanetes[$i]['file_vais']);
		if (!empty($queryPlanetes[$i]['file_vais']) && count($file->file)) $impossible = true;

		$file = unserialize($queryPlanetes[$i]['file_ter']);
		if (!empty($queryPlanetes[$i]['file_ter']) && count($file->file)) $impossible = true;
	}

	if ($impossible) erreur('Impossible d\'activer le mode vacances.<br />Toutes les files d\'attentes sur vos diff&eacute;rentes plan&egrave;tes ne sont pas vides.', "red", '?p=options', 4000);
	else {
		$bdd->connexion();
		$bdd->query("SELECT * FROM flottes WHERE id_user = '$id_user'");
		if ($bdd->num_rows) erreur('Des flottes sont actuellement en mission, veuillez toutes les faire revenir à quai avant d\'activer le mode vacances.', "red", '?p=options', 4000);

		$bdd->query("UPDATE user SET mv = '1' WHERE id = '$id_user'");
		$bdd->deconnexion();
		$sess->values['connected'] = FALSE;
		$sess->put();

		erreur('Le mode vacances est maintenant actif sur votre compte.<br /><br />Vous pourez vous reconnecter sur votre compte à partir de<br />'.strftime("%A %d %B à %H:%M", $queryUser['last_visite']+259200).'<br /><br />Bonnes vacances !', "green", '?index', 10000);
	}
}
elseif (isset($_GET['a']) && $_GET['a'] == 'dl' && isset($_GET['n']) && $_GET['n'] == $sess->values['idvac']) {
	$bdd->connexion();
	$bdd->query("UPDATE user SET mv = -2 WHERE id = $id_user");
	$bdd->deconnexion();

	erreur('Votre compte sera supprimé le <br />'.strftime("%A %d %B à %H:%M", mktime(5,0,0,date('n',time()+86400*2),date('d',time()+86400*2),date('y',time()+86400*2))).'.', "green");
}
if (isset($_GET['chg']) && $_GET['chg'] == 'mdp') {
	if (isset($_POST['mdp_anc']) && isset($_POST['mdp_nouv']) && isset($_POST['mdp_conf']) && !empty($_POST['mdp_anc']) && !empty($_POST['mdp_nouv']) && !empty($_POST['mdp_conf'])) {
		if(mdp($pseudo, $_POST['mdp_anc'], $mdp_var) == $mdp) {
			if  ($_POST['mdp_nouv'] == $_POST['mdp_conf']) {
				$password = mdp($pseudo, $_POST['mdp_nouv'], $mdp_var);
				$auth = sha1($password);

				$bdd->connexion();
				$bdd->escape($password);
				$bdd->query("UPDATE user SET mdpNOUV = '$password' WHERE id = '$id_user'");
				$bdd->deconnexion();

				if(!send_mail($mailUtil, 'Halo-Battle :: Activation de votre nouveau mot de passe', '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><title>Halo-Battle :: Activation de votre nouveau mot de passe</title></head><body><p>Bonjour '.trouvNom($id_user).',<br />Vous recevez ce mail suite &agrave; votre demande de changement de mot de passe. Ce dernier entrera en vigueur une fois que vous aurez valid&eacute; ce changement en cliquant via ce lien :<br /><a href="http://'.$_SERVER['HTTP_HOST'].'/'.$config['first_page'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'">http://'.$_SERVER['HTTP_HOST'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'</a><br />Notez que pour que le mot de passe soit chang&eacute;, il faut que vous soyer connect&eacute; sur votre compte.<br /><br />A bient&ocirc;t dans Halo-Battle,<br />Le staff</p></body></html>')) erreur('Erreur lors de l\'envoie du courriel de confirmation !<br /><br />Si le probl&egrave;me perciste, <a href="mailto:'.$config['mailadmin'].'">contactez un administrateur</a>.');
				else erreur('Un courriel vient d\'être envoy&eacute; à '.$mailUtil.'. Le mot de passe ne sera modifi&eacute; qu\'apr&egrave;s avoir cliqu&eacute; sur le lien d\'activation contenu dans ce courriel.', "green");
				$mail->SmtpClose();
				unset($mail);
			}
			else erreur('Le nouveau mot de passe que vous avez entr&eacute; ne correspond pas à sa confirmation.', "red", '?p=options', 3500);
		}
		else erreur('L\'ancien mot de passe que vous avez tap&eacute; n\'est pas correct.', "red", '?p=options', 3500);
	}
	else erreur('Veuillez remplir tous les champs avant de valider le formulaire.', "red", '?p=options');
}
elseif (isset($_GET['chg']) && $_GET['chg'] == 'mail') {
	if (isset($_POST['mdp_mail']) && sha1(strtoupper($pseudo).':'.$_POST['mdp_mail']) == $mdp) {
		if (isset($_POST['mail']) && !empty($_POST['mail'])) {
			$Nmail = $_POST['mail'];
		    if (preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $Nmail)) {
				$bdd->connexion();
				$bdd->escape($Nmail);
				$result = $bdd->query("SELECT mail FROM user WHERE mail = '$Nmail'");
				if($result) {
					$bdd->deconnexion();
					header('Location: options.php?erreur=5');
					exit;
				}
				else {
					$auth = sha1($Nmail);
					$bdd->query("UPDATE user SET mailNOUV = '$Nmail' WHERE id = '$id_user'");
					$bdd->deconnexion();

					//On envoie le mail de confirmation
					if(!send_mail($Nmail, 'Halo-Battle :: Activation de votre nouvelle adresse &eacute;lectronique', '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><title>Halo-Battle :: Activation de votre nouvelle adresse &eacute;lectronique</title></head><body><p>Bonjour,<br />Vous recevez ce mail suite &agrave; votre demande de changement d\'adresse &eacute;lectronique. Cette derni&egrave;re entrera en vigueur une fois que vous aurez valid&eacute; ce changement en cliquant via ce lien :<br /><a href="http://'.$_SERVER['HTTP_HOST'].'/'.$config['first_page'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'">http://'.$_SERVER['HTTP_HOST'].'?p=changeopt&util='.$id_user.'&auth='.$auth.'</a><br />Notez que pour que l\'adresse soit chang&eacute;e, il faut que vous soyer connect&eacute; sur votre compte.<br /><br />A bient&ocirc;t dans Halo-Battle,<br />Le staff</p></body></html>')) erreur('Erreur lors de l\'envoie du courriel de confirmation !<br /><br /><small><i>'.$mail->ErrorInfo.'</i></small><br /><br />Si le probl&egrave;me perciste, <a href="mailto:'.$config['mailadmin'].'">contactez un administrateur</a>.');
					else erreur('Un courriel vient d\'être envoy&eacute; à '.$Nmail.'. L\'adresse &eacute;lectronique ne sera modifi&eacute; qu\'apr&egrave;s avoir cliqu&eacute; sur le lien d\'activation contenu dans ce courriel.', "green");
					$mail->SmtpClose();
					unset($mail);
				}
		    }
		    else erreur('L\'adresse &eacute;lectronique que vous avez tap&eacute;e n\'est pas valide.', "red", '?p=options');
		}
	    else erreur('Veuillez remplir tous les champs avant de valider le formulaire.', "red", '?p=options');
	}
    else erreur('Mot de passe incorrect.', "red", '?p=options');
}

$sess->values['idvac'] = sha1(rand(123456789,9876543210).'ß‘}☻'.time());
$sess->put();

$template->assign('mail',$queryUser['mail']);
$template->assign('idvac',$sess->values['idvac']);
?>