Changeset 54b027a in Klonkt
- Timestamp:
- 08/13/2026 08:15:56 PM (4 weeks ago)
- Branches:
- main
- Children:
- 44dfbd2
- Parents:
- 47db4b5
- Files:
-
- 1 added
- 2 edited
-
src/routes/guardian.js (modified) (1 diff)
-
src/views/partials/note-body.ejs (modified) (1 diff)
-
test/note-body-media-shape.test.js (added)
Legend:
- Unmodified
- Added
- Removed
-
src/routes/guardian.js
r47db4b5 r54b027a 262 262 when_text: formatDateTime(p.published || p.created_at), 263 263 cw: p.cw || null, 264 media: p.media_json ? JSON.parse(p.media_json) : [], 264 // Zelfde valkuil als in note-body.ejs: kapotte json gooit, maar geldige json 265 // van het verkeerde type niet. Zonder deze wacht neemt één vreemde note van 266 // een remote server het hele guardian-paneel mee, en dat is precies het 267 // scherm dat het moet doen als er iets aan de hand is. 268 media: (() => { try { const m = JSON.parse(p.media_json || '[]'); return Array.isArray(m) ? m : []; } catch { return []; } })(), 265 269 // Een post van je ward hoort er hetzelfde uit te zien als in de Krant en 266 270 // in Berichten: dezelfde partial, dus opmaak, media, quote-kaart en -
src/views/partials/note-body.ejs
r47db4b5 r54b027a 8 8 Krant-only trimmings (the boost byline, polls, the audio player iframe, the 9 9 action bar) stay in tl-item: they are about the feed, not about the post. */ 10 // De catch vangt KAPOTTE json; hij vangt niet geldige json van het verkeerde 11 // TYPE. Drie posts van een remote server droegen media_json = "[]", dus een 12 // string met daarin [], en JSON.parse geeft dan netjes een string terug. Een 13 // string heeft geen .filter, en daarmee lag de hele Krant plat: één vreemde 14 // note nam de pagina mee. Wat er binnenkomt is niet van ons, dus de vorm moet 15 // hier afgedwongen worden en niet aangenomen. 10 16 var _m = []; try { _m = JSON.parse(nb.media_json || '[]'); } catch (e) { _m = []; } 17 if (!Array.isArray(_m)) _m = []; 11 18 var _imgs = _m.filter(function (m) { return m && m.url && (!m.type || /^image\//.test(m.type)); }); 12 19 var _vids = _m.filter(function (m) { return m && m.url && m.type && /^video\//.test(m.type); });
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)