On passe au nouveau système de framework !

This commit is contained in:
Pierre-Lin Bonnemaison 2015-08-08 13:23:47 +02:00
parent 8b61ea0a9a
commit 0f47389ae1
13 changed files with 408 additions and 432 deletions

View file

@ -33,7 +33,7 @@
//Récupération des utilisateurs
$users = $db->getAll('users');
$users = $db->getFromTableWhere('users');
$this->render('users', array(
'users' => $users,
@ -50,26 +50,26 @@
/**
* Cette fonction insert un nouvel utilisateur
* @param string $_POST['email'] : L'email de l'utilisateur
* @param string $_POST['email_confirm'] : Confirmation de l'email de l'utilisateur
* @param boolean $_POST['admin'] : Optionnel : Si l'utilisateur est admin. Par défaut non
*/
public function create()
{
//On vérifie que le jeton csrf est bon
if (!internalTools::verifyCSRF())
{
header('Location: ' . $this->generateUrl('users', 'showAll', array(
'errormessage' => 'Jeton CSRF invalide !'
)));
return true;
$_SESSION['errormessage'] = 'Jeton CSRF invalide !';
header('Location: ' . $this->generateUrl('users', 'add'));
return false;
}
global $db;
if (!isset($_POST['email']) || !isset($_POST['email_confirm']) || $_POST['email'] != $_POST['email_confirm'])
if (!isset($_POST['email']) || !isset($_POST['email_confirm']) || ($_POST['email'] != $_POST['email_confirm']))
{
header('Location: ' . $this->generateUrl('users', 'add', array(
'errormessage' => 'Les e-mails fournis ne correspondent pas.'
)));
$_SESSION['errormessage'] = 'Les e-mails fournis ne correspondent pas.';
header('Location: ' . $this->generateUrl('users', 'add'));
return false;
}
@ -79,9 +79,8 @@
if (!filter_var($email, FILTER_VALIDATE_EMAIL))
{
header('Location: ' . $this->generateUrl('users', 'add', array(
'errormessage' => 'L\'e-mail fourni présente un format incorrect.'
)));
$_SESSION['errormessage'] = 'L\'e-mail fourni présente un format incorrect.';
header('Location: ' . $this->generateUrl('users', 'add'));
return false;
}
@ -101,44 +100,39 @@
$message .= "-------------------------------------\n";
$message .= "Pour plus d'informations sur le système RaspiSMS, rendez-vous sur le site http://raspbian-france.fr\n";
if (mail($email, 'Identifiants RaspiSMS', $message))
if (!mail($email, 'Identifiants RaspiSMS', $message))
{
if ($db->createUser($email, $password, $admin))
{
$db->createEvent('USER_ADD', 'Ajout de l\'utilisateur : ' . $email);
header('Location: ' . $this->generateUrl('users', 'showAll', array(
'successmessage' => 'L\'utilisateur a bien été créé.'
)));
return true;
}
$_SESSION['errormessage'] = 'Impossible d\'envoyer le mail d\'inscription à l\'utilisateur. Le compte n\'a donc pas été créé.';
header('Location: ' . $this->generateUrl('users', 'add'));
return false;
}
header('Location: ' . $this->generateUrl('users', 'add', array(
'errormessage' => 'Impossible de créer cet utilisateur.'
)));
return false;
}
else
if (!$db->insertIntoTable('users', ['email' => $email, 'password' => $password, 'admin' => $admin]))
{
header('Location: ' . $this->generateUrl('users', 'showAll', array(
'errormessage' => 'Impossible d\'envoyer le mail d\'inscription à l\'utilisateur. Le compte n\'a donc pas été créé.'
)));
$_SESSION['errormessage'] = 'Impossible de créer cet utilisateur.';
header('Location: ' . $this->generateUrl('users', 'add'));
return false;
}
$db->insertIntoTable('events', ['type' => 'USER_ADD', 'text' => 'Ajout de l\'utilisateur : ' . $email]);
$_SESSION['successmessage'] = 'L\'utilisateur a bien été créé.';
header('Location: ' . $this->generateUrl('users', 'showAll'));
return true;
}
/**
* Cette fonction supprimer une liste d'utilisateur
* @return void;
* @param int... $ids : Les id des commandes à supprimer
* @return boolean;
*/
public function delete()
public function delete(...$ids)
{
//On vérifie que le jeton csrf est bon
if (!internalTools::verifyCSRF())
{
header('Location: ' . $this->generateUrl('users', 'showAll', array(
'errormessage' => 'Jeton CSRF invalide !'
)));
return true;
$_SESSION['errormessage'] = 'Jeton CSRF invalide !';
header('Location: ' . $this->generateUrl('users', 'showAll'));
return false;
}
//Create de l'object de base de données
@ -147,14 +141,13 @@
//Si on est pas admin
if (!$_SESSION['admin'])
{
header('Location: ' . $this->generateUrl('users', 'showAll', array(
'errormessage' => 'Vous devez être administrateur pour effectuer cette action.'
)));
$_SESSION['errormessage'] = 'Vous devez être administrateur pour effectuer cette action.';
header('Location: ' . $this->generateUrl('users', 'showAll'));
return false;
}
$users_ids = $_GET;
$db->deleteUsersIn($users_ids);
header('Location: ' . $this->generateUrl('users'));
$db->deleteUsersIn($ids);
header('Location: ' . $this->generateUrl('users'));
return true;
}
}