Merge pull request #267 from Deutscher-Tischfussballbund/sportsmanager2-stage

stage to prod
This commit is contained in:
MarvinF
2026-03-10 00:13:41 +01:00
committed by GitHub
6 changed files with 250 additions and 20 deletions
@@ -1655,6 +1655,7 @@ function adminEditSpieler(): void
bildLoeschen("spieler", $id); bildLoeschen("spieler", $id);
spielerstatistikAktualisieren(); spielerstatistikAktualisieren();
halloffameAktualisieren();
redirectSportsManagerURL('&task=admin_spieler&filter=' . urlencode($filter)); redirectSportsManagerURL('&task=admin_spieler&filter=' . urlencode($filter));
} }
@@ -1962,7 +1963,8 @@ function adminSpielerZusammenlegenForm(): void
aktuellerVereinAktualisieren($spieler_beizubehalten_id); aktuellerVereinAktualisieren($spieler_beizubehalten_id);
ranglisteAktualisieren(); ranglisteAktualisieren();
einstufungAktualisieren(); einstufungAktualisieren();
halloffameAktualisieren();
redirectSportsManagerURL('&task=admin_spieler&filter=' . urlencode($filter) . '#id' . $spieler_beizubehalten_id); redirectSportsManagerURL('&task=admin_spieler&filter=' . urlencode($filter) . '#id' . $spieler_beizubehalten_id);
} }
@@ -2072,7 +2074,8 @@ function adminRemoveInaktiveSpielerForm(): void
} }
spielerstatistikAktualisieren(); spielerstatistikAktualisieren();
halloffameAktualisieren();
foreach ($bilder_spieler_ids as $id) foreach ($bilder_spieler_ids as $id)
bildLoeschen("spieler", $id); bildLoeschen("spieler", $id);
@@ -3713,7 +3716,8 @@ function adminEditVerein(): void
bildLoeschen("vereine", $id); bildLoeschen("vereine", $id);
aktuellerVereinAktualisieren(); aktuellerVereinAktualisieren();
halloffameAktualisieren();
redirectSportsManagerURL('&task=admin_vereine'); redirectSportsManagerURL('&task=admin_vereine');
} }
@@ -3821,7 +3825,8 @@ function adminVereineZusammenlegenForm(): void
bildLoeschen("vereine", $verein_zu_entfernen_id); bildLoeschen("vereine", $verein_zu_entfernen_id);
aktuellerVereinAktualisieren(); aktuellerVereinAktualisieren();
halloffameAktualisieren();
redirectSportsManagerURL('&task=admin_vereine#id' . $verein_beizubehalten_id); redirectSportsManagerURL('&task=admin_vereine#id' . $verein_beizubehalten_id);
} }
@@ -10312,6 +10317,12 @@ function adminRemoveBegegnung(): void
die($db->stderr(true)); die($db->stderr(true));
} }
$query = "DELETE FROM #__sportsmanager_ordnungsstrafen WHERE begegnung_id = $id;";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
$query = "DELETE FROM #__sportsmanager_teamspiel WHERE begegnung_id = $id;"; $query = "DELETE FROM #__sportsmanager_teamspiel WHERE begegnung_id = $id;";
$db->setQuery($query); $db->setQuery($query);
if (!$db->execute()) { if (!$db->execute()) {
@@ -10323,7 +10334,7 @@ function adminRemoveBegegnung(): void
if (!$db->execute()) { if (!$db->execute()) {
die($db->stderr(true)); die($db->stderr(true));
} }
if ($elo_aktualisieren) { if ($elo_aktualisieren) {
wannGespieltAktualisieren(); wannGespieltAktualisieren();
eloAktualisieren($aktualisieren_ab_datum); eloAktualisieren($aktualisieren_ab_datum);
@@ -10340,6 +10351,7 @@ function adminRemoveBegegnung(): void
$db = getDatabase(); $db = getDatabase();
$jInput = Factory::getContainer()->get(SiteApplication::class)->input; $jInput = Factory::getContainer()->get(SiteApplication::class)->input;
$user_id = isExternalDatabase() ? 0 : (isJson() ? getUserID() : Factory::getContainer()->get(SiteApplication::class)->getIdentity()->id);
$id = $jInput->get('id', 0, 'INT'); $id = $jInput->get('id', 0, 'INT');
$veranstaltungId = $jInput->get('veranstaltungid', 0, 'INT'); $veranstaltungId = $jInput->get('veranstaltungid', 0, 'INT');
if ($veranstaltungId == 0) die("Missing id!"); if ($veranstaltungId == 0) die("Missing id!");
@@ -10388,6 +10400,14 @@ function adminRemoveBegegnung(): void
die($db->stderr(true)); die($db->stderr(true));
} }
$query = "INSERT INTO #__sportsmanager_begegnung_historie"
. "\n (begegnung_historie_id,begegnung_id,aktion,user_id,eingetragen)"
. "\n VALUES (NULL,$id,11,$user_id,NOW());";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
termin_aktualisieren($id); termin_aktualisieren($id);
redirectSportsManagerURL('&task=admin_begegnungen&veranstaltungid=' . $veranstaltungId . '#id' . $id); redirectSportsManagerURL('&task=admin_begegnungen&veranstaltungid=' . $veranstaltungId . '#id' . $id);
@@ -10395,6 +10415,10 @@ function adminRemoveBegegnung(): void
function adminEditBegegnungSpielplan($bestaetigen): void function adminEditBegegnungSpielplan($bestaetigen): void
{ {
//$bestaetigen = 0: Eingabe Moderator
//$bestaetigen = 1: Bestätigung Ergebnis
//$bestaetigen = 2: Pineingabe
$db = getDatabase(); $db = getDatabase();
$jInput = Factory::getContainer()->get(SiteApplication::class)->input; $jInput = Factory::getContainer()->get(SiteApplication::class)->input;
@@ -10503,7 +10527,7 @@ function adminEditBegegnungSpielplan($bestaetigen): void
if (count($rows) < 1) die("Wrong id!"); if (count($rows) < 1) die("Wrong id!");
$gast_team = $rows[0]; $gast_team = $rows[0];
$query = "SELECT * FROM #__sportsmanager_teamspiel WHERE begegnung_id = $id ORDER BY teamspiel_nummer"; $query = "SELECT * FROM #__sportsmanager_teamspiel WHERE begegnung_id = $id ORDER BY teamspiel_nummer, teamspiel_id";
$spiele = loadObjectList($db, $query); $spiele = loadObjectList($db, $query);
$query = "SELECT *" $query = "SELECT *"
. "\n FROM #__sportsmanager_mitglied_von_team as t1" . "\n FROM #__sportsmanager_mitglied_von_team as t1"
@@ -10525,7 +10549,6 @@ function adminEditBegegnungSpielplan($bestaetigen): void
: $begegnung->spielort_id) . "\""; : $begegnung->spielort_id) . "\"";
$begegnung->spielort_name = loadResult($db, $spielortQuery); $begegnung->spielort_name = loadResult($db, $spielortQuery);
if (isJson()) { if (isJson()) {
$response = JSON_sportsmanager::adminEditBegegnungSpielplan($bestaetigen, $veranstaltung, $begegnung, $heim_team, $gast_team, $spiele, $heim_spieler, $gast_spieler, $teamspiel_modus); $response = JSON_sportsmanager::adminEditBegegnungSpielplan($bestaetigen, $veranstaltung, $begegnung, $heim_team, $gast_team, $spiele, $heim_spieler, $gast_spieler, $teamspiel_modus);
JSON_sportsmanager::JSON($response); JSON_sportsmanager::JSON($response);
@@ -10558,6 +10581,7 @@ function adminSaveBegegnungSpielplan(): void
$erneut_oeffnen = $jInput->get('erneut_oeffnen', 0, 'INT'); $erneut_oeffnen = $jInput->get('erneut_oeffnen', 0, 'INT');
$heim_team_id = $jInput->get('heim_team_id', 0, 'INT'); $heim_team_id = $jInput->get('heim_team_id', 0, 'INT');
$gast_team_id = $jInput->get('gast_team_id', 0, 'INT'); $gast_team_id = $jInput->get('gast_team_id', 0, 'INT');
$loeschen = $jInput->getString('loeschen', '');
if ($jInput->get('cancel', false, 'BOOL')) { if ($jInput->get('cancel', false, 'BOOL')) {
if ($bestaetigen == 1) { if ($bestaetigen == 1) {
@@ -10579,6 +10603,13 @@ function adminSaveBegegnungSpielplan(): void
$benutzer_ist_moderator = benutzerZugriff("mannschaftswettbewerb_aendern") || benutzerVeranstaltungModerator($veranstaltungId); // Abfrage muss vor LOCK erfolgen, da sonst die Abfrage mangels Lock auf Moderator-Tabelle scheitert $benutzer_ist_moderator = benutzerZugriff("mannschaftswettbewerb_aendern") || benutzerVeranstaltungModerator($veranstaltungId); // Abfrage muss vor LOCK erfolgen, da sonst die Abfrage mangels Lock auf Moderator-Tabelle scheitert
//Spielbericht komplett loeschen
if ($benutzer_ist_moderator && $loeschen !== '') {
adminDeleteMatchReportBegegnung($id,$veranstaltungId);
redirectSportsManagerURL('&task=admin_begegnungen&veranstaltungid=' . $veranstaltungId . '#id' . $id, Text::_('COM_SPORTSMANAGER_MATCH_REPORT_WAS_DELETED'));
}
$query = "SELECT #__sportsmanager_begegnung.*, unbestaetigtes_ergebnis_id, zwischenergebnis," $query = "SELECT #__sportsmanager_begegnung.*, unbestaetigtes_ergebnis_id, zwischenergebnis,"
. " (SELECT COUNT(*) FROM #__sportsmanager_begegnung_historie WHERE #__sportsmanager_begegnung_historie.begegnung_id = #__sportsmanager_begegnung.begegnung_id) AS verlegen_aktionen" . " (SELECT COUNT(*) FROM #__sportsmanager_begegnung_historie WHERE #__sportsmanager_begegnung_historie.begegnung_id = #__sportsmanager_begegnung.begegnung_id) AS verlegen_aktionen"
. "\n FROM #__sportsmanager_begegnung" . "\n FROM #__sportsmanager_begegnung"
@@ -10928,6 +10959,32 @@ function adminSaveBegegnungSpielplan(): void
if (!$db->execute()) { if (!$db->execute()) {
abortWithError($db->stderr(true)); abortWithError($db->stderr(true));
} }
// Spielbericht auf Fehler (doppelte Einträge) überprüfen
$query = "DELETE t1"
. "\n FROM #__sportsmanager_teamspiel t1"
. "\n INNER JOIN #__sportsmanager_teamspiel t2"
. "\n ON t1.begegnung_id = t2.begegnung_id"
. "\n AND t1.teamspiel_nummer = t2.teamspiel_nummer"
. "\n AND t1.teamspiel_id < t2.teamspiel_id"
. "\n WHERE t1.begegnung_id = $id;";
$db->setQuery($query);
if (!$db->execute()) {
abortWithError($db->stderr(true));
}
// In Historie eintragen, wenn doppelte Einträge gelöscht wurden
$deleted = $db->getAffectedRows();
if ($deleted > 0) {
$query = "INSERT INTO #__sportsmanager_begegnung_historie"
. "\n (begegnung_historie_id, begegnung_id, aktion, team_id, user_id, eingetragen)"
. "\n VALUES (NULL, $id, 13, NULL, NULL, NOW());";
$db->setQuery($query);
if (!$db->execute()) {
abortWithError($db->stderr(true));
}
}
// Benachrichtigung schreiben // Benachrichtigung schreiben
$heim_team = null; $heim_team = null;
@@ -11016,6 +11073,70 @@ function adminSaveBegegnungSpielplan(): void
} }
} }
function adminDeleteMatchReportBegegnung($id,$veranstaltungId): void
{
$db = getDatabase();
$user_id = isExternalDatabase() ? 0 : (isJson() ? getUserID() : Factory::getContainer()->get(SiteApplication::class)->getIdentity()->id);
$query = "DELETE FROM #__sportsmanager_teamspiel WHERE begegnung_id = $id;";
$db->setQuery($query);
if (!$db->execute()) {
abortWithError($db->stderr(true));
}
$query = "UPDATE #__sportsmanager_begegnung"
. "\n SET heim_punkte = NULL,"
. "\n gast_punkte = NULL,"
. "\n heim_spielpunkte = NULL,"
. "\n gast_spielpunkte = NULL"
. "\n WHERE begegnung_id = $id";
$db->setQuery($query);
if (!$db->execute()) {
abortWithError($db->stderr(true));
}
$query = "DELETE FROM #__sportsmanager_unbestaetigtes_ergebnis WHERE begegnung_id = $id;";
$db->setQuery($query);
if (!$db->execute()) {
abortWithError($db->stderr(true));
}
$query = "DELETE FROM #__sportsmanager_begegnung_historie WHERE begegnung_id = $id AND aktion IN (6,7,8,9,10,13);";
$db->setQuery($query);
if (!$db->execute()) {
abortWithError($db->stderr(true));
}
spielerstatistikAktualisieren(0, $veranstaltungId);
teamstatistikAktualisieren($veranstaltungId);
// Elo-bezogene Auswertungen aktualisieren, falls für die Veranstaltung aktiviert
$query = "SELECT elo_wertung FROM #__sportsmanager_veranstaltung WHERE veranstaltung_id = " . $veranstaltungId . " LIMIT 1;";
$db->setQuery($query);
$eloWertung = (int) $db->loadResult();
if ($eloWertung === 1) {
// Startdatum der Veranstaltung für Elo-Berechnung ermitteln
$query = "SELECT erster_tag FROM #__sportsmanager_veranstaltung WHERE veranstaltung_id = " . $veranstaltungId . " LIMIT 1;";
$db->setQuery($query);
$aktualisieren_ab_datum = $db->loadResult();
// Funktionen mit korrekten Parametern aufrufen
wannGespieltAktualisieren();
eloAktualisieren($aktualisieren_ab_datum);
einstufungAktualisieren();
}
$query = "INSERT INTO #__sportsmanager_begegnung_historie"
. "\n (begegnung_historie_id,begegnung_id,aktion,user_id,eingetragen)"
. "\n VALUES (NULL,$id,12,$user_id,NOW());";
$db->setQuery($query);
if (!$db->execute()) {
abortWithError($db->stderr(true));
}
return;
}
#[NoReturn] function adminBegegnungSpielplanHeimtausch(): void #[NoReturn] function adminBegegnungSpielplanHeimtausch(): void
{ {
$db = getDatabase(); $db = getDatabase();
@@ -11122,6 +11243,24 @@ function adminSaveBegegnungSpielplan(): void
if (!$db->execute()) { if (!$db->execute()) {
die($db->stderr(true)); die($db->stderr(true));
} }
$encrypted_pin = $db->escape($jInput->get('pin', '', 'RAW'));
$pin = decrypt($encrypted_pin, "a9cZ" . $veranstaltungId . "oDS7" . $id . "2eA");
$query = "SELECT team_id FROM #__sportsmanager_team"
. "\n WHERE pin = " . $db->quote($pin) . " AND veranstaltung_id = $veranstaltungId;";
$team_id = loadResult($db, $query);
if (empty($user_id) OR !empty($team_id)) $user_id = "NULL";
if (empty($team_id)) $team_id = "NULL";
$query = "INSERT INTO #__sportsmanager_begegnung_historie"
. "\n (begegnung_historie_id,begegnung_id,aktion,team_id,user_id,eingetragen)"
. "\n VALUES (NULL,$id,11,$team_id,$user_id,NOW());";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
} }
redirectSportsManagerURL('&task=' . ($bestaetigen != 0 ? ($bestaetigen == 1 ? 'admin_begegnung_spielplan_edit_bestaetigen' : 'pineingabe') : 'admin_begegnung_spielplan_edit') . '&id=' . $id . '&veranstaltungid=' . $veranstaltungId . ($bestaetigen != 0 ? '_bestaetigen' : '') . '&veranstaltungid=' . $veranstaltungId . '&id=' . $id . '&erneut_oeffnen=1' . (!empty($encrypted_pin) ? ('&epin=' . $encrypted_pin) : "") . ($aus_uebersicht ? '&aus_uebersicht=1' : '')); redirectSportsManagerURL('&task=' . ($bestaetigen != 0 ? ($bestaetigen == 1 ? 'admin_begegnung_spielplan_edit_bestaetigen' : 'pineingabe') : 'admin_begegnung_spielplan_edit') . '&id=' . $id . '&veranstaltungid=' . $veranstaltungId . ($bestaetigen != 0 ? '_bestaetigen' : '') . '&veranstaltungid=' . $veranstaltungId . '&id=' . $id . '&erneut_oeffnen=1' . (!empty($encrypted_pin) ? ('&epin=' . $encrypted_pin) : "") . ($aus_uebersicht ? '&aus_uebersicht=1' : ''));
@@ -12678,6 +12817,12 @@ function adminBegegnungenPokalrundeAuslosenForm(): void
die($db->stderr(true)); die($db->stderr(true));
} }
$query = "DELETE FROM #__sportsmanager_ordnungsstrafen WHERE begegnung_id = $id;";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
$query = "DELETE FROM #__sportsmanager_teamspiel WHERE begegnung_id = $id;"; $query = "DELETE FROM #__sportsmanager_teamspiel WHERE begegnung_id = $id;";
$db->setQuery($query); $db->setQuery($query);
if (!$db->execute()) { if (!$db->execute()) {
@@ -6028,6 +6028,56 @@ function spielerstatistikAktualisieren($geaenderte_spielerstatistik_id = 0, $gea
} }
} }
function halloffameAktualisieren(): void
{
//Beim Löschen von Spieler bzw. Vereine werden die entsprechenden ids in Hall of Fame und Verbandsorgane gelöscht
$db = getDatabase();
// spieler1_id prüfen
$query = "UPDATE #__sportsmanager_mitglied_von_halloffame h"
. "\n LEFT JOIN #__sportsmanager_spieler s ON s.spieler_id = h.spieler1_id"
. "\n SET h.spieler1_id = NULL"
. "\n WHERE h.spieler1_id IS NOT NULL"
. "\n AND s.spieler_id IS NULL;";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
// spieler2_id prüfen
$query = "UPDATE #__sportsmanager_mitglied_von_halloffame h"
. "\n LEFT JOIN #__sportsmanager_spieler s ON s.spieler_id = h.spieler2_id"
. "\n SET h.spieler2_id = NULL"
. "\n WHERE h.spieler2_id IS NOT NULL"
. "\n AND s.spieler_id IS NULL;";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
// verein_id prüfen
$query = "UPDATE #__sportsmanager_mitglied_von_halloffame h"
. "\n LEFT JOIN #__sportsmanager_verein v ON v.verein_id = h.verein_id"
. "\n SET h.verein_id = NULL"
. "\n WHERE h.verein_id IS NOT NULL"
. "\n AND v.verein_id IS NULL;";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
// Verbandsorgan-Spieler prüfen
$query = "UPDATE #__sportsmanager_mitglied_von_verbandsorgan h"
. "\n LEFT JOIN #__sportsmanager_spieler s ON s.spieler_id = h.spieler_id"
. "\n SET h.spieler_id = NULL"
. "\n WHERE h.spieler_id IS NOT NULL"
. "\n AND s.spieler_id IS NULL;";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
}
function wannGespieltAktualisieren(): void function wannGespieltAktualisieren(): void
{ {
$db = getDatabase(); $db = getDatabase();
@@ -4023,6 +4023,7 @@ static function verbandsorgane($titel, $beschreibung, $rows, $organisation_zeige
if (count($rows) > 0) { if (count($rows) > 0) {
?> ?>
<div class="uk-overflow-auto">
<table style='border-collapse: collapse;' <table style='border-collapse: collapse;'
class="uk-table-hover uk-table-divider uk-table-middle dtfl-table-medium contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> class="uk-table-hover uk-table-divider uk-table-middle dtfl-table-medium contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>"> <tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>">
@@ -4061,6 +4062,7 @@ static function verbandsorgane($titel, $beschreibung, $rows, $organisation_zeige
} }
?> ?>
</table> </table>
</div>
<?php <?php
} }
@@ -4088,6 +4090,7 @@ static function verbandsorganeDetails($titel, $beschreibung, $verbandsorgan, $ro
<?php <?php
} }
echo "<div class='uk-overflow-auto'>";
echo "<H1>" . $verbandsorgan->verbandsorgan . "</H1>"; echo "<H1>" . $verbandsorgan->verbandsorgan . "</H1>";
echo $verbandsorgan->beschreibung; echo $verbandsorgan->beschreibung;
@@ -4136,6 +4139,7 @@ static function verbandsorganeDetails($titel, $beschreibung, $verbandsorgan, $ro
<?php <?php
} }
?> ?>
</div>
<span class="article_seperator<?php echo $params->get('pageclass_sfx'); ?>">&nbsp;</span> <span class="article_seperator<?php echo $params->get('pageclass_sfx'); ?>">&nbsp;</span>
<?php <?php
} }
@@ -4161,6 +4165,7 @@ static function halloffame($titel, $beschreibung, $rows): void
if (count($rows) > 0) { if (count($rows) > 0) {
?> ?>
<div class="uk-overflow-auto">
<table style='border-collapse: collapse;' <table style='border-collapse: collapse;'
class="uk-table-hover uk-table-divider uk-table-middle dtfl-table-medium contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> class="uk-table-hover uk-table-divider uk-table-middle dtfl-table-medium contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>"> <tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>">
@@ -4187,6 +4192,7 @@ static function halloffame($titel, $beschreibung, $rows): void
} }
?> ?>
</table> </table>
</div>
<?php <?php
} }
?> ?>
@@ -4217,7 +4223,7 @@ static function halloffameDetails($titel, $beschreibung, $rows, $halloffame): vo
if ($rows != null) { if ($rows != null) {
?> ?>
<div class="uk-overflow-auto">
<table style='border-collapse: collapse;' <table style='border-collapse: collapse;'
class="uk-table-hover uk-table-divider uk-table-middle dtfl-table-medium contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> class="uk-table-hover uk-table-divider uk-table-middle dtfl-table-medium contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
@@ -4320,6 +4326,7 @@ static function halloffameDetails($titel, $beschreibung, $rows, $halloffame): vo
<?php <?php
} }
?> ?>
</div>
<span class="article_seperator<?php echo $params->get('pageclass_sfx'); ?>">&nbsp;</span> <span class="article_seperator<?php echo $params->get('pageclass_sfx'); ?>">&nbsp;</span>
<?php <?php
} }
@@ -7087,6 +7087,7 @@ class HTML_sportsmanager_admin
if (count($rows) > 0) { if (count($rows) > 0) {
?> ?>
<div class="uk-overflow-auto">
<table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>" style='width: 100%;'> <table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>" style='width: 100%;'>
<tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>"> <tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>">
<th nowrap><strong>ID</strong></th> <th nowrap><strong>ID</strong></th>
@@ -7137,6 +7138,7 @@ class HTML_sportsmanager_admin
} }
?> ?>
</table> </table>
</div>
<?php <?php
} }
} }
@@ -7365,7 +7367,7 @@ class HTML_sportsmanager_admin
</tr> </tr>
</table> </table>
</form> </form>
<div class="uk-overflow-auto"> <div class="uk-overflow-auto">
<table class="uk-table-shrink contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>" style='width: 100%;'> <table class="uk-table-shrink contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>" style='width: 100%;'>
<tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>"> <tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>">
<th nowrap style='text-align: center; width: 60px;'><STRONG>ID</STRONG></th> <th nowrap style='text-align: center; width: 60px;'><STRONG>ID</STRONG></th>
@@ -7432,7 +7434,8 @@ class HTML_sportsmanager_admin
} }
} }
?> ?>
</table></div> </table>
</div>
<span class="article_seperator<?php echo $params->get('pageclass_sfx'); ?>">&nbsp;</span> <span class="article_seperator<?php echo $params->get('pageclass_sfx'); ?>">&nbsp;</span>
<?php <?php
} }
@@ -7552,7 +7555,7 @@ class HTML_sportsmanager_admin
if (count($rows) > 0) { if (count($rows) > 0) {
?> ?>
<div class="uk-overflow-auto">
<table style='width: 400px;' class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> <table style='width: 400px;' class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>"> <tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>">
<th style='text-align: left; width: 250px;' nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_ASSOCIATION_BODIES'); ?></strong></th> <th style='text-align: left; width: 250px;' nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_ASSOCIATION_BODIES'); ?></strong></th>
@@ -7585,7 +7588,7 @@ class HTML_sportsmanager_admin
} }
?> ?>
</table> </table>
</div>
<form action="<?php echo SportsManagerURL(); ?>" method="post" name="adminForm" id="adminForm"> <form action="<?php echo SportsManagerURL(); ?>" method="post" name="adminForm" id="adminForm">
<input type="submit" value="<?php echo Text::_('COM_SPORTSMANAGER_EXPORT'); ?>" class="button" <input type="submit" value="<?php echo Text::_('COM_SPORTSMANAGER_EXPORT'); ?>" class="button"
onclick="const t = this.form.task; onclick="const t = this.form.task;
@@ -7732,6 +7735,7 @@ static function adminVerbandsorganMitglieder($rows,$verbandsorgan): void
if (count($rows) > 0) { if (count($rows) > 0) {
?> ?>
<div class="uk-overflow-auto">
<table style='width: 800px;' class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> <table style='width: 800px;' class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>"> <tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>">
<th style='text-align: left; width: 240px;' nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_MEMBER'); ?></strong></th> <th style='text-align: left; width: 240px;' nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_MEMBER'); ?></strong></th>
@@ -7770,6 +7774,7 @@ static function adminVerbandsorganMitglieder($rows,$verbandsorgan): void
} }
?> ?>
</table> </table>
</div>
<?php <?php
} }
} }
@@ -7951,6 +7956,7 @@ static function adminVerbandsorganMitglieder($rows,$verbandsorgan): void
if (count($rows) > 0) { if (count($rows) > 0) {
?> ?>
<div class="uk-overflow-auto">
<table style='border-collapse: collapse;' <table style='border-collapse: collapse;'
class="uk-table-hover uk-table-divider uk-table-middle dtfl-table-medium contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> class="uk-table-hover uk-table-divider uk-table-middle dtfl-table-medium contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>"> <tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>">
@@ -7985,6 +7991,7 @@ static function adminVerbandsorganMitglieder($rows,$verbandsorgan): void
} }
?> ?>
</table> </table>
</div>
<?php <?php
} }
} }
@@ -8123,7 +8130,7 @@ static function adminVerbandsorganMitglieder($rows,$verbandsorgan): void
<?php <?php
if ($rows != null) { if ($rows != null) {
?> ?>
<div class="uk-overflow-auto">
<table style='border-collapse: collapse;' <table style='border-collapse: collapse;'
class="uk-table-hover uk-table-divider uk-table-middle dtfl-table-medium contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> class="uk-table-hover uk-table-divider uk-table-middle dtfl-table-medium contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
@@ -8253,6 +8260,7 @@ static function adminVerbandsorganMitglieder($rows,$verbandsorgan): void
} }
?> ?>
</table> </table>
</div>
<?php <?php
} }
} }
@@ -8489,6 +8497,7 @@ static function adminVerbandsorganMitglieder($rows,$verbandsorgan): void
if (count($rows) > 0) { if (count($rows) > 0) {
?> ?>
<div class="uk-overflow-auto">
<table style='width: 100%;' class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> <table style='width: 100%;' class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>"> <tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>">
<th style='text-align: left;' nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_RULEBOOK'); ?></strong></th> <th style='text-align: left;' nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_RULEBOOK'); ?></strong></th>
@@ -8523,6 +8532,7 @@ static function adminVerbandsorganMitglieder($rows,$verbandsorgan): void
} }
?> ?>
</table> </table>
</div>
<?php <?php
} }
} }
@@ -11093,7 +11103,9 @@ static function adminVerbandsorganMitglieder($rows,$verbandsorgan): void
?> ?>
</td> </td>
<td nowrap><small><a <td nowrap><small><a
href="<?php echo SportsManagerURL('&task=admin_begegnung_heimtausch&veranstaltungid=' . $veranstaltung->veranstaltung_id . '&id=' . $row->begegnung_id); ?>"><?php echo Text::_('COM_SPORTSMANAGER_HOME_EXCHANGE'); ?></a></small> href="<?php echo SportsManagerURL('&task=admin_begegnung_heimtausch&veranstaltungid=' . $veranstaltung->veranstaltung_id . '&id=' . $row->begegnung_id); ?>"
onclick="return confirm('<?php echo Text::_('COM_SPORTSMANAGER_REALLY_SWAP_MATCH'); ?>');">
<?php echo Text::_('COM_SPORTSMANAGER_HOME_EXCHANGE'); ?></a></small>
</td> </td>
<td nowrap><small><a <td nowrap><small><a
href="<?php echo SportsManagerURL('&task=admin_begegnung_remove&veranstaltungid=' . $veranstaltung->veranstaltung_id . '&id=' . $row->begegnung_id); ?>" href="<?php echo SportsManagerURL('&task=admin_begegnung_remove&veranstaltungid=' . $veranstaltung->veranstaltung_id . '&id=' . $row->begegnung_id); ?>"
@@ -11462,6 +11474,9 @@ static function adminVerbandsorganMitglieder($rows,$verbandsorgan): void
8 => Text::_('COM_SPORTSMANAGER_MODIFIED_RESULTS'), 8 => Text::_('COM_SPORTSMANAGER_MODIFIED_RESULTS'),
9 => Text::_('COM_SPORTSMANAGER_LIVE_RESULTS'), 9 => Text::_('COM_SPORTSMANAGER_LIVE_RESULTS'),
10 => Text::_('COM_SPORTSMANAGER_REJECTED_SHIFT'), 10 => Text::_('COM_SPORTSMANAGER_REJECTED_SHIFT'),
11 => Text::_('COM_SPORTSMANAGER_SWAP_MATCH'),
12 => Text::_('COM_SPORTSMANAGER_MATCH_REPORT_DELETED'),
13 => Text::_('COM_SPORTSMANAGER_MATCH_REPORT_CORRECTED'),
default => Text::_('COM_SPORTSMANAGER_PROPOSED_APPOINTMENT'), default => Text::_('COM_SPORTSMANAGER_PROPOSED_APPOINTMENT'),
}; };
?> ?>
@@ -11562,6 +11577,7 @@ static function adminVerbandsorganMitglieder($rows,$verbandsorgan): void
?> ?>
<input type="submit" name="heimrecht_tauschen" <input type="submit" name="heimrecht_tauschen"
value="<?php echo Text::_('COM_SPORTSMANAGER_ADVANTAGE_HOME'); ?>" value="<?php echo Text::_('COM_SPORTSMANAGER_ADVANTAGE_HOME'); ?>"
onclick="return confirm('<?php echo Text::_('COM_SPORTSMANAGER_REALLY_SWAP_MATCH'); ?>');"
class="button"/> class="button"/>
<?php <?php
} }
@@ -11995,12 +12011,13 @@ static function adminVerbandsorganMitglieder($rows,$verbandsorgan): void
$js_pruefung .= "if (!spieler_eingetragen()) { if (!confirm('" . ($spielernamen == 1 ? Text::_('COM_SPORTSMANAGER_NO_PLAYERS_FOR_DOUBLES') : Text::_('COM_SPORTSMANAGER_NOT_ALL_PLAYERS_FROM_REGISTERED')) . " " . Text::_('COM_SPORTSMANAGER_WANT_TO_SAVE_RESULT') . "')) return false; } "; $js_pruefung .= "if (!spieler_eingetragen()) { if (!confirm('" . ($spielernamen == 1 ? Text::_('COM_SPORTSMANAGER_NO_PLAYERS_FOR_DOUBLES') : Text::_('COM_SPORTSMANAGER_NOT_ALL_PLAYERS_FROM_REGISTERED')) . " " . Text::_('COM_SPORTSMANAGER_WANT_TO_SAVE_RESULT') . "')) return false; } ";
?> ?>
<input type="submit" name="save" value="<?php echo Text::_('COM_SPORTSMANAGER_SAVE'); ?>" <input type="submit" name="save" value="<?php echo Text::_('COM_SPORTSMANAGER_SAVE'); ?>"
class="button"<?php if (!empty($js_pruefung)) echo " onclick=\"" . $js_pruefung . "return true;\""; ?> /> class="button"<?php if (!empty($js_pruefung)) echo " onclick=\"" . $js_pruefung . "return true;\""; ?> />
<input type="submit" name="loeschen" value="<?php echo Text::_('COM_SPORTSMANAGER_DELETE'); ?>"
class="button" onclick="return confirm('<?php echo Text::_('COM_SPORTSMANAGER_REALLY_DELETE_MATCH_REPORT'); ?>');" />
<?php <?php
} }
?> ?>
<input type="submit" name="cancel" value="<?php echo Text::_('COM_SPORTSMANAGER_CANCEL'); ?>" <input type="submit" name="cancel" value="<?php echo Text::_('COM_SPORTSMANAGER_CANCEL'); ?>" class="button"/>
class="button"/>
<input type="hidden" name="task" value="admin_begegnung_spielplan_save"/> <input type="hidden" name="task" value="admin_begegnung_spielplan_save"/>
<input type="hidden" name="id" value="<?php echo($begegnung != null ? $begegnung->begegnung_id : "0"); ?>"/> <input type="hidden" name="id" value="<?php echo($begegnung != null ? $begegnung->begegnung_id : "0"); ?>"/>
<input type="hidden" name="veranstaltungid" value="<?php echo $veranstaltung->veranstaltung_id; ?>"/> <input type="hidden" name="veranstaltungid" value="<?php echo $veranstaltung->veranstaltung_id; ?>"/>
@@ -12020,7 +12037,6 @@ static function adminVerbandsorganMitglieder($rows,$verbandsorgan): void
static function adminBegegnungenGenerieren($veranstaltung, $rows): void static function adminBegegnungenGenerieren($veranstaltung, $rows): void
{ {
//geändert am 07.03.2025 von Jürgen Meyer
global $params; global $params;
$anzahlteams = count($rows); $anzahlteams = count($rows);
if ($anzahlteams % 2) if ($anzahlteams % 2)
@@ -1092,4 +1092,10 @@ COM_SPORTSMANAGER_MATCH_TYPE="Spielform"
COM_SPORTSMANAGER_REALLY_REMOVE_HALL_OF_FAME_YEAR="Willst Du wirklich dieses Hall of Fame Jahr l&ouml;schen?" COM_SPORTSMANAGER_REALLY_REMOVE_HALL_OF_FAME_YEAR="Willst Du wirklich dieses Hall of Fame Jahr l&ouml;schen?"
COM_SPORTSMANAGER_YEARS="Jahre" COM_SPORTSMANAGER_YEARS="Jahre"
COM_SPORTSMANAGER_ADD_HALL_OF_FAME_YEAR="Hall of Fame Jahr hinzuf&uuml;gen" COM_SPORTSMANAGER_ADD_HALL_OF_FAME_YEAR="Hall of Fame Jahr hinzuf&uuml;gen"
COM_SPORTSMANAGER_NO_ENTRY="kein Eintrag" COM_SPORTSMANAGER_NO_ENTRY="kein Eintrag"
COM_SPORTSMANAGER_REALLY_SWAP_MATCH="Willst Du wirklich das Heimrecht tauschen?"
COM_SPORTSMANAGER_SWAP_MATCH="Heimrechttausch"
COM_SPORTSMANAGER_REALLY_DELETE_MATCH_REPORT="Der Spielbericht wird zusammen mit allen historischen Eintr&auml;gen gel&ouml;scht. Willst du den Spielbericht wirklich l&ouml;schen?"
COM_SPORTSMANAGER_MATCH_REPORT_DELETED="Spielbericht gel&ouml;scht"
COM_SPORTSMANAGER_MATCH_REPORT_WAS_DELETED="Der Spielbericht wurde erfolgreich gel&ouml;scht!"
COM_SPORTSMANAGER_MATCH_REPORT_CORRECTED="Spielberichtskorrektur"
@@ -1092,4 +1092,10 @@ COM_SPORTSMANAGER_MATCH_TYPE="Game Type"
COM_SPORTSMANAGER_REALLY_REMOVE_HALL_OF_FAME_YEAR="Are you sure you want to delete this Hall of Fame year?" COM_SPORTSMANAGER_REALLY_REMOVE_HALL_OF_FAME_YEAR="Are you sure you want to delete this Hall of Fame year?"
COM_SPORTSMANAGER_YEARS="Years" COM_SPORTSMANAGER_YEARS="Years"
COM_SPORTSMANAGER_ADD_HALL_OF_FAME_YEAR="Add Hall of Fame Year" COM_SPORTSMANAGER_ADD_HALL_OF_FAME_YEAR="Add Hall of Fame Year"
COM_SPORTSMANAGER_NO_ENTRY="no entry" COM_SPORTSMANAGER_NO_ENTRY="no entry"
COM_SPORTSMANAGER_REALLY_SWAP_MATCH="Do you really want to swap the home advantage?"
COM_SPORTSMANAGER_SWAP_MATCH="Swap home advantage"
COM_SPORTSMANAGER_REALLY_DELETE_MATCH_REPORT="The match report and all its history will be deleted. Are you sure you want to delete the match report?"
COM_SPORTSMANAGER_MATCH_REPORT_DELETED="Match report deleted"
COM_SPORTSMANAGER_MATCH_REPORT_WAS_DELETED="The match report has been successfully deleted!"
COM_SPORTSMANAGER_MATCH_REPORT_CORRECTED="Match report corrected"