Exemple #1
0
<?php

namespace Garradin;

require_once __DIR__ . '/_inc.php';
if (trim(Utils::get('page')) == '' || !is_numeric(Utils::get('page'))) {
    throw new UserException('Numéro de page invalide.');
}
$page = $wiki->getById(Utils::get('page'));
$error = false;
if (!$page) {
    throw new UserException('Page introuvable.');
}
// Vérification des hash avant upload
if ($hash_check = Utils::post('uploadHelper_hashCheck')) {
    echo json_encode(Fichiers::checkHashList($hash_check));
    exit;
}
if (Utils::post('delete')) {
    if (!Utils::CSRF_check('wiki_files_' . $page['id'])) {
        $error = 'Une erreur est survenue, merci de renvoyer le formulaire.';
    } else {
        try {
            $fichier = new Fichiers(Utils::post('delete'));
            if (!$fichier->checkAccess($user)) {
                throw new UserException('Vous n\'avez pas accès à ce fichier.');
            }
            $fichier->remove();
            Utils::redirect('/admin/wiki/_fichiers.php?page=' . $page['id']);
        } catch (UserException $e) {
            $error = $e->getMessage();