mirror of
https://codeberg.org/PostERG/xamxam.git
synced 2026-05-07 03:29:19 +02:00
- admin/edit.php: remove mb_strimwidth(60) truncation from access_type <select> option labels; full 'name — description' text is now the accessible name so screen readers get unambiguous option text (WCAG 4.1.2) - public/assets/favicon.svg: new public favicon — brand-purple (#9557b5) rounded square with white 'P' lettermark; distinct from admin_favicon.svg (archive-restore Lucide icon in #c104fc) which is admin-only - templates/head.php: favicon <link> now conditionally serves favicon.svg (public pages) or admin_favicon.svg (admin pages) based on $isAdmin; closes the open favicon task in todo/01-css-semantic-refactor.md - todo/04-accessibility.md: mark WCAG 3.1.1 lang audit and WCAG 4.1.2 select truncation items as done - todo/01-css-semantic-refactor.md: mark favicon task as done
5.6 KiB
5.6 KiB
CSS & Semantic HTML Refactor
CSS class audit: replace with semantic selectors (admin.css / main.css / tfe.css / search.css)
admin.css: Replace.admin-mainwith.admin-body main— already done; CSS uses.admin-body mainadmin.css: Replace.admin-page-titlewith.admin-body main > h1— already done; CSS uses.admin-body main > h1admin.css: Replace.admin-alert/.admin-alert--error/.admin-alert--successwith[role="alert"]/data-type="error|success"attributeadmin.css: Replace.admin-form-rowwith.admin-body form > div— already done; CSS uses.admin-form > div:not(.admin-form-footer)grid patternadmin.css: Replace.admin-labelwith.admin-body form label— already done; CSS uses.admin-form > div > labeladmin.css: Replace.admin-input/.admin-select/.admin-textareawith native element selectors — already done; CSS targets nativeinput,select,textareainside.admin-formadmin.css: Replace.admin-hintwith.admin-body form smalladmin.css: Replace.admin-tablewith.admin-body table— already done; CSS uses.admin-body tableadmin.css: Replace.admin-fieldset/.admin-fieldset-legendwith.admin-body fieldset/.admin-body legend— already done; CSS uses.admin-body fieldsetand.admin-body legendmain.css: Replace.card__captionwith.home-body .cards-container li porli > a > pmain.css: Replace.card__mediawith.home-body figuretfe.css: Replace.tfe-meta-listselectors witharticle dl,article dt,article dd— already donetfe.css: Replace.tfe-media-blockwithaside figure— already donetfe.css: Replace.tfe-file-captionwithaside figcaption— already donesearch.css: Replace.repertoire-col > h2— already uses.repertoire-index section > h2system.php: Move inline<style>block tosystem.css
Template HTML changes to match
- In all admin templates, replace
<p class="admin-hint">with<small>elements — already done; partials emit<small>directly - In
tfe.php, removeclass="tfe-meta-list"— target viaarticle dl - In
tfe.php, removeclass="tfe-media-block"— target viaaside figure - In
tfe.php, removeclass="tfe-file-caption"— target viaaside figcaption - In
index.php, removeclass="card__caption"— target viali > a > p
Scattered inline styles in templates
tfe.phpinline styles — already extracted (nostyle=attributes remain inpublic/tfe.php)admin/edit.php: multiplestyle=on.admin-form-rowand banner preview → modifier classes inadmin.css— already done; nostyle=attributes remain inedit.php
Admin semantic HTML (sections IX–XVI)
add.php/edit.php: Replace<div class="admin-form-row">with CSS grid on<form>children — already done via form partials; rows are bare<div>inside.admin-formadd.php/edit.php: Replace inner wrapper<div>in multi-control rows — already done; partials use<small>for hintsadd.php/edit.php: Replace<div class="admin-checkbox-list">with<ul>; each<label class="admin-checkbox-label">becomes<li>containing<label>add.php/edit.php: Renamed<div class="admin-submit-wrap">→<div class="admin-form-footer">in all 6 admin templates (add.php,edit.php,login.php,account.php,import.php,pages-edit.php) and updated all 8 CSS selectors inadmin.css—.admin-form > div:not(.admin-form-footer),.admin-login-box .admin-form-footer, etc.add.php/edit.php: Replace<div class="admin-alert admin-alert--error/--success">with<p role="alert">/<p role="status">— already done viaflash-messages.phpindex.php: Replace<div class="admin-stats">/<div class="admin-stat">children with<dl>/<dt>/<dd>index.php: Replace<div class="admin-maintenance-bar">with<aside role="status">or<p role="status">index.php: Addrole="toolbar" aria-label="Actions groupées"to<div class="admin-bulk-actions">index.php: Addscope="col"to all<th>cells in the admin tableindex.php: Add non-colour indicator +aria-label="Statut : …"to status badge<span>elements (viastatus-badge.phppartial)tags.php: Addscope="col"to<th>cellstags.php: Move inlinestyle="margin-top:.35rem;"on forms →.admin-inline-form + .admin-inline-formselectorthanks.php: Replace<div class="admin-thesis-info">with<section>+<h2>heading; CSS targetsmain > sectionaccount.php: Replace<div class="admin-account-status">with<dl>;__row→<div>,__label→<dt>account.php: Replace<div class="admin-danger-zone__description">with<p>account.php: Movestyle="margin-top:3rem;"on danger zone heading → CSS modifier classlogin.php: Wrap login content in<main>(currently no main landmark)login.php: Extract inline styles on.admin-form-rowand.admin-form-footer—login.phphas nostyle=attributes;.admin-login-boxmodifier inadmin.cssalready handles the compact layout
Favicon
admin_favicon.svgused as public-facing favicon — createdpublic/assets/favicon.svg(brand purple#9557b5lettermark “P”);templates/head.phpnow servesfavicon.svgon public pages andadmin_favicon.svgon admin pages