Changeset dd7e2a2 in Klonkt
- Timestamp:
- 06/22/2026 02:52:43 AM (3 months ago)
- Branches:
- main
- Children:
- b20460e
- Parents:
- 5eff581
- Location:
- src
- Files:
-
- 8 edited
-
assets/css/style.css (modified) (1 diff)
-
middleware/render.js (modified) (1 diff)
-
middleware/site.js (modified) (2 diffs)
-
routes/admin-sites.js (modified) (4 diffs)
-
routes/auth.js (modified) (1 diff)
-
server.js (modified) (1 diff)
-
services/ThemeService.js (modified) (4 diffs)
-
views/shell.ejs (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
src/assets/css/style.css
r5eff581 rdd7e2a2 107 107 --ink: #f4ede0; --ink-soft: #d4ccb8; --ink-muted: #a8a29e; --ink-faint: #6b6560; 108 108 --rule: #3d3833; --rule-2: #4d4740; 109 } 110 111 /* ── KLONKT ── merk-standaard: off-white → donkerblauw (klonkt.com) ── */ 112 [data-palette="klonkt"] { 113 --paper: #f3f1ea; --paper-2: #e7e4d9; 114 --ink: #11141c; --ink-soft: #2b3040; --ink-muted: #5b6473; --ink-faint: #9aa3b2; 115 --rule: #d8d4c6; --rule-2: #c5c0af; 116 } 117 @media (prefers-color-scheme: dark) { 118 [data-palette="klonkt"]:not([data-theme="light"]) { 119 --paper: #0b0d12; --paper-2: #11141c; 120 --ink: #f3f1ea; --ink-soft: #c8cdd6; --ink-muted: #9aa3b2; --ink-faint: #6b7280; 121 --rule: #232a38; --rule-2: #2b3040; 122 } 123 } 124 [data-theme="dark"][data-palette="klonkt"] { 125 --paper: #0b0d12; --paper-2: #11141c; 126 --ink: #f3f1ea; --ink-soft: #c8cdd6; --ink-muted: #9aa3b2; --ink-faint: #6b7280; 127 --rule: #232a38; --rule-2: #2b3040; 109 128 } 110 129 -
src/middleware/render.js
r5eff581 rdd7e2a2 143 143 const _navAccent = (_site && _site.accent && /^#[0-9a-fA-F]{6}$/.test(_site.accent)) 144 144 ? _site.accent : '#c2410c'; 145 const _navPalette = (_site && _site.palette) ? _site.palette : ' sage';145 const _navPalette = (_site && _site.palette) ? _site.palette : 'klonkt'; 146 146 const triggerJson = JSON.stringify({ 147 147 pcmsNav: { bodyClass: locals.bodyClass, accent: _navAccent, palette: _navPalette }, -
src/middleware/site.js
r5eff581 rdd7e2a2 103 103 */ 104 104 export function loadTheme(req, res, next) { 105 const PALETTES = [' sage','paper','ocean','forest','stone','midnight','sunset','cream'];105 const PALETTES = ['klonkt','sage','paper','ocean','forest','stone','midnight','sunset','cream','rose','slate','mint','lilac']; 106 106 107 107 const user = req.session?.user; … … 111 111 const palette = (user && PALETTES.includes(user.palette) ? user.palette : null) 112 112 || (site && PALETTES.includes(site.palette) ? site.palette : null) 113 || ' sage';113 || 'klonkt'; 114 114 115 115 res.locals.palette = palette; -
src/routes/admin-sites.js
r5eff581 rdd7e2a2 109 109 tagline: '', 110 110 language: 'nl', 111 palette: ' sage',112 accent: '# c2410c',111 palette: 'klonkt', 112 accent: '#e8b04b', 113 113 profile_photo: '', 114 114 profile_enabled: 1, … … 232 232 ownerId, 233 233 f.language || 'nl', 234 f.palette || ' sage',235 ThemeService.validateAccent(f.accent) || '# c2410c',234 f.palette || 'klonkt', 235 ThemeService.validateAccent(f.accent) || '#e8b04b', 236 236 f.profile_photo || null, 237 237 f.is_public ? 1 : 0, … … 291 291 // accent: only accept colors from the curated ACCENTS list. Falls back to 292 292 // the orange default if the submitted value isn't recognised. 293 const accent = ThemeService.validateAccent(f.accent) || '# c2410c';293 const accent = ThemeService.validateAccent(f.accent) || '#e8b04b'; 294 294 295 295 db.prepare(` … … 312 312 (f.tagline || '').slice(0, 200), 313 313 f.language || 'nl', 314 f.palette || ' sage',314 f.palette || 'klonkt', 315 315 accent, 316 316 themeOverride, -
src/routes/auth.js
r5eff581 rdd7e2a2 164 164 } 165 165 166 req.session.user = { id: userId, username, email, role: 'god', palette: ' sage', theme: 'dark' };166 req.session.user = { id: userId, username, email, role: 'god', palette: 'klonkt', theme: 'dark' }; 167 167 res.redirect(next || '/'); 168 168 }); -
src/server.js
r5eff581 rdd7e2a2 329 329 orientation: 'any', 330 330 background_color: '#1a1a17', 331 theme_color: site?.accent || '# c2410c',331 theme_color: site?.accent || '#e8b04b', 332 332 lang: site?.language || 'nl', 333 333 icons: [ -
src/services/ThemeService.js
r5eff581 rdd7e2a2 19 19 // wordt toegepast); de accent-stip is een representatieve kleur per palet. 20 20 static PALETTES = { 21 // Merk-standaard — komt overeen met klonkt.com (donkerblauw + geel). 22 klonkt: { 23 name: 'Klonkt', 24 light: { paper: '#f3f1ea', ink: '#11141c', accent: '#c98a2a' }, 25 dark: { paper: '#0b0d12', ink: '#f3f1ea', accent: '#e8b04b' } 26 }, 21 27 sage: { 22 28 name: 'Sage', … … 91 97 // meer warme + paars/roze variatie. Allemaal leesbaar op licht én donker. 92 98 static ACCENTS = [ 99 { key: 'klonkt', name: 'Klonkt-geel', color: '#e8b04b' }, 93 100 { key: 'red', name: 'Rood', color: '#dc2626' }, 94 101 { key: 'orange', name: 'Oranje', color: '#ea580c' }, … … 125 132 */ 126 133 static getPalette(paletteKey) { 127 return this.PALETTES[paletteKey] || this.PALETTES. sage;134 return this.PALETTES[paletteKey] || this.PALETTES.klonkt; 128 135 } 129 136 … … 197 204 static generateThemeMeta(userTheme, userPalette, siteTheme, siteAccent) { 198 205 const theme = userTheme || siteTheme || 'dark'; 199 const palette = userPalette || ' sage';200 const accent = siteAccent || '# c2410c';206 const palette = userPalette || 'klonkt'; 207 const accent = siteAccent || '#e8b04b'; 201 208 const paletteData = this.getPalette(palette); 202 209 const colors = theme === 'dark' ? paletteData.dark : paletteData.light; -
src/views/shell.ejs
r5eff581 rdd7e2a2 163 163 164 164 <!-- v9 stylesheet (full palette system) --> 165 <link rel="stylesheet" href="/assets/css/style.css?v=3 0">165 <link rel="stylesheet" href="/assets/css/style.css?v=31"> 166 166 167 167 <!-- Audio player styles: loaded on every page so the mini-player works
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)