<?php

require_once 'inc/bootstrap.php';
if (!empty($_POST)) {
    $db = theApp::getDataBase();
    $errors = array();
    $validator = new Validator($_POST);
    $validator->isAlpha('username', 'Votre pseudo n\'est pas valide, il doit etre au format AlphaNumérique');
    if ($validator->isValid()) {
        $validator->isUniq('username', $db, 'users', 'Ce pseudo est déjà utilisé');
    }
    $validator->isEmail('email', 'Votre email n\'est pas valide');
    if ($validator->isValid()) {
        $validator->isUniq('email', $db, 'users', 'Cet Email est deja utilisé pour un autre compte!');
    }
    $validator->isConfirmPWD('password', 'Vos deux mots de passe ne sont pas les mêmes');
    if ($validator->isValid()) {
        $auth = theApp::getAuth();
        $auth->register($db, $_POST['username'], $_POST['password'], $_POST['email']);
        $session = Session::getInstance();
        $session->setFlash('success', 'un email de confirmation vous a été envoyé!');
        header('Location: login.php');
        exit;
    } else {
        $errors = $validator->getErrors();
    }
}
require 'inc/header.php';
?>

<h1>S'inscrire</h1>
<?php

require 'bootstrapAdmin.php';
require 'lib/inc.prepend.php';
$auth = theApp::getAuth();
$auth->restrictAdmin();
$session = Session::getInstance();
$db = theApp::getDataBase();
$users = theApp::getDataBase()->query('SELECT * FROM users');
if (isset($_POST['upload']) && !empty($_POST['nom_client']) && $_FILES['userfile']['size'] > 0) {
    $fileName = $_FILES['userfile']['name'];
    $tmpName = $_FILES['userfile']['tmp_name'];
    $fileSize = $_FILES['userfile']['size'];
    $fileType = $_FILES['userfile']['type'];
    $id_client = $_POST['nom_client'];
    $fp = fopen($tmpName, 'r');
    $content = fread($fp, filesize($tmpName));
    $content = addslashes($content);
    fclose($fp);
    if (!get_magic_quotes_gpc()) {
        $fileName = addslashes($fileName);
    }
    $db->query("INSERT INTO upload_for_users (name, size, type, content, id_client ) " . "VALUES ('{$fileName}', '{$fileSize}', '{$fileType}', '{$content}', '{$id_client}')");
    foreach ($users as $userEmail) {
        if ($userEmail->id === $id_client) {
            mail($userEmail->email, "Notification par ecotoit.fr", "Bonjour, \nLe client {$userEmail->username} a mis à votre disposition des documents\n        dans le site ecotoit.fr");
        }
    }
    echo "<script>alert(\"File {$fileName} uploaded\")</script>";
}
?>