Changeset 7881080 in Klonkt for src/routes
- Timestamp:
- 06/18/2026 03:28:34 AM (3 months ago)
- Branches:
- main
- Children:
- 8398935
- Parents:
- 98ecf51
- Location:
- src/routes
- Files:
-
- 4 edited
-
account.js (modified) (2 diffs)
-
admin-sites.js (modified) (2 diffs)
-
admin.js (modified) (2 diffs)
-
hub.js (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/routes/account.js
r98ecf51 r7881080 21 21 import { v4 as uuid } from 'uuid'; 22 22 import db from '../config/database.js'; 23 import { getPrimarySite } from '../middleware/site.js'; 23 24 import { renderPage } from '../middleware/render.js'; 24 25 import { requireAuth } from '../middleware/auth.js'; … … 80 81 let site = db.prepare('SELECT id, title, tagline, slug, owner_id FROM sites WHERE owner_id = ? ORDER BY created_at LIMIT 1').get(user.id); 81 82 if (!site && user.role === 'god') { 82 site = db.prepare('SELECT id, title, tagline, slug, owner_id FROM sites ORDER BY created_at LIMIT 1').get();83 site = getPrimarySite(); // primaire/hoofd-site als fallback 83 84 } 84 85 return site || null; -
src/routes/admin-sites.js
r98ecf51 r7881080 161 161 const sites = db.prepare(` 162 162 SELECT s.id, s.slug, s.title, s.description, s.created_at, 163 s.is_public, s.robots_index, 163 s.is_public, s.robots_index, s.is_primary, 164 164 u.username AS owner_username, 165 165 (SELECT COUNT(*) FROM posts WHERE site_id = s.id) AS post_count 166 166 FROM sites s LEFT JOIN users u ON u.id = s.owner_id 167 ORDER BY s. created_at DESC167 ORDER BY s.is_primary DESC, s.created_at DESC 168 168 `).all(); 169 169 … … 354 354 }); 355 355 356 // ==================== MAAK PRIMAIR ==================== 357 // God kiest welke site de primaire/hoofd-site is (de label-/bedrijfssite in hub; 358 // in solo dé site). Precies één site is primair → eerst alles uit, dan deze aan. 359 router.post('/:slug/make-primary', requireGod, (req, res) => { 360 const site = db.prepare('SELECT id FROM sites WHERE slug = ?').get(req.params.slug); 361 if (!site) return res.redirect('/admin/sites?error=Niet+gevonden'); 362 db.transaction(() => { 363 db.prepare('UPDATE sites SET is_primary = 0').run(); 364 db.prepare('UPDATE sites SET is_primary = 1 WHERE id = ?').run(site.id); 365 })(); 366 res.redirect('/admin/sites?success=' + encodeURIComponent('Primaire site bijgewerkt')); 367 }); 368 356 369 // ==================== DELETE ==================== 357 370 router.post('/:slug/delete', requireGod, (req, res) => { -
src/routes/admin.js
r98ecf51 r7881080 10 10 import { requireAuth } from '../middleware/auth.js'; 11 11 import { getTenancy } from '../services/SettingsService.js'; 12 import { getPrimarySite } from '../middleware/site.js'; 12 13 13 14 const router = express.Router(); … … 59 60 const tenancy = getTenancy(); 60 61 61 // De primaire/ owner-site — in solo dé site, in hub de hoofdsite. Geeft de62 // De primaire/hoofd-site — in solo dé site, in hub de hoofdsite. Geeft de 62 63 // "Uiterlijk"-tegel z'n edit-link + de posts/concepten-lijst. 63 const primarySite = db.prepare( 64 'SELECT id, slug, title FROM sites ORDER BY created_at ASC LIMIT 1' 65 ).get() || null; 64 const primarySite = getPrimarySite(); 66 65 67 66 const stats = { -
src/routes/hub.js
r98ecf51 r7881080 35 35 `).all(); 36 36 37 // De hoofd-/labelsite ( oudste = de bedrijfs-/hoofdaccount) is GEEN artiest;38 // die tonen we apart bovenaan, niet in de Artiesten-roster.37 // De hoofd-/labelsite (de expliciet primaire = de bedrijfs-/hoofdaccount) is 38 // GEEN artiest; die tonen we apart bovenaan, niet in de Artiesten-roster. 39 39 const mainSite = db.prepare(` 40 40 SELECT s.id, s.slug, s.title, s.tagline, s.profile_photo, s.accent, … … 43 43 FROM sites s 44 44 LEFT JOIN users u ON u.id = s.owner_id 45 ORDER BY s.created_at ASC45 WHERE s.is_primary = 1 46 46 LIMIT 1 47 47 `).get() || null;
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)