Changeset 79bba6e in Klonkt for src/views/partials/chrome.ejs


Ignore:
Timestamp:
06/17/2026 12:29:16 AM (3 months ago)
Author:
roboburr <roboburr@…>
Branches:
main
Children:
cbd1761
Parents:
44cf44d
Message:

Audio never jumps + hub topnav + Prutter chat mobile-first

  • Global link boost in shell.ejs: all internal navigation links go through htmx into #pcms-main (session/auth/downloads/assets excluded), so the audio player keeps playing everywhere — including clicks within Admin. Back/forward re-fetches (historyCacheSize=0) so the OOB header comes along.
  • Hub-home: the mini topnav bar now shows on the hub landing (no large profile header — the hero is the header); duplicate .hub-nav removed.
  • Prutter conversation: full-height mobile-first chat (bodyClass on-chat → no artist profile header). Page pinned fixed between topnav and the bottom bars; only the thread scrolls. Compact header + clean composer.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@…>

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/views/partials/chrome.ejs

    r44cf44d r79bba6e  
    88//
    99// Wordt zowel door shell.ejs (oob niet gezet) als door render.js bij partials
    10 // (oob=true) gerenderd. bareChrome-logica staat hier zodat beide identiek zijn.
    11 var _isAdmin = typeof bodyClass === 'string' && bodyClass.indexOf('on-admin') >= 0;
    12 var bareChrome = (typeof bodyClass === 'string' && (bodyClass.indexOf('on-hub') >= 0 || bodyClass.indexOf('on-auth') >= 0))
     10// (oob=true) gerenderd. De logica staat hier zodat beide identiek zijn.
     11//
     12//   _isAuth     → focus-scherm (in/uitloggen): helemaal geen chrome.
     13//   _headerless → hub-homepagina én de Prutter-chat: WÉL de mini topnav-balk,
     14//                 GEEN profielkop (hub: hero = header; chat: full-height view).
     15//   anders      → topnav + profielkop (+ view-switcher buiten admin).
     16var _isAdmin   = typeof bodyClass === 'string' && bodyClass.indexOf('on-admin') >= 0;
     17var _isAuth    = typeof bodyClass === 'string' && bodyClass.indexOf('on-auth') >= 0;
     18var _isChat    = typeof bodyClass === 'string' && bodyClass.indexOf('on-chat') >= 0;
     19var hubLanding = (typeof bodyClass === 'string' && bodyClass.indexOf('on-hub') >= 0)
    1320   || ((typeof tenancy !== 'undefined' && tenancy === 'hub') && !siteUrlBase && !_isAdmin);
     21var _headerless = hubLanding || _isChat;
    1422%>
    1523<div id="pcms-chrome"<% if (typeof oob !== 'undefined' && oob) { %> hx-swap-oob="true"<% } %>>
    16 <% if (!bareChrome) { %>
     24<% if (!_isAuth) { %>
    1725  <%- include('topnav') %>
    18   <%- include('profile-header') %>
    19   <% if (!_isAdmin) { %><%- include('view-switcher') %><% } %>
     26  <% if (!_headerless) { %>
     27    <%- include('profile-header') %>
     28    <% if (!_isAdmin) { %><%- include('view-switcher') %><% } %>
     29  <% } %>
    2030<% } %>
    2131</div>
Note: See TracChangeset for help on using the changeset viewer.