mirror of
https://codeberg.org/PostERG/xamxam.git
synced 2026-05-06 19:19:19 +02:00
Clean up flash key legacy code and extract import.php inline styles
App::consumeFlash() had 18-line legacy fallback chains reading from seven old session keys (error, admin_error, edit_error, form_error, success, admin_success, edit_success) that were written by no code in the codebase. All action handlers have used App::flash() -> _flash_error / _flash_success since the App class was introduced. Removed the dead fallbacks; consumeFlash() is now 4 lines. admin/import.php was the last admin template with inline style= attributes. Extracted four of them to named CSS classes in admin.css: - admin-error-list — error <ul> spacing (was style="margin:.5rem 0 0;padding-left:1.2rem") - admin-file-hint — <small> display + margin (was style="margin-top:.5rem") - admin-import-results — results panel margin (was style="margin-top:2rem") - admin-import-results__title — <h2> typography (was multi-property inline style) Closes the 'unify flash message keys' item in todo/02-php-components.md and the import.php inline style item in todo/01-css-semantic-refactor.md.
This commit is contained in:
@@ -326,7 +326,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_FILES['csv_file'])) {
|
||||
<?php if (!empty($errors)): ?>
|
||||
<div role="alert" data-type="error">
|
||||
<strong>⚠ Erreurs :</strong>
|
||||
<ul style="margin:.5rem 0 0;padding-left:1.2rem;">
|
||||
<ul class="admin-error-list">
|
||||
<?php foreach ($errors as $err): ?>
|
||||
<li><?= htmlspecialchars($err) ?></li>
|
||||
<?php endforeach; ?>
|
||||
@@ -345,7 +345,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_FILES['csv_file'])) {
|
||||
<label>Fichier CSV :</label>
|
||||
<div class="admin-file-input">
|
||||
<input type="file" id="csv_file" name="csv_file" accept=".csv" required>
|
||||
<small style="margin-top:.5rem;">
|
||||
<small class="admin-file-hint">
|
||||
Colonnes attendues : Identifiant, Titre, Sous-titre, Auteur·ice(s), Contact, Promoteur·ice(s), Format, Année, AP, Orientation, Finalité, Mots-clés, Synopsis, Contexte, Remarques, Langue, Autorisation, License, taille, Points sur 20, lien BAIU<br>
|
||||
— Deux premières lignes ignorées (en-tête) — Séparateur : virgule — Encodage : UTF-8
|
||||
</small>
|
||||
@@ -358,8 +358,8 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_FILES['csv_file'])) {
|
||||
</form>
|
||||
|
||||
<?php if (!empty($importResults)): ?>
|
||||
<div style="margin-top:2rem;">
|
||||
<h2 style="font-size:1rem;font-weight:600;margin-bottom:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;">Résultats de l'import</h2>
|
||||
<div class="admin-import-results">
|
||||
<h2 class="admin-import-results__title">Résultats de l'import</h2>
|
||||
<div class="info-message">
|
||||
<pre><?php foreach ($importResults as $r) echo htmlspecialchars($r) . "\n"; ?></pre>
|
||||
</div>
|
||||
|
||||
@@ -746,6 +746,34 @@
|
||||
gap: 1.5rem;
|
||||
}
|
||||
|
||||
/* Error list inside role="alert" (import page) */
|
||||
.admin-error-list {
|
||||
margin: 0.5rem 0 0;
|
||||
padding-left: 1.2rem;
|
||||
}
|
||||
|
||||
/* Hint text under the file input (import page) */
|
||||
.admin-file-hint {
|
||||
display: block;
|
||||
margin-top: 0.5rem;
|
||||
}
|
||||
|
||||
/* Import results panel */
|
||||
.admin-import-results {
|
||||
margin-top: 2rem;
|
||||
}
|
||||
|
||||
.admin-import-results__title {
|
||||
font-size: 1rem;
|
||||
font-weight: 600;
|
||||
margin-bottom: 0.75rem;
|
||||
color: var(--text-secondary);
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.06em;
|
||||
border: none;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/* ── Jury fieldset ──────────────────────────────────────────────────────── */
|
||||
|
||||
/* Nested lecteur·ices fieldset sits inside the outer jury fieldset:
|
||||
|
||||
Reference in New Issue
Block a user