Changeset 544cd86 in Klonkt
- Timestamp:
- 06/16/2026 07:09:01 AM (3 months ago)
- Branches:
- main
- Children:
- d15b27f
- Parents:
- 2c246d4
- File:
-
- 1 edited
-
src/views/pages/admin-site-edit.ejs (modified) (13 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/views/pages/admin-site-edit.ejs
r2c246d4 r544cd86 1 1 <div class="container admin-site-edit-page"> 2 2 <p><a href="/admin" class="btn">← Beheer</a></p> 3 <h1><%= isNew ? 'N ewsite' : 'Uiterlijk: ' + site.title %></h1>3 <h1><%= isNew ? 'Nieuwe site' : 'Uiterlijk: ' + site.title %></h1> 4 4 5 5 <% if (typeof success !== 'undefined' && success) { %><div class="audio-flash audio-flash--ok"><%= success %></div><% } %> … … 9 9 10 10 <fieldset> 11 <legend>Identit y</legend>12 <label> 13 <span>Slug <% if (!isNew) { %><em>( immutable)</em><% } %></span>11 <legend>Identiteit</legend> 12 <label> 13 <span>Slug <% if (!isNew) { %><em>(vast)</em><% } %></span> 14 14 <input type="text" name="slug" value="<%= site.slug %>" required <% if (!isNew) { %>readonly<% } %> 15 15 pattern="[a-z0-9_-]{2,40}" … … 17 17 </label> 18 18 <label> 19 <span>Tit le <small class="form-hint-inline">— shown in the header and as display name</small></span>19 <span>Titel <small class="form-hint-inline">— getoond in de kop en als weergavenaam</small></span> 20 20 <input type="text" name="title" value="<%= site.title || '' %>" required maxlength="200"> 21 21 </label> 22 22 <label> 23 <span>Tagline <small class="form-hint-inline">— short one-liner</small></span>23 <span>Tagline <small class="form-hint-inline">— korte oneliner</small></span> 24 24 <input type="text" name="tagline" value="<%= site.tagline || '' %>" maxlength="200"> 25 25 </label> 26 26 <label> 27 <span>Bio / description <small class="form-hint-inline">— shown in the profile header and used for SEO</small></span>27 <span>Bio / omschrijving <small class="form-hint-inline">— getoond in de profielkop en gebruikt voor SEO</small></span> 28 28 <textarea name="description" rows="3" maxlength="500"><%= site.description || '' %></textarea> 29 29 </label> 30 30 <label> 31 <span>Profi le photo</span>31 <span>Profielfoto</span> 32 32 <div class="photo-picker" id="photo-picker"> 33 33 <div class="photo-thumb" id="photo-thumb" <%= site.profile_photo ? '' : 'data-empty' %>> … … 40 40 <input type="text" name="profile_photo" id="photo-url" value="<%= site.profile_photo || '' %>" placeholder="/media/avatars/foo.jpg of https://…"> 41 41 <div class="photo-actions"> 42 <button type="button" class="btn" id="photo-upload-trigger">📷 Upload </button>42 <button type="button" class="btn" id="photo-upload-trigger">📷 Uploaden</button> 43 43 <button type="button" class="btn" id="photo-clear" <%= site.profile_photo ? '' : 'hidden' %>>Verwijder</button> 44 44 <small id="photo-status" class="form-hint photo-status"></small> … … 49 49 </label> 50 50 <label> 51 <span> Language (ISOcode)</span>51 <span>Taal (ISO-code)</span> 52 52 <input type="text" name="language" value="<%= site.language || 'nl' %>" maxlength="8"> 53 53 </label> 54 54 <label class="cb"> 55 55 <input type="checkbox" name="profile_enabled" value="1" <%= site.profile_enabled ? 'checked' : '' %>> 56 <span> Show profile header below the nav</span>56 <span>Profielkop tonen onder de navigatie</span> 57 57 </label> 58 58 </fieldset> 59 59 60 60 <fieldset> 61 <legend> Appearance</legend>61 <legend>Vormgeving</legend> 62 62 63 63 <%# ── Curated accent picker ─────────────────────────────────────── … … 66 66 still what's stored in the DB — we just constrain WHICH hex. %> 67 67 <fieldset class="accent-grid"> 68 <legend>Accent color</legend>68 <legend>Accentkleur</legend> 69 69 <% const _curAccent = (site.accent || '#c2410c').toLowerCase(); %> 70 70 <% accents.forEach(function(a) { %> … … 83 83 visitors with a localStorage override, still win over this default. %> 84 84 <fieldset class="theme-default"> 85 <legend> Default theme for new visitors</legend>85 <legend>Standaardthema voor nieuwe bezoekers</legend> 86 86 <% const td = site.theme_override || ''; %> 87 87 <label class="cb"> … … 91 91 <label class="cb"> 92 92 <input type="radio" name="theme_override" value="light" <%= td === 'light' ? 'checked' : '' %>> 93 <span>Li ght</span>93 <span>Licht</span> 94 94 </label> 95 95 <label class="cb"> 96 96 <input type="radio" name="theme_override" value="dark" <%= td === 'dark' ? 'checked' : '' %>> 97 <span>D ark</span>97 <span>Donker</span> 98 98 </label> 99 99 </fieldset> 100 100 101 101 <fieldset class="palette-grid"> 102 <legend>Palet te</legend>102 <legend>Palet</legend> 103 103 <% palettes.forEach(function(p) { %> 104 104 <label class="palette-swatch"> … … 121 121 122 122 <fieldset> 123 <legend> Behaviour</legend>123 <legend>Gedrag</legend> 124 124 <label class="cb"> 125 125 <input type="checkbox" name="is_public" value="1" <%= site.is_public ? 'checked' : '' %>> 126 <span>Publi c site (uncheck for closed circle)</span>126 <span>Publieke site (uitvinken voor een besloten kring)</span> 127 127 </label> 128 128 <label class="cb"> 129 129 <input type="checkbox" name="robots_index" value="1" <%= site.robots_index ? 'checked' : '' %>> 130 <span> Search engines may index (sitemap.xml is hidden if off)</span>130 <span>Zoekmachines mogen indexeren (sitemap.xml is verborgen indien uit)</span> 131 131 </label> 132 132 <label class="cb"> 133 133 <input type="checkbox" name="require_login_to_comment" value="1" <%= site.require_login_to_comment ? 'checked' : '' %>> 134 <span> Require login to comment</span>135 </label> 136 <label> 137 <span> Comment moderation</span>134 <span>Inloggen vereist om te reageren</span> 135 </label> 136 <label> 137 <span>Reactie-moderatie</span> 138 138 <select name="comments_moderation_mode"> 139 <option value="trust" <%= (site.comments_moderation_mode || 'trust') === 'trust' ? 'selected' : '' %>> Trust mode (auto-approve)</option>140 <option value="moderate" <%= site.comments_moderation_mode === 'moderate' ? 'selected' : '' %>>Moder ate (queue for review)</option>139 <option value="trust" <%= (site.comments_moderation_mode || 'trust') === 'trust' ? 'selected' : '' %>>Vertrouwen (automatisch goedkeuren)</option> 140 <option value="moderate" <%= site.comments_moderation_mode === 'moderate' ? 'selected' : '' %>>Modereren (eerst in de wachtrij)</option> 141 141 </select> 142 142 </label> 143 143 <label class="cb"> 144 144 <input type="checkbox" name="enable_audio_player" value="1" <%= site.enable_audio_player ? 'checked' : '' %>> 145 <span> Enable audio player + embeds</span>145 <span>Audiospeler + embeds inschakelen</span> 146 146 </label> 147 147 <%# Prutter is een Hub-only premium-functie — toggle alleen tonen in Hub-modus. %> … … 155 155 156 156 <fieldset class="profile-links-fieldset"> 157 <legend>Social / streaming links</legend>158 <p class="form-hint"> Shown as branded icons on the profile header. Add as many as you like.</p>157 <legend>Social / streaming-links</legend> 158 <p class="form-hint">Getoond als merk-iconen op de profielkop. Voeg er zoveel toe als je wilt.</p> 159 159 160 160 <div id="profile-links-rows"> … … 184 184 </template> 185 185 186 <button type="button" id="profile-link-add" class="btn">+ Add link</button>186 <button type="button" id="profile-link-add" class="btn">+ Link toevoegen</button> 187 187 </fieldset> 188 188 189 189 <fieldset> 190 <legend>Feed view</legend>191 <label> 192 <span> Default view for the homepage</span>190 <legend>Feed-weergave</legend> 191 <label> 192 <span>Standaardweergave voor de homepage</span> 193 193 <select name="feed_view_default"> 194 <option value="timeline" <%= (site.feed_view_default || 'timeline') === 'timeline' ? 'selected' : '' %>>Ti meline (chronological list)</option>195 <option value="grid" <%= site.feed_view_default === 'grid' ? 'selected' : '' %>>Grid ( cards)</option>194 <option value="timeline" <%= (site.feed_view_default || 'timeline') === 'timeline' ? 'selected' : '' %>>Tijdlijn (chronologische lijst)</option> 195 <option value="grid" <%= site.feed_view_default === 'grid' ? 'selected' : '' %>>Grid (kaarten)</option> 196 196 </select> 197 197 </label> 198 198 <label class="cb"> 199 199 <input type="checkbox" name="feed_view_switch" value="1" <%= site.feed_view_switch ? 'checked' : '' %>> 200 <span> Show timeline ↔ grid switcher above the feed</span>200 <span>Tijdlijn ↔ grid-schakelaar boven de feed tonen</span> 201 201 </label> 202 202 <label class="cb"> 203 203 <input type="checkbox" name="show_search" value="1" <%= site.show_search ? 'checked' : '' %>> 204 <span> Show search button in nav</span>204 <span>Zoekknop in de navigatie tonen</span> 205 205 </label> 206 206 <label class="cb"> 207 207 <input type="checkbox" name="show_archive_link" value="1" <%= site.show_archive_link ? 'checked' : '' %>> 208 <span> Show archive link in nav</span>208 <span>Archief-link in de navigatie tonen</span> 209 209 </label> 210 210 </fieldset> … … 213 213 <legend>SEO & social</legend> 214 214 <label> 215 <span>Tit le template (use {title} and{site})</span>215 <span>Titel-sjabloon (gebruik {title} en {site})</span> 216 216 <input type="text" name="title_template" value="<%= site.title_template || '{title} — {site}' %>" maxlength="200"> 217 217 </label> 218 218 <label> 219 <span>Canoni cal base URL (for productionHTTPS)</span>220 <input type="text" name="canonical" value="<%= site.canonical || '' %>" placeholder="https:// your-domain.com">221 </label> 222 <label> 223 <span>Twitter handle (with@)</span>224 <input type="text" name="twitter" value="<%= site.twitter || '' %>" placeholder="@ yourname" maxlength="64">219 <span>Canonieke basis-URL (voor productie-HTTPS)</span> 220 <input type="text" name="canonical" value="<%= site.canonical || '' %>" placeholder="https://jouw-domein.com"> 221 </label> 222 <label> 223 <span>Twitter / X-handle (met @)</span> 224 <input type="text" name="twitter" value="<%= site.twitter || '' %>" placeholder="@jouwnaam" maxlength="64"> 225 225 </label> 226 226 <details> 227 <summary> Search-engine verification</summary>227 <summary>Zoekmachine-verificatie</summary> 228 228 <label> 229 <span>Google site verification</span>229 <span>Google site-verificatie</span> 230 230 <input type="text" name="google_verification" value="<%= site.google_verification || '' %>" maxlength="200"> 231 231 </label> … … 246 246 247 247 <fieldset> 248 <legend> Custom CSS & HTML <em>(optional)</em></legend>249 <label> 250 <span> Custom CSS (injected as <style> in <head>)</span>248 <legend>Eigen CSS & HTML <em>(optioneel)</em></legend> 249 <label> 250 <span>Eigen CSS (geïnjecteerd als <style> in <head>)</span> 251 251 <textarea name="custom_css" rows="3" placeholder=".foo { color: red; }"><%= site.custom_css || '' %></textarea> 252 252 </label> 253 253 <label> 254 <span> Custom <head> HTML (analytics, extra metas)</span>254 <span>Eigen <head>-HTML (analytics, extra meta’s)</span> 255 255 <textarea name="custom_head_html" rows="3" placeholder="<meta name="...">"><%= site.custom_head_html || '' %></textarea> 256 256 </label> 257 257 <label> 258 <span> Custom footerHTML</span>258 <span>Eigen footer-HTML</span> 259 259 <textarea name="custom_foot_html" rows="3"><%= site.custom_foot_html || '' %></textarea> 260 260 </label> 261 261 </fieldset> 262 262 263 <button type="submit" class="btn btn-primary"><%= isNew ? ' Create site' : 'Save changes' %></button>263 <button type="submit" class="btn btn-primary"><%= isNew ? 'Site aanmaken' : 'Wijzigingen opslaan' %></button> 264 264 </form> 265 265 </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)