Index: src/routes/admin-shows.js
===================================================================
--- src/routes/admin-shows.js	(revision 8d32dcf6552ef4dcd02cb0465748921a55ac674b)
+++ src/routes/admin-shows.js	(revision bad5c7786644eb18eff06ea0396f21b771e994dc)
@@ -18,4 +18,5 @@
 import { mailerConfigured, sendMail } from '../config/mailer.js';
 import { confirmedFor, counts } from '../services/SubscriberService.js';
+import { getSetting, setSetting } from '../services/SettingsService.js';
 
 const router = express.Router();
@@ -36,4 +37,5 @@
     pageTitle: 'Agenda', bodyClass: 'on-admin',
     shows, smtp: mailerConfigured(), notifyCount: confirmedFor(site.id, 'notify').length,
+    agendaEnabled: getSetting('agenda_enabled') === '1',
     ...extra,
   });
@@ -83,4 +85,10 @@
 });
 
+router.post('/toggle', requireSiteManager, premiumGate, (req, res) => {
+  // Agenda tonen op de site (Agenda-knop in de pill + /shows-pagina).
+  setSetting('agenda_enabled', req.body.enabled ? '1' : '0');
+  res.redirect((res.locals.siteUrlBase || '') + '/admin/shows');
+});
+
 router.post('/:id/delete', requireSiteManager, premiumGate, (req, res) => {
   const site = res.locals.site;
