<% // Playlist editor modal — included once per page (in admin-playlists, and in // post-edit when present). Exposes `window.openPlaylistEditor({ mode, id?, onSaved? })`. // // mode: 'create' or 'edit' // id : (edit only) playlist id to load // onSaved: callback receiving { id, playlist } — used by post-editor // to insert [[playlist:id]] at the cursor. // // The modal itself is appended on first call; subsequent calls reuse the // same DOM. CSS is included once. JS lives below. const _csrf = (typeof csrfToken !== 'undefined' && csrfToken) || ''; %> <%# Het script staat in assets/js/mod/playlist-editor.js. EIGEN GEGEVENSBLOK, niet dat van partials/page-data.ejs. pageData() pakt met querySelector EEN blok, en deze modal wordt ingesloten op pagina's die er al zelf een hebben (admin-playlists, post-edit) -- een tweede blok zou daar stilzwijgend genegeerd worden en dan stond de hele modal weer in het Nederlands. Eigen kenmerk, eigen lezer. De teksten stonden hier tot 16-8 hard in het script. Dat viel niet op omdat het toevallig de brontaal was: een Engelse of Duitse beheerder kreeg een Nederlandse modal midden in een vertaalde pagina. %>