Changeset 041a0df in Klonkt
- Timestamp:
- 06/28/2026 05:38:13 PM (2 months ago)
- Branches:
- main
- Children:
- 492fc20
- Parents:
- 3038fc9
- Location:
- src
- Files:
-
- 2 edited
-
middleware/render.js (modified) (1 diff)
-
views/pages/news.ejs (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
src/middleware/render.js
r3038fc9 r041a0df 163 163 // Rewrite a local /media/<file> cover to its on-demand downscaled thumbnail 164 164 // (crisp grid/list images). External URLs + already-thumb URLs pass through. 165 thumb: (url, w) => (typeof url === 'string' && url.startsWith('/media/') && !url.startsWith('/media/thumb/')) 166 ? `/media/thumb/${w || 480}/${url.slice(7)}` 167 : url, 165 thumb: (url, w) => { 166 if (!url || typeof url !== 'string') return url; 167 // Local cover → local thumb route; remote (federated) cover → signed downscale 168 // proxy (same as avatars), so remote line-art covers aren't browser-downscaled jagged. 169 if (url.startsWith('/media/') && !url.startsWith('/media/thumb/')) return `/media/thumb/${w || 480}/${url.slice(7)}`; 170 if (/^https?:\/\//i.test(url)) return imgProxyUrl(url, w || 480); 171 return url; 172 }, 168 173 // Crisp avatars: a local /media avatar goes through the local thumb route; a REMOTE 169 174 // (fediverse) avatar through the signed downscaling proxy. Same downscale, the remote -
src/views/pages/news.ejs
r3038fc9 r041a0df 118 118 <div class="tl-media"> 119 119 <% imgs.forEach(function(m){ %> 120 <a class="tl-media-img" href="<%= m.url %>" target="_blank" rel="noopener"><img src="<%= m.url%>" alt="" loading="lazy" decoding="async"></a>120 <a class="tl-media-img" href="<%= m.url %>" target="_blank" rel="noopener"><img src="<%= thumb(m.url, 640) %>" alt="" loading="lazy" decoding="async"></a> 121 121 <% }); %> 122 122 </div>
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)