Ignore:
Timestamp:
08/16/2026 01:53:01 PM (3 weeks ago)
Author:
Robin <roboburr@…>
Branches:
main
Children:
aebde2b
Parents:
d8f7d9c
Message:

Playlist-modal: de teksten door i18n

Ze stonden hard in mod/playlist-editor.js -- 34 stuks, van "Titel *" tot
"Upload mislukt". Dat viel niet op omdat het toevallig de brontaal was:
een Engelse of Duitse beheerder kreeg een Nederlandse modal midden in een
verder vertaalde pagina, en daar valt niets van om.

EIGEN GEGEVENSBLOK, niet partials/page-data.ejs. pageData() pakt met
querySelector EEN blok, en deze modal hangt onder pagina's die er zelf al
een hebben (admin-playlists, post-edit). Een tweede blok zou daar
stilzwijgend genegeerd worden -- en dan was de modal alsnog Nederlands
zonder dat er een fout verscheen.

De terugval in T() is de SLEUTELNAAM en niet de Nederlandse tekst:
ontbreekt er iets, dan zie je DAT er iets ontbreekt in plaats van een
scherm dat er half vertaald uitziet en waarvan niemand merkt welke helft.

De test sluit de hele keten -- script vraagt T('x'), partial geeft 'x'
door, i18n kent 'ple.x' in alle drie de talen. Drie schakels die elk los
kunnen kloppen terwijl het geheel stuk is, en de vergeten TAAL is de
schakel die niemand ziet die in het Nederlands werkt. Hij vond meteen een
echte misser: saveBtn.textContent = 'Opslaan...' was ik overgeslagen.

Zijn eerste versie sloeg ook alarm op een COMMENTAAR dat die woorden
noemde. Dat is nu weggefilterd: een test die op uitleg valt leert je hem
negeren.

Co-Authored-By: Claude Opus 5 <noreply@…>

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/views/partials/playlist-editor.ejs

    rd8f7d9c rd68ee3a  
    284284</style>
    285285
    286 <%# Het script staat in assets/js/mod/playlist-editor.js; de gegevens via partials/page-data.ejs (shaer-bqr). %>
     286<%# Het script staat in assets/js/mod/playlist-editor.js.
     287
     288    EIGEN GEGEVENSBLOK, niet dat van partials/page-data.ejs. pageData() pakt met
     289    querySelector EEN blok, en deze modal wordt ingesloten op pagina's die er al
     290    zelf een hebben (admin-playlists, post-edit) -- een tweede blok zou daar
     291    stilzwijgend genegeerd worden en dan stond de hele modal weer in het
     292    Nederlands. Eigen kenmerk, eigen lezer.
     293
     294    De teksten stonden hier tot 16-8 hard in het script. Dat viel niet op omdat
     295    het toevallig de brontaal was: een Engelse of Duitse beheerder kreeg een
     296    Nederlandse modal midden in een vertaalde pagina. %>
     297<script type="application/json" data-playlist-editor-i18n><%- JSON.stringify({
     298  titel: t('ple.titel'), artiest: t('ple.artiest'), jaar: t('ple.jaar'), type: t('ple.type'),
     299  k_album: t('ple.k_album'), k_playlist: t('ple.k_playlist'),
     300  uitgave: t('ple.uitgave'), mb_release: t('ple.mb_release'),
     301  cover: t('ple.cover'), cover_kies: t('ple.cover_kies'), cover_url: t('ple.cover_url'),
     302  tracks_in: t('ple.tracks_in'), sleep_hint: t('ple.sleep_hint'),
     303  beschikbaar: t('ple.beschikbaar'), zoek: t('ple.zoek'), geen_res: t('ple.geen_res'),
     304  leeg_sel: t('ple.leeg_sel'),
     305  t_edit: t('ple.t_edit'), t_new: t('ple.t_new'), dialoog: t('ple.dialoog'),
     306  sluiten: t('ple.sluiten'), annuleren: t('ple.annuleren'),
     307  opslaan: t('ple.opslaan'), aanmaken: t('ple.aanmaken'),
     308  bezig_opslaan: t('ple.bezig_opslaan'),
     309  versleep: t('ple.versleep'), verwijder: t('ple.verwijder'),
     310  geen_audio: t('ple.geen_audio'), e_geen_tracks: t('ple.e_geen_tracks'),
     311  e_tracks: t('ple.e_tracks'), e_opslaan: t('ple.e_opslaan'), e_mislukt: t('ple.e_mislukt'),
     312  e_alleen_afb: t('ple.e_alleen_afb'), bezig: t('ple.bezig'), e_upload: t('ple.e_upload'),
     313}).replace(/</g, '\\u003c') %></script>
Note: See TracChangeset for help on using the changeset viewer.