From d52f3ffc8dba7c4e9ca84e3a2eef6feb09a99cec Mon Sep 17 00:00:00 2001 From: "Torsten Schulz (local)" Date: Sat, 14 Feb 2026 02:50:57 +0100 Subject: [PATCH] =?UTF-8?q?F=C3=BCge=20Skript=20hinzu,=20um=20das=20Sichtb?= =?UTF-8?q?arkeitsflag=20f=C3=BCr=20Geburtstage=20aller=20Mitglieder=20auf?= =?UTF-8?q?=20true=20zu=20setzen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/set-all-birthday-visible.cjs | 44 +++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 server/set-all-birthday-visible.cjs diff --git a/server/set-all-birthday-visible.cjs b/server/set-all-birthday-visible.cjs new file mode 100644 index 0000000..72c7ea7 --- /dev/null +++ b/server/set-all-birthday-visible.cjs @@ -0,0 +1,44 @@ +// Script: set-all-birthday-visible.cjs +// Setzt für alle Mitglieder das Flag visibility.showBirthday auf true + +const fs = require('fs') +const path = require('path') + +const membersPath = path.join(__dirname, 'data', 'members.json') + +let raw +try { + raw = fs.readFileSync(membersPath, 'utf8') +} catch (e) { + console.error('Fehler beim Lesen von members.json:', e) + process.exit(1) +} + +let members +try { + members = JSON.parse(raw) +} catch (e) { + console.error('Fehler beim Parsen von members.json:', e) + process.exit(1) +} + +if (!Array.isArray(members)) { + console.error('members.json ist kein Array!') + process.exit(1) +} + +let changed = 0 +for (const m of members) { + if (!m.visibility) m.visibility = {} + if (m.visibility.showBirthday !== true) { + m.visibility.showBirthday = true + changed++ + } +} + +if (changed > 0) { + fs.writeFileSync(membersPath, JSON.stringify(members, null, 2), 'utf8') + console.log(`Flag für ${changed} Mitglieder gesetzt.`) +} else { + console.log('Alle Mitglieder hatten das Flag bereits gesetzt.') +}