From e60c0f4481854436d4310cf30ccc0df5dc1670ab Mon Sep 17 00:00:00 2001 From: "Torsten Schulz (local)" Date: Mon, 27 Apr 2026 15:10:57 +0200 Subject: [PATCH] Add logic to include active trainers as newsletter recipients - Enhanced the getRecipientsByGroup function to filter and add active trainers from users.json to the newsletter recipients list. - Ensured that duplicate emails are not added to the recipients array. --- server/utils/newsletter.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/server/utils/newsletter.js b/server/utils/newsletter.js index 6f841a3..68a9441 100644 --- a/server/utils/newsletter.js +++ b/server/utils/newsletter.js @@ -236,6 +236,22 @@ export async function getRecipientsByGroup(targetGroup) { email: m.email, name: `${m.firstName || ''} ${m.lastName || ''}`.trim() || m.name || '' })) + + // Zusätzlich aktive Trainer aus users.json anschreiben + users + .filter(u => { + if (!u.active || !u.email || !u.email.trim()) return false + const roles = Array.isArray(u.roles) ? u.roles : (u.role ? [u.role] : []) + return roles.includes('trainer') + }) + .forEach(u => { + if (!recipients.find(r => r.email.toLowerCase().trim() === u.email.toLowerCase().trim())) { + recipients.push({ + email: u.email.trim(), + name: u.name || '' + }) + } + }) break case 'mannschaftsspieler':