Changeset 8e1af9c in Klonkt for src/views/pages/post-edit.ejs


Ignore:
Timestamp:
08/22/2026 09:11:56 AM (3 weeks ago)
Author:
Robin <roboburr@…>
Branches:
main
Children:
16fd4fe
Parents:
25dd08f
git-author:
Robin <roboburr@…> (08/22/2026 09:11:36 AM)
git-committer:
Robin <roboburr@…> (08/22/2026 09:11:56 AM)
Message:

Mixtape als posttype, kiesbaar in de composer

Het bandje bestond wel als soort playlist, maar je kon er geen post van maken.
Nu wel: een eigen knop met een eigen teken, en het muziekpaneel deelt hij met
album en playlist -- het verschil zit in de playlist die je insluit, niet in
wat je uploadt.

KEUZE_TYPES en MUZIEK_TYPES in config/post-types.js waren de goede plek; dat
bestand bestaat precies omdat die lijst eerder drie keer los rondslingerde.

Nog twee keer dezelfde binaire vorm opgeruimd, en de tweede was een echte:

  • VOLGBAAR kende geen mixtape, dus het type volgde de muziek niet.
  • De editor zocht de soort op met de vorm p.kind === 'playlist' ? 'playlist' : 'album'. Het scherm zag dus album terwijl de server mixtape opsloeg: het type verspringt onder je handen bij het bewaren.
  • De renderer koos teken en woord met dezelfde tweewegkeuze, waardoor een ingesloten mixtape het jasje van een album droeg.

De SPELER is er nog niet -- een mixtape rendert voorlopig als de gewone lijst.
Wat af is, is dat hij overal zichzelf noemt.

Zes tests, waaronder de opslagweg door de echte route: kent de opslag een type
niet, dan wordt de post zonder melding een gewone post, en dat is precies de
fout waar config/post-types.js voor waarschuwt. Een van de tests riep eerst een
methode aan die niet bestaat en sloeg zichzelf over; die gaat nu door
embedPlaylistShortcodes heen en valt om als je de tweewegkeuze terugzet.

MOD_V naar 51.

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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/views/pages/post-edit.ejs

    r25dd08f r8e1af9c  
    2424        Foto → cover/insert hint. %>
    2525    <% var ptype = post.type || 'post'; %>
    26     <% var TYPE_ICONS = { post: '📝', foto: '📷', video: '🎬', album: '💿', playlist: '📃', audio: '🎵' }; %>
     26    <% var TYPE_ICONS = { post: '📝', foto: '📷', video: '🎬', album: '💿', playlist: '📃', mixtape: '📼', audio: '🎵' }; %>
    2727    <%# Audio is geen keuze meer (shaer-cyg): alles wat muziek is landt op Album
    2828        of Playlist. De knop blijft alleen staan zolang deze post nog audio IS,
    2929        zodat een oude post niet stilzwijgend van type verandert bij het openen. %>
    3030    <% var TYPES = (typeof keuzeTypes !== 'undefined' && keuzeTypes.length)
    31                      ? keuzeTypes.slice() : ['post','foto','video','album','playlist']; %>
     31                     ? keuzeTypes.slice() : ['post','foto','video','album','playlist','mixtape']; %>
    3232    <% if (ptype === 'audio' && TYPES.indexOf('audio') < 0) TYPES.push('audio'); %>
    3333    <section class="pe-card pe-type-card">
     
    4545
    4646      <%# Muziek: inline upload (transcodes + drops [[track]] into the post).
    47           Album en Playlist delen dit paneel -- het verschil zit in de playlist,
    48           niet in wat je hier uploadt. Audio staat er alleen nog voor oude posts. %>
    49       <div class="pe-type-panel" data-panel="album playlist audio" hidden>
     47          Album, Playlist en Mixtape delen dit paneel -- het verschil zit in de
     48          playlist die je insluit, niet in wat je hier uploadt. Audio staat er
     49          alleen nog voor oude posts. %>
     50      <div class="pe-type-panel" data-panel="album playlist mixtape audio" hidden>
    5051        <div class="pe-audio-up" id="pe-audio-drop" tabindex="0" role="button" aria-label="<%= t('pedit.audio_up_drop') %>">
    5152          <input type="file" id="pe-audio-file" accept="audio/*,.mp3,.m4a,.ogg,.opus,.flac,.wav" multiple hidden>
Note: See TracChangeset for help on using the changeset viewer.