mirror of
https://github.com/Deutscher-Tischfussballbund/com_sportsmanager.git
synced 2026-06-10 06:27:52 +00:00
fix: replace sendMail loop with bcc loop in order to send one mail instead of way too many
This commit is contained in:
@@ -5217,7 +5217,7 @@ function adminKategorien(): void
|
||||
$kategorien[5] = array();
|
||||
$kategorien[6] = array();
|
||||
|
||||
|
||||
|
||||
foreach ($rows as $row)
|
||||
$kategorien[$row->typ][$row->nummer] = $row->bezeichnung;
|
||||
|
||||
@@ -9943,9 +9943,13 @@ function adminSaveBegegnungSpielplan(): void
|
||||
}
|
||||
$rows = $db->loadObjectList();
|
||||
$mailer = Factory::getContainer()->get(MailerFactoryInterface::class)->createMailer();
|
||||
$mailer->setSender($mailfrom, $fromname);
|
||||
$mailer->setSubject($subject);
|
||||
$mailer->setBody($body);
|
||||
foreach ($rows as $row) {
|
||||
$mailer->sendMail($mailfrom, $fromname, $row->email, $subject, $body);
|
||||
$mailer->addBcc($row->email);
|
||||
}
|
||||
$mailer->send();
|
||||
}
|
||||
|
||||
begegnungChanged($begegnung, $begegnung_alt, $modus, $heim_team, $gast_team, $spiele);
|
||||
@@ -10274,9 +10278,13 @@ function adminBegegnungSpielplanBestaetigen(): void
|
||||
}
|
||||
$rows = $db->loadObjectList();
|
||||
$mailer = Factory::getContainer()->get(MailerFactoryInterface::class)->createMailer();
|
||||
$mailer->setSender($mailfrom, $fromname);
|
||||
$mailer->setSubject($subject);
|
||||
$mailer->setBody($body);
|
||||
foreach ($rows as $row) {
|
||||
$mailer->sendMail($mailfrom, $fromname, $row->email, $subject, $body);
|
||||
$mailer->addBcc($row->email);
|
||||
}
|
||||
$mailer->send();
|
||||
|
||||
if (isJson()) {
|
||||
begegnungSpielplan();
|
||||
@@ -11213,8 +11221,8 @@ function adminBegegnungenExportForm(): void
|
||||
$veranstaltung = $rows[0];
|
||||
|
||||
//Alle Ligen einer Saison ermitteln
|
||||
$query = "SELECT * FROM #__sportsmanager_veranstaltung
|
||||
WHERE saison_id = " . $veranstaltung->saison_id . "
|
||||
$query = "SELECT * FROM #__sportsmanager_veranstaltung
|
||||
WHERE saison_id = " . $veranstaltung->saison_id . "
|
||||
AND #__sportsmanager_veranstaltung.bezeichnung NOT IN ('Schiedsrichter')
|
||||
ORDER BY #__sportsmanager_veranstaltung.reihenfolge;";
|
||||
$db->setQuery($query);
|
||||
@@ -11224,7 +11232,7 @@ function adminBegegnungenExportForm(): void
|
||||
$rows = $db->loadObjectList();
|
||||
if (count($rows) < 1) die("Wrong id!");
|
||||
$saison = $rows;
|
||||
|
||||
|
||||
HTML_sportsmanager_admin::adminBegegnungenExport($veranstaltung,$saison);
|
||||
}
|
||||
|
||||
@@ -11260,8 +11268,8 @@ function adminBegegnungenExportForm(): void
|
||||
$dateiname = "";
|
||||
if ($export == "spieler") {
|
||||
$query = "
|
||||
SELECT t5.bezeichnung AS Veranstaltung, t2.vereinsname AS Verein, t1.teamname AS Team,
|
||||
t4.spielernr AS Passnummer, t4.nachname AS Nachname, t4.vorname AS Vorname, t4.geburtsjahr AS Geburtsjahr,
|
||||
SELECT t5.bezeichnung AS Veranstaltung, t2.vereinsname AS Verein, t1.teamname AS Team,
|
||||
t4.spielernr AS Passnummer, t4.nachname AS Nachname, t4.vorname AS Vorname, t4.geburtsjahr AS Geburtsjahr,
|
||||
t6.saisonbezeichnung AS Saison, t3.erster_spieltag AS Spielberechtigt_von, t3.letzter_spieltag AS Spielberechtigt_bis
|
||||
FROM #__sportsmanager_team AS t1
|
||||
LEFT JOIN #__sportsmanager_veranstaltung AS t5 ON t1.veranstaltung_id = t5.veranstaltung_id
|
||||
@@ -11284,10 +11292,10 @@ function adminBegegnungenExportForm(): void
|
||||
if ($export == "spielplan" or $export == "spielberichte") {
|
||||
$query = "
|
||||
SELECT t1.begegnung_id AS ID, t5.saisonbezeichnung AS Saison,
|
||||
t4.bezeichnung AS Liga, t1.zeitpunkt AS Spielstart, t2.teamname AS Heim, t3.teamname AS Gast,
|
||||
t1.spieltag AS Spieltag_Nr, t1.heim_punkte AS Heim_Tore, t1.gast_punkte AS Gast_Tore,
|
||||
t4.bezeichnung AS Liga, t1.zeitpunkt AS Spielstart, t2.teamname AS Heim, t3.teamname AS Gast,
|
||||
t1.spieltag AS Spieltag_Nr, t1.heim_punkte AS Heim_Tore, t1.gast_punkte AS Gast_Tore,
|
||||
t1.heim_spielpunkte AS Heim_Satzpunkte, t1.gast_spielpunkte AS Gast_Satzpunkte
|
||||
FROM #__sportsmanager_begegnung AS t1
|
||||
FROM #__sportsmanager_begegnung AS t1
|
||||
LEFT JOIN #__sportsmanager_team AS t2 ON t1.heim_team_id = t2.team_id
|
||||
LEFT JOIN #__sportsmanager_team AS t3 ON t1.gast_team_id = t3.team_id
|
||||
LEFT JOIN #__sportsmanager_veranstaltung AS t4 ON t2.veranstaltung_id = t4.veranstaltung_id
|
||||
@@ -11326,7 +11334,7 @@ function adminBegegnungenExportForm(): void
|
||||
|
||||
|
||||
foreach ($rows as $value) {
|
||||
|
||||
|
||||
// letze Änderung
|
||||
$query = "
|
||||
SELECT t1.eingetragen AS gespeichert_um, t2.name AS gespeichert_von
|
||||
@@ -11337,16 +11345,16 @@ function adminBegegnungenExportForm(): void
|
||||
ORDER BY eingetragen DESC
|
||||
LIMIT 1;
|
||||
";
|
||||
|
||||
|
||||
$letzterEintrag = null;
|
||||
$db->setQuery($query);
|
||||
if ($db->execute()) {
|
||||
$letzterEintrag = $db->loadObjectList();
|
||||
}
|
||||
|
||||
|
||||
$value->gespeichert_um = $letzterEintrag[0]->gespeichert_um;
|
||||
$value->gespeichert_von = $letzterEintrag[0]->gespeichert_von;
|
||||
|
||||
|
||||
// Spielbericht
|
||||
$query = "
|
||||
SELECT
|
||||
@@ -11355,13 +11363,13 @@ function adminBegegnungenExportForm(): void
|
||||
t5.spielernr AS Pass_Gast1, t6.spielernr AS Pass_Gast2,
|
||||
t1.teamspiel_heim_punkte AS Heim_Tore, t1.teamspiel_gast_punkte AS Gast_Tore,
|
||||
t1.teamspiel_heim_spielpunkte AS Heim_Punkte, t1.teamspiel_gast_spielpunkte AS Gast_Punkte
|
||||
FROM #__sportsmanager_teamspiel AS t1
|
||||
FROM #__sportsmanager_teamspiel AS t1
|
||||
LEFT JOIN #__sportsmanager_begegnung AS t2 ON t1.begegnung_id = t2.begegnung_id
|
||||
LEFT JOIN #__sportsmanager_spieler AS t3 ON t1.heim_spieler_1_id = t3.spieler_id
|
||||
LEFT JOIN #__sportsmanager_spieler AS t4 ON t1.heim_spieler_2_id = t4.spieler_id
|
||||
LEFT JOIN #__sportsmanager_spieler AS t5 ON t1.gast_spieler_1_id = t5.spieler_id
|
||||
LEFT JOIN #__sportsmanager_spieler AS t6 ON t1.gast_spieler_2_id = t6.spieler_id
|
||||
WHERE t1.begegnung_id = " . $value->ID . "
|
||||
WHERE t1.begegnung_id = " . $value->ID . "
|
||||
ORDER BY t1.teamspiel_nummer;
|
||||
";
|
||||
|
||||
@@ -11392,7 +11400,7 @@ function adminBegegnungenExportForm(): void
|
||||
}
|
||||
$dateiname = "Spielberichte " . $veranstaltung->bezeichnung;
|
||||
}
|
||||
|
||||
|
||||
$dateiname .= ".csv";
|
||||
$dateiname = bereinigterDateiname($dateiname);
|
||||
ob_end_clean(); // Wegen UTF-8-Zeichen, die in der ausgabe vorhanden sind
|
||||
@@ -16348,12 +16356,6 @@ function termineEmailBenachrichtigung($termin_aktion_id, $ueberarbeiten = false)
|
||||
|
||||
$from = $app->getCfg('mailfrom');
|
||||
$fromName = $app->getCfg('fromname');
|
||||
$mode = 1;
|
||||
$cc = null;
|
||||
$bcc = null;
|
||||
$attachment = null;
|
||||
$replyTo = null;
|
||||
$replyToName = null;
|
||||
if ($terminaktion->status == 2) {
|
||||
$subject = "Termin " . $aktion[$terminaktion->typ] . " beantragt: " . $terminaktion->bezeichnung . " am " . FormatierterTermin($terminaktion->erster_tag, $terminaktion->letzter_tag, true);
|
||||
$body = "<p>Das " . htmlentities_utf8($aktion[$terminaktion->typ]) . " des folgenden Termins wurde beantragt und wird nun von den Moderatoren geprüft. Sobald der Termin bearbeitet wurde, wird eine E-Mail-Benachrichtigung verschickt.</p>";
|
||||
@@ -16363,17 +16365,16 @@ function termineEmailBenachrichtigung($termin_aktion_id, $ueberarbeiten = false)
|
||||
}
|
||||
$body .= "<table>\r\n" . $termin_beschreibung . $termin_moderationsstatus . "</table>\r\n";
|
||||
$mailer = Factory::getContainer()->get(MailerFactoryInterface::class)->createMailer();
|
||||
$mailer->setSender($from, $fromName);
|
||||
$mailer->setSubject($subject);
|
||||
$mailer->isHtml(true);
|
||||
$mailer->setBody($body);
|
||||
foreach ($benachrichtigung_emails as $email)
|
||||
$mailer->sendMail($from, $fromName, $email, $subject, $body, $mode, $cc, $bcc, $attachment, $replyTo, $replyToName);
|
||||
$mailer->addBcc($email);
|
||||
$mailer->send();
|
||||
|
||||
$from = $app->getCfg('mailfrom');
|
||||
$fromName = $app->getCfg('fromname');
|
||||
$mode = 1;
|
||||
$cc = null;
|
||||
$bcc = null;
|
||||
$attachment = null;
|
||||
$replyTo = null;
|
||||
$replyToName = null;
|
||||
if ($terminaktion->status == 2) {
|
||||
$subject = "Termin " . $aktion[$terminaktion->typ] . " beantragt von " . $terminaktion->aktion_user_name . ": " . $terminaktion->bezeichnung . " am " . FormatierterTermin($terminaktion->erster_tag, $terminaktion->letzter_tag, true);
|
||||
$body = "<p>Termin " . htmlentities_utf8($aktion[$terminaktion->typ]) . " beantragt:</p>\r\n";
|
||||
@@ -16385,12 +16386,25 @@ function termineEmailBenachrichtigung($termin_aktion_id, $ueberarbeiten = false)
|
||||
$body = "<p>Termin " . htmlentities_utf8($aktion[$terminaktion->typ]) . " abgelehnt:</p>";
|
||||
}
|
||||
$body .= "<table>\r\n" . $termin_beschreibung . $termin_moderationsstatus . "</table>\r\n";
|
||||
$mailer = Factory::getContainer()->get(MailerFactoryInterface::class)->createMailer();
|
||||
$mailer->setSender($from, $fromName);
|
||||
$mailer->setSubject($subject);
|
||||
$mailer->isHtml(true);
|
||||
$mailer->setBody($body);
|
||||
foreach ($benachrichtigung_moderatoren_informieren as $email)
|
||||
$mailer->sendMail($from, $fromName, $email, $subject, $body, $mode, $cc, $bcc, $attachment, $replyTo, $replyToName);
|
||||
$mailer->addBcc($email);
|
||||
$mailer->send();
|
||||
|
||||
$body .= "<p>Bitte <a href=\"" . SportsManagerURL('&task=admin_termin_details&nur_beantragte=1&id=' . $terminaktion->termin_aktion_id, -1) . "\">hier</a> klicken, um den Termin zu moderieren.</p>\r\n";
|
||||
$mailer = Factory::getContainer()->get(MailerFactoryInterface::class)->createMailer();
|
||||
$mailer->setSender($from, $fromName);
|
||||
$mailer->setSubject($subject);
|
||||
$mailer->isHtml(true);
|
||||
$mailer->setBody($body);
|
||||
foreach ($benachrichtigung_moderatoren_aendern as $email)
|
||||
$mailer->sendMail($from, $fromName, $email, $subject, $body, $mode, $cc, $bcc, $attachment, $replyTo, $replyToName);
|
||||
$mailer->addBcc($email);
|
||||
$mailer->send();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -4562,9 +4562,13 @@ function begegnungVerlegen(): void
|
||||
}
|
||||
$rows = $db->loadObjectList();
|
||||
$mailer = Factory::getContainer()->get(MailerFactoryInterface::class)->createMailer();
|
||||
$mailer->setSender($mailfrom, $fromname);
|
||||
$mailer->setSubject($subject);
|
||||
$mailer->setBody($body);
|
||||
foreach ($rows as $row) {
|
||||
$mailer->sendMail($mailfrom, $fromname, $row->email, $subject, $body);
|
||||
$mailer->addBcc($row->email);
|
||||
}
|
||||
$mailer->send();
|
||||
|
||||
begegnungVerlegenNotify($begegnung, $rows, $vorschlagendes_team_id, $heim_team, $gast_team);
|
||||
|
||||
@@ -4711,9 +4715,13 @@ function begegnungVerlegen(): void
|
||||
}
|
||||
$rows = $db->loadObjectList();
|
||||
$mailer = Factory::getContainer()->get(MailerFactoryInterface::class)->createMailer();
|
||||
$mailer->setSender($mailfrom, $fromname);
|
||||
$mailer->setSubject($subject);
|
||||
$mailer->setBody($body);
|
||||
foreach ($rows as $row) {
|
||||
$mailer->sendMail($mailfrom, $fromname, $row->email, $subject, $body);
|
||||
$mailer->addBcc($row->email);
|
||||
}
|
||||
$mailer->send();
|
||||
|
||||
if (isJson()) {
|
||||
JSON_sportsmanager::JSON([]);
|
||||
|
||||
Reference in New Issue
Block a user