Navbar
Deux barres : la barre globale AUBOTA (en haut de cette page, la même dans tous les modules) et, pour un module autonome, la navbar de module <nav aub-nav>.
Barre globale (navbar.js)
Celle que tu vois en haut de cette page. Desktop : modules AUBOTA, sous-navigation du module, cloche, menu compte. Mobile : cloche + menu hamburger qui ouvre un tiroir (compte, choix du module, pages du module, accent, thème, déconnexion). Elle se monte dans #aub-navbar si l’élément existe, sinon tout en haut du <body>.
<script>
window.AubotaNav = {
site: 'hub', // module courant (sinon déduit du sous-domaine)
user: { loggedIn: true, name: 'fusty', isAdmin: false },
links: [ // sous-navigation du module
{ href: '/', label: 'Accueil' },
{ href: '/lists', label: 'Listes' },
{ href: '/admin', label: 'Admin', if: false } // if: false = lien masqué
]
};
</script>
<script src="https://ui.aubota.xyz/js/aubui.js" defer></script>
<div id="aub-navbar"></div> <!-- facultatif : emplacement de la barre -->Configuration window.AubotaNav
| Clé | Effet |
|---|---|
site | Id du module actif : home, social, share, toolbox, shop, blog, feedback, hub, pro, drive, learning, admin. À défaut, déduit du nom d’hôte. |
user.loggedIn · user.name | Connecté : menu compte (Comlink, Réglages, Déconnexion). Sinon bouton « Se connecter » vers auth.aubota.xyz avec retour sur la page. |
user.isAdmin (ou is_admin, admin) | Affiche le lien Administration et la section admin du tiroir. |
links[] | { href, label, if } : sous-navigation. Le lien actif est détecté par le chemin courant (.is-active). |
disabled: true | Pas de barre du tout (et aubui.js passe en mode léger). |
À appeler à la main seulement si la barre a été retirée du DOM : AubotaNavMount() (ne fait rien si #aub-shell-header existe déjà).
Navbar de module aub-nav (engine.js)
Pour une page qui a sa propre barre simple : écris les liens, engine.js reconstruit la marque, les liens, la cloche, le bouton Thème et un tiroir mobile.
<nav aub-nav brand="Feedback" brand-href="/">
<a href="/">Accueil</a>
<a href="/tickets">Tickets</a>
</nav>| Attribut | Effet |
|---|---|
brand · brand-href | Nom et lien de la marque (défauts : « AUBOTA », /). Préfixe aub- accepté. |
no-notif | Pas de cloche (sinon une .aub-notif est créée et branchée par notifications.js). |
no-theme | Pas de bouton Thème. |
Seuls les enfants <a> directs sont repris ; le reste du contenu de la balise est remplacé.
- Barre globale dans un
<header>avec<nav aria-label="Principale">; sous-navigationaria-label="Pages du module". - Menus (compte, modules) et hamburger tiennent
aria-expandedà jour ; Échap ferme le tiroir. - Ajoute un lien « Aller au contenu » vers ton
<main>(comme cette doc) : la barre contient beaucoup de liens. - Sur mobile, un glissement depuis le bord gauche ouvre le tiroir (et l’inverse le ferme).