Changeset 834bcc3 in Klonkt for src/routes/admin-sites.js
- Timestamp:
- 06/23/2026 06:14:27 PM (3 months ago)
- Branches:
- main
- Children:
- d774679
- Parents:
- bb42dfb
- File:
-
- 1 edited
-
src/routes/admin-sites.js (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/routes/admin-sites.js
rbb42dfb r834bcc3 137 137 } 138 138 139 /** Geldige user-id voor owner-toewijzing, of null bij leeg/onbekend. */139 /** Valid user-id for owner assignment, or null if empty/unknown. */ 140 140 function validOwnerId(raw) { 141 141 const id = (raw || '').toString().trim(); … … 144 144 } 145 145 146 /** G eef een user admin-rechten op eensite (idempotent upsert). */146 /** Grant a user admin rights on a site (idempotent upsert). */ 147 147 function grantSiteAdmin(siteId, userId) { 148 148 db.prepare(` … … 152 152 } 153 153 154 /** Kandidaat-owners voor het owner-keuzeveld (god-only). */154 /** Candidate owners for the owner selector field (god-only). */ 155 155 function listOwnerCandidates() { 156 156 return db.prepare('SELECT id, username, role FROM users ORDER BY username').all(); … … 183 183 bodyClass: 'on-admin', 184 184 isNew: true, 185 // ?owner=<id> ( vanaf de gebruikers-pagina: "geef deze user een Klonkt") wordt186 // voorgeselecteerd; anders de aanmakendegod.185 // ?owner=<id> (from the users page: "give this user a Klonkt") is 186 // pre-selected; otherwise defaults to the creating god. 187 187 site: { slug: '', owner_id: validOwnerId(req.query.owner) || req.session.user.id, ...siteEditableFields() }, 188 188 users: listOwnerCandidates(), … … 211 211 const f = { ...siteEditableFields(), ...req.body }; 212 212 213 // Owner: god ma g de site aan een ANDERE gebruiker toewijzen — dit is de kern214 // van hub-modus (elke gebruiker z'n eigen, zelf te beheren Klonkt). Leeg of215 // ongeldig → de aanmakende god zelf.213 // Owner: god may assign the site to a DIFFERENT user — this is the core of 214 // hub mode (each user their own self-managed Klonkt). Empty or invalid → the 215 // creating god themselves. 216 216 const ownerId = validOwnerId(req.body.owner_id) || req.session.user.id; 217 217 … … 242 242 ); 243 243 244 // De OWNER (niet per se de aanmaker) krijgt een site_members-admin-rij → zo komt245 // 'ie door canAdminSite + de requireSiteManager-gates en beheert 'ie z'nsite.244 // The OWNER (not necessarily the creator) gets a site_members admin row → this 245 // lets them pass canAdminSite + requireSiteManager gates to manage their site. 246 246 grantSiteAdmin(siteId, ownerId); 247 247 … … 332 332 ); 333 333 334 // Owner (her)toewijzen — ALLEEN god. Een site-owner die z'n eigen site bewerkt335 // kan de eigenaar niet wijzigen (het veld wordt voor niet-god ook niet getoond).334 // (Re)assign owner — god ONLY. A site-owner editing their own site cannot 335 // change the owner (the field is not shown to non-god users either). 336 336 if (req.session.user.role === 'god') { 337 337 const newOwner = validOwnerId(req.body.owner_id); … … 345 345 }); 346 346 347 // ==================== MA AK PRIMAIR====================348 // God kiest welke site de primaire/hoofd-site is (de label-/bedrijfssite in hub;349 // in solo dé site). Precies één site is primair → eerst alles uit, dan deze aan.347 // ==================== MAKE PRIMARY ==================== 348 // God chooses which site is the primary/main site (the label/company site in hub; 349 // in solo mode: the one site). Exactly one site is primary → clear all, then set this one. 350 350 router.post('/:slug/make-primary', requireGod, (req, res) => { 351 351 const site = db.prepare('SELECT id FROM sites WHERE slug = ?').get(req.params.slug);
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)