// Script: set-all-birthday-visible.mjs
// Setzt für alle Mitglieder das Flag visibility.showBirthday auf true (mit Entschlüsselung)

import { readMembers, writeMembers } from './utils/members.js';
import dotenv from 'dotenv';
import path from 'path';
import { fileURLToPath } from 'url';

dotenv.config({ path: path.resolve(process.cwd(), '.env') });

async function main() {
  let members = await readMembers();
  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) {
    await writeMembers(members);
    console.log(`Flag für ${changed} Mitglieder gesetzt.`);
  } else {
    console.log('Alle Mitglieder hatten das Flag bereits gesetzt.');
  }
}

main();
