mirror of
https://github.com/Deutscher-Tischfussballbund/com_sportsmanager.git
synced 2026-06-10 06:27:52 +00:00
feat: prevent email flood on new created tournaments when email reminder are turned on in later stages
This commit is contained in:
@@ -21,14 +21,14 @@ require_once JPATH_SITE . '/components/com_sportsmanager/database/init.php';
|
|||||||
function UhrzeitWandlerDE(string $input): string {
|
function UhrzeitWandlerDE(string $input): string {
|
||||||
// mögliche Datumsformate
|
// mögliche Datumsformate
|
||||||
$formats = [
|
$formats = [
|
||||||
'Y-m-d H:i',
|
'Y-m-d H:i',
|
||||||
'd.m.Y H:i',
|
'd.m.Y H:i',
|
||||||
'd.m.Y H:i:s',
|
'd.m.Y H:i:s',
|
||||||
];
|
];
|
||||||
|
|
||||||
foreach ($formats as $format) {
|
foreach ($formats as $format) {
|
||||||
$dt = DateTime::createFromFormat($format, $input);
|
$dt = DateTime::createFromFormat($format, $input);
|
||||||
|
|
||||||
// prüfen, ob Parsing erfolgreich war UND das Datum exakt passt
|
// prüfen, ob Parsing erfolgreich war UND das Datum exakt passt
|
||||||
if ($dt && $dt->format($format) === $input) {
|
if ($dt && $dt->format($format) === $input) {
|
||||||
return $dt->format('Y-m-d H:i:s');
|
return $dt->format('Y-m-d H:i:s');
|
||||||
@@ -9618,7 +9618,7 @@ function adminBegegnungenImportieren(): void
|
|||||||
if ($encoding == "UTF-8")
|
if ($encoding == "UTF-8")
|
||||||
echo $data[$Titelzeile['Heim']];
|
echo $data[$Titelzeile['Heim']];
|
||||||
else
|
else
|
||||||
echo utf8_encode($data[$Titelzeile['Heim']]);
|
echo utf8_encode($data[$Titelzeile['Heim']]);
|
||||||
echo "</td>";
|
echo "</td>";
|
||||||
if ($Begegnung[$Zeile]['gast_team_id'] == "") {
|
if ($Begegnung[$Zeile]['gast_team_id'] == "") {
|
||||||
if ($data[$Titelzeile['Gast']] == "spielfrei") {
|
if ($data[$Titelzeile['Gast']] == "spielfrei") {
|
||||||
@@ -10633,7 +10633,20 @@ function adminEditTurnier(): void
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($id == 0) {
|
if ($id == 0) {
|
||||||
$query = "INSERT INTO #__sportsmanager_turnier (veranstalter_id, turnierbezeichnung, saison_id, turnierort, erster_tag" . ($letzter_tag != null ? ", letzter_tag" : "") . ", kategorie) VALUES ('$veranstalterId', '$turnierbezeichnung', '$saison_id', '$turnierort', '$erster_tag'" . ($letzter_tag != null ? ", '$letzter_tag'" : "") . ", '$kategorie');";
|
$query = $db->getQuery(true)
|
||||||
|
->select('wert')
|
||||||
|
->from('#__sportsmanager_einstellungen')
|
||||||
|
->where('name = ' . $db->quote('enable_email_reminders'));
|
||||||
|
$remindersEnabled = loadResult($db, $query);
|
||||||
|
|
||||||
|
$query = "INSERT INTO #__sportsmanager_turnier (veranstalter_id, turnierbezeichnung, saison_id, turnierort, erster_tag"
|
||||||
|
. ($letzter_tag != null ? ", letzter_tag" : "")
|
||||||
|
. ", kategorie, reminder_count) VALUES ('$veranstalterId', '$turnierbezeichnung', '$saison_id', '$turnierort', '$erster_tag'"
|
||||||
|
. ($letzter_tag != null ? ", '$letzter_tag'" : "")
|
||||||
|
. ", '$kategorie', "
|
||||||
|
. (!$remindersEnabled ? "'3'" : "'0'")
|
||||||
|
. ")";
|
||||||
|
|
||||||
$db->setQuery($query);
|
$db->setQuery($query);
|
||||||
if (!$db->execute()) {
|
if (!$db->execute()) {
|
||||||
die($db->stderr(true));
|
die($db->stderr(true));
|
||||||
|
|||||||
Reference in New Issue
Block a user