Changeset cf7c2d9 in Klonkt


Ignore:
Timestamp:
06/20/2026 07:06:59 AM (3 months ago)
Author:
roboburr <roboburr@…>
Branches:
main
Children:
d7b5a6c
Parents:
34b126b
Message:

feat(nav): Agenda link in the view-switcher + "shows" → "events"

Left of the Timeline/Grid bar there is now a 📅 Agenda link to the agenda
page (/shows), visible for premium instances. Visible labels on the agenda
and in Admin renamed from "show(s)" to "event(s)" (routes stay /shows).

Co-Authored-By: Claude <noreply@…>

Location:
src/views
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • src/views/pages/admin-shows.ejs

    r34b126b rcf7c2d9  
    1111  <% if (msg) { %><div class="ash-msg ash-<%= (typeof msgKind!=='undefined')?msgKind:'' %>"><%= msg %></div><% } %>
    1212
    13   <p class="ash-note"><strong><%= nc %></strong> abonnee(s) voor show-aankondigingen.
    14     <% if (!smtp) { %><br>⚠ SMTP niet ingesteld — shows worden opgeslagen, maar notify-mails kunnen pas verstuurd worden zodra je SMTP invult.<% } %></p>
     13  <p class="ash-note"><strong><%= nc %></strong> abonnee(s) voor evenement-aankondigingen.
     14    <% if (!smtp) { %><br>⚠ SMTP niet ingesteld — evenementen worden opgeslagen, maar notify-mails kunnen pas verstuurd worden zodra je SMTP invult.<% } %></p>
    1515
    1616  <form method="POST" action="<%= siteUrlBase %>/admin/shows" class="ash-form">
     
    2525    </div>
    2626    <label class="ash-check"><input type="checkbox" name="notify" value="1" <%= smtp ? '' : 'disabled' %>> Abonnees per e-mail op de hoogte brengen<%= smtp ? '' : ' (SMTP vereist)' %></label>
    27     <button type="submit" class="ash-add">+ Show toevoegen</button>
     27    <button type="submit" class="ash-add">+ Evenement toevoegen</button>
    2828  </form>
    2929
     
    3434          <span class="ash-when"><%= s.date %><% if (s.time) { %> <%= s.time %><% } %></span>
    3535          <span class="ash-where"><%= s.city %><% if (s.venue) { %> — <%= s.venue %><% } %></span>
    36           <form method="POST" action="<%= siteUrlBase %>/admin/shows/<%= s.id %>/delete" onsubmit="return confirm('Show verwijderen?')" style="margin:0">
     36          <form method="POST" action="<%= siteUrlBase %>/admin/shows/<%= s.id %>/delete" onsubmit="return confirm('Evenement verwijderen??')" style="margin:0">
    3737            <button type="submit" class="ash-del">🗑</button>
    3838          </form>
     
    4141    </ul>
    4242  <% } else { %>
    43     <p class="ash-empty">Nog geen shows.</p>
     43    <p class="ash-empty">Nog geen evenementen.</p>
    4444  <% } %>
    4545</section>
  • src/views/pages/shows.ejs

    r34b126b rcf7c2d9  
    66  <h1 class="sh-h1">Agenda</h1>
    77
    8   <% if (st === 'done') { %><div class="sh-msg">✓ Je staat op de lijst — je hoort het zodra er een show wordt aangekondigd.</div>
     8  <% if (st === 'done') { %><div class="sh-msg">✓ Je staat op de lijst — je hoort het zodra er een evenement wordt aangekondigd.</div>
    99  <% } else if (st === 'check') { %><div class="sh-msg">✉ Check je mail om je aanmelding te bevestigen.</div>
    1010  <% } else if (st === 'error') { %><div class="sh-msg sh-bad"><%= (typeof notifyMsg!=='undefined')?notifyMsg:'Er ging iets mis.' %></div><% } %>
    1111
    1212  <% if (!ss.length) { %>
    13     <p class="sh-empty">Geen aangekondigde shows op dit moment.</p>
     13    <p class="sh-empty">Geen aangekondigde evenementen op dit moment.</p>
    1414  <% } else { %>
    1515    <ul class="sh-list">
     
    3232
    3333  <div class="sh-notify">
    34     <h2 class="sh-h2">Mis geen show</h2>
    35     <p class="sh-sub">Laat je e-mail achter en je krijgt een seintje bij een nieuwe show. Uitschrijven kan altijd.</p>
     34    <h2 class="sh-h2">Mis geen evenement</h2>
     35    <p class="sh-sub">Laat je e-mail achter en je krijgt een seintje bij een nieuw evenement. Uitschrijven kan altijd.</p>
    3636    <form method="POST" action="<%= siteUrlBase %>/shows/notify" class="sh-form">
    3737      <input type="email" name="email" required placeholder="jouw@email.nl" autocomplete="email">
  • src/views/partials/shared-styles.ejs

    r34b126b rcf7c2d9  
    3737.view-switch-btn:hover { color: var(--ink); }
    3838.view-switch-btn[aria-selected="true"] { background: var(--paper); color: var(--ink); box-shadow: 0 1px 2px rgba(0,0,0,.06); }
     39
     40/* Agenda-link (evenementen) links in de switcher-balk. */
     41.vs-agenda {
     42  display: inline-flex; align-items: center; gap: 0.4rem;
     43  margin-right: auto;            /* naar links; Tijdlijn/Grid blijven rechts */
     44  padding: 0.35rem 0.85rem;
     45  border: 1px solid var(--rule); border-radius: 999px;
     46  background: var(--paper-2); color: var(--ink-muted, var(--ink-soft));
     47  text-decoration: none; font-size: 0.85rem; font-weight: 600;
     48  transition: background 120ms, color 120ms, border-color 120ms;
     49}
     50.vs-agenda:hover { color: var(--ink); border-color: var(--accent); }
     51.vs-agenda svg { opacity: .85; }
     52@media (max-width: 560px) { .vs-agenda { margin-right: 0; } }
    3953
    4054.grid-cols-picker {
  • src/views/partials/view-switcher.ejs

    r34b126b rcf7c2d9  
    55<div class="view-switcher-wrap">
    66  <div class="container">
     7    <% if (typeof premiumUnlocked !== 'undefined' && premiumUnlocked) {
     8         var _sbA = (typeof siteUrlBase !== 'undefined' && siteUrlBase) ? siteUrlBase : '';
     9    %>
     10    <a class="vs-agenda" href="<%= _sbA %>/shows" aria-label="Agenda — evenementen">
     11      <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="3" y="4" width="18" height="18" rx="2"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/></svg>
     12      <span>Agenda</span>
     13    </a>
     14    <% } %>
    715    <% if (typeof tenancy !== 'undefined' && tenancy === 'circle') {
    816         var _onCirkel = (typeof bodyClass === 'string' && bodyClass.indexOf('on-cirkel') >= 0);
Note: See TracChangeset for help on using the changeset viewer.