From 1deb30fcd1f58ea7003b80a3aa7d3ec852fba9d2 Mon Sep 17 00:00:00 2001 From: Oleg Barykin Date: Thu, 5 Mar 2026 11:12:24 +0100 Subject: [PATCH] Admin, ru.php fr.php --- admin/tools/clean_uploads.php | 54 ++++++++++++++++++++++++----------- public/lang/fr.php | 1 + public/lang/ru.php | 1 + 3 files changed, 39 insertions(+), 17 deletions(-) diff --git a/admin/tools/clean_uploads.php b/admin/tools/clean_uploads.php index fe34f0e..66d5f9f 100644 --- a/admin/tools/clean_uploads.php +++ b/admin/tools/clean_uploads.php @@ -1,17 +1,39 @@ $ttl); + }; + + if ($mustReauth()) { + $qs = http_build_query([ + 'page' => 'reauth', + 'redir' => ($_SERVER['REQUEST_URI'] ?? 'index.php?page=clean_uploads'), + ]); + header('Location: ?' . $qs); + exit; } + // Durcir PDO + if (! isset($pdo) || ! ($pdo instanceof PDO)) { + http_response_code(500); + exit('PDO introuvable (DB non initialisée).'); + } + $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); + $pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); + // Dossier uploads (chez toi: htdocs/public/uploads/) $uploadDir = rtrim(APP_HTDOCS, '/\\') . '/public/uploads/'; if (! is_dir($uploadDir)) { @@ -74,20 +96,19 @@ foreach ($files as $f) { if ($f === '.' || $f === '..') { continue; - if ($f[0] === '.') { - continue; - } - } - // ignore fichiers système fréquents - if ($f === '.DS_Store' || $f === 'Thumbs.db' || $f === '.htaccess') { + if ($f !== '' && $f[0] === '.') { + continue; + } + // ignore fichiers cachés (.htaccess, .DS_Store, etc.) + + // ignore fichiers système fréquents (si tu veux garder explicite) + if ($f === 'Thumbs.db') { continue; } $full = $uploadDir . $f; - - // uniquement les fichiers (pas sous-dossiers) if (! is_file($full)) { continue; } @@ -185,8 +206,7 @@ code{background:#f6f6f6;padding:2px 6px;border-radius:6px} .muted{color:#666} .row{display:flex;gap:12px;flex-wrap:wrap;align-items:center} - .btn{display:inline-block;padding:10px 14px;border-radius:10px;border:1px solid #ccc;background:#fff;cursor:pointer} - .btn-danger{border-color:#e3a4a4;background:#fff1f1} + .btn:disabled{opacity:.5;cursor:not-allowed} diff --git a/public/lang/fr.php b/public/lang/fr.php index f380d2a..5e65565 100644 --- a/public/lang/fr.php +++ b/public/lang/fr.php @@ -2011,4 +2011,5 @@ Cliquez simplement sur le lien pour vous connecter.
', 'home_pro_point_3' => 'Secrétariat', 'home_pro_point_4' => 'Gestion des rendez-vous', 'home_pro_point_5' => 'Synchronisation des calendriers', + 'supp_uploads' => 'Supprimer orpheline', ]; diff --git a/public/lang/ru.php b/public/lang/ru.php index 4ac5fd6..c95df14 100644 --- a/public/lang/ru.php +++ b/public/lang/ru.php @@ -2021,4 +2021,5 @@ return [ 'home_pro_point_3' => 'Секретариат', 'home_pro_point_4' => 'Управление записью и расписанием', 'home_pro_point_5' => 'Синхронизация календарей', + 'supp_uploads' => 'Удалить лишние', ];