Remove media menu option and verify route handling

This commit is contained in:
2026-06-23 16:20:29 +02:00
parent f5d95fd344
commit d97c67c6a9
60 changed files with 115 additions and 0 deletions

View File

@@ -24,6 +24,10 @@
.admin-main { margin-left: 0; }
}
</style>
<?php if (in_array($route ?? '', ['content-edit', 'content-new', 'plugins-edit'])): ?>
<link rel="stylesheet" href="assets/codemirror/codemirror.min.css">
<link rel="stylesheet" href="assets/css/editor.css">
<?php endif; ?>
</head>
<body>
<!-- Sidebar -->
@@ -42,6 +46,12 @@
<i class="bi bi-file-earmark-text"></i> Content
</a>
</li>
<li class="nav-item">
<a class="nav-link <?= ($route ?? '') === 'theme' ? 'active' : '' ?>" href="admin.php?route=theme">
<i class="bi bi-palette"></i> Thema
</a>
</li>
<li class="nav-item">
<a class="nav-link <?= ($route ?? '') === 'config' ? 'active' : '' ?>" href="admin.php?route=config">
<i class="bi bi-sliders"></i> Configuratie
@@ -101,9 +111,32 @@
case 'config':
require __DIR__ . '/pages/config.php';
break;
# Media route (removed from menu)
// Uncomment if media functionality is needed elsewhere
// require __DIR__ . '/pages/media.php';
break;
case 'theme':
require __DIR__ . '/pages/theme.php';
break;
case 'plugins':
require __DIR__ . '/pages/plugins.php';
break;
case 'plugins-new':
require __DIR__ . '/pages/plugins-new.php';
break;
case 'plugins-edit':
require __DIR__ . '/pages/plugins-edit.php';
break;
case 'plugins-config':
require __DIR__ . '/pages/plugin-config.php';
break;
case 'content-dir-rename':
require __DIR__ . '/pages/content-dir-form.php';
break;
case 'users':
require __DIR__ . '/pages/users.php';
break;
@@ -112,5 +145,18 @@
</main>
<script src="assets/js/bootstrap.bundle.min.js"></script>
<?php if (in_array($route ?? '', ['content-edit', 'content-new', 'plugins-edit'])): ?>
<script src="assets/codemirror/codemirror.min.js"></script>
<script src="assets/codemirror/mode/markdown.min.js"></script>
<script src="assets/codemirror/mode/xml.min.js"></script>
<script src="assets/codemirror/mode/htmlmixed.min.js"></script>
<script src="assets/codemirror/mode/php.min.js"></script>
<script src="assets/codemirror/mode/clike.min.js"></script>
<script src="assets/codemirror/mode/css.min.js"></script>
<script src="assets/codemirror/mode/javascript.min.js"></script>
<script src="assets/codemirror/addon/edit/closebrackets.min.js"></script>
<script src="assets/codemirror/addon/selection/active-line.min.js"></script>
<script src="assets/js/editor-toolbar.js"></script>
<?php endif; ?>
</body>
</html>

View File

@@ -0,0 +1,69 @@
<div class="d-flex justify-content-between align-items-center mb-4">
<h2><i class="bi bi-images"></i> Media</h2>
<button type="button" class="btn btn-primary btn-sm" data-bs-toggle="collapse" data-bs-target="#uploadForm">
<i class="bi bi-cloud-upload"></i> Uploaden
</button>
</div>
<div class="collapse mb-4" id="uploadForm">
<div class="card shadow-sm">
<div class="card-body">
<form method="POST" action="admin.php?route=media" enctype="multipart/form-data">
<input type="hidden" name="csrf_token" value="<?= $csrf ?>">
<div class="mb-3">
<label for="file" class="form-label">Bestanden selecteren</label>
<input type="file" class="form-control" id="file" name="file[]" multiple accept="image/jpeg,image/png,image/gif,image/webp,image/svg+xml,application/pdf,application/zip,video/mp4,video/webm,audio/mpeg,audio/wav">
<small class="form-text text-muted">Toegestaan: JPG, PNG, GIF, WebP, SVG, PDF, ZIP, MP4, WebM, MP3, WAV</small>
</div>
<button type="submit" class="btn btn-success">
<i class="bi bi-cloud-upload"></i> Uploaden
</button>
</form>
</div>
</div>
</div>
<?php if (empty($files)): ?>
<div class="alert alert-info">Geen bestanden gevonden in de assets map.</div>
<?php else: ?>
<div class="table-responsive">
<table class="table table-hover align-middle">
<thead>
<tr>
<th>Voorbeeld</th>
<th>Bestand</th>
<th>Grootte</th>
<th>Datum</th>
<th>URL</th>
<th></th>
</tr>
</thead>
<tbody>
<?php foreach ($files as $file): ?>
<tr>
<td>
<?php if ($file['is_image']): ?>
<img src="<?= htmlspecialchars($file['url']) ?>" style="width: 60px; height: 40px; object-fit: cover;" class="img-thumbnail">
<?php else: ?>
<span class="badge bg-secondary fs-6"><?= strtoupper($file['ext']) ?></span>
<?php endif; ?>
</td>
<td><strong><?= htmlspecialchars($file['name']) ?></strong></td>
<td class="text-muted small"><?= htmlspecialchars($file['size'] > 1048576 ? round($file['size'] / 1048576, 1) . ' MB' : round($file['size'] / 1024, 1) . ' KB') ?></td>
<td class="text-muted small"><?= htmlspecialchars($file['modified']) ?></td>
<td><code class="small"><?= htmlspecialchars($file['url']) ?></code></td>
<td>
<form method="POST" action="admin.php?route=media" class="d-inline" onsubmit="return confirm('Weet je zeker dat je &#39;<?= htmlspecialchars($file['name']) ?>&#39; wilt verwijderen?')">
<input type="hidden" name="csrf_token" value="<?= $csrf ?>">
<input type="hidden" name="delete" value="<?= htmlspecialchars($file['name']) ?>">
<button type="submit" class="btn btn-sm btn-outline-danger" title="Verwijderen">
<i class="bi bi-trash"></i>
</button>
</form>
</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
</div>
<?php endif; ?>