source: Klonkt/src/assets/js/mod/download.js@ 3ca7bdf

main
Last change on this file since 3ca7bdf was 3ca7bdf, checked in by Robin <roboburr@…>, 5 weeks ago

De editpagina laadt zijn editor weer, en opslaan zonder module wist niets meer

Robins test at een post op: /posts/:slug/edit rendert dezelfde template als
/posts/new, maar alleen de nieuw-route kreeg bij shaer-bqr zijn pageJs. De
editpagina had dus data-js="chrome" -- geen editor, geen mediaprompts, en
een verborgen contentveld dat leeg rendert. Opslaan schreef dat lege veld
naar de database: strike-homerun verloor zo om 18:54 zijn inhoud (testpost
van 18:12, niets ouds verloren).

Drie lagen, van symptoom naar vangrail:

  1. de edit-route declareert pageJs 'post-edit playlist-editor'
  2. het verborgen veld rendert de BESTAANDE inhoud: laadt de module niet (oude cache, js uit), dan is opslaan een no-op in plaats van een wisser
  3. test/page-modules.test.js scheurt luid als een render van de editor zijn modules vergeet -- een brontekst-test, bewust, want het gedrag leeft in de browser en dit is de fout die twee keer beet

En dezelfde audit ving download: drie renders, en pageJs stond op het
FORMULIER in plaats van op ready -- de auto-start hoorde v66r shaer-bqr bij
de ready-tak en omzeilde nu de e-mailvraag. Verplaatst, en de module weigert
voortaan een lege fileUrl.

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

  • Property mode set to 100644
File size: 707 bytes
Line 
1// De downloadpagina -- verplaatst uit inline script, shaer-bqr.
2//
3// Inline script wordt door de CSP geweigerd zodra deze pagina via een link
4// BINNEN de site binnenkomt (shaer-0i6). Wat de server meegeeft komt uit
5// pageData(); interpolatie kan niet in een statisch bestand.
6
7import { pageData } from './lib.js';
8
9// Element-bedrading leeft zo lang als de pagina; de bootstrap roept init()
10// aan bij elke paginawissel waarop deze module actief is (shaer-5s1).
11export function init() { run(); }
12
13function run() {
14 // Auto-start de download (zelfde-origin attachment-link).
15 setTimeout(function(){ try { var u = pageData().fileUrl; if (u) window.location.href = u; } catch(e){} }, 600);
16}
Note: See TracBrowser for help on using the repository browser.