Compare commits

...

116 Commits

Author SHA1 Message Date
MarvinF 89bbba9c1c Merge pull request #254 from Deutscher-Tischfussballbund/sportsmanager2-stage
stage to prod merge
2026-02-03 19:17:18 +01:00
MarvinF aa07d51cd3 Merge branch 'sportsmanager2-prod' into sportsmanager2-stage 2026-02-03 19:09:48 +01:00
MarvinF 5ca5015eb4 Merge pull request #253 from Deutscher-Tischfussballbund/sportsmanager2-dev
dev to stage merge
2026-02-03 19:09:10 +01:00
MarvinF a0ef2bda54 Merge branch 'sportsmanager2-stage' into sportsmanager2-dev 2026-02-03 19:08:43 +01:00
MarvinF 3300a66c19 Merge pull request #249 from Deutscher-Tischfussballbund/sportsmanager2-issue244
Sportsmanager2 issue244
2026-02-03 19:02:44 +01:00
MarvinF cd60c9f42a Merge branch 'sportsmanager2-dev' into sportsmanager2-issue244 2026-02-03 19:02:23 +01:00
MarvinF 692fd0a676 Merge pull request #248 from Deutscher-Tischfussballbund/sportsmanager2-issue247
remove delimiter on csv-export
2026-02-02 18:56:41 +01:00
MarvinF b8e21aa8ee Merge branch 'sportsmanager2-dev' into sportsmanager2-issue247 2026-02-02 18:56:04 +01:00
MarvinF 1d66905488 Merge pull request #251 from Deutscher-Tischfussballbund/Sportsmanager2-issue250
fix error "spiel_nr on null" in team tournament encounter
2026-02-02 17:00:30 +01:00
Jürgen Meyer 991d0501df Tipp des Copiloten benutzt :) 2026-01-31 19:04:08 +01:00
Jürgen Meyer c5ffbed4da Fehler bei Begegnung hinzufügen gefixt. 2026-01-31 18:49:25 +01:00
Jürgen Meyer 33c94ae907 Rechtschreibkorrketur 2026-01-28 18:04:26 +01:00
jmeyer26 8890ca35d2 Update src/structure/components/com_sportsmanager/views/sportsmanager/view.html.php
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-28 17:59:23 +01:00
jmeyer26 50d332cd45 Update src/structure/language/en-GB/en-GB.com_sportsmanager.ini
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-28 17:58:09 +01:00
jmeyer26 90cf2cc4ca Update src/structure/language/de-DE/de-DE.com_sportsmanager.ini
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-28 17:01:07 +01:00
jmeyer26 ea0515e827 Update src/structure/language/en-GB/en-GB.com_sportsmanager.ini
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-28 17:00:52 +01:00
Jürgen Meyer a868d56450 Spielerstatus im Verein in Spielerdetails 2026-01-28 16:51:52 +01:00
Jürgen Meyer eaaa75d584 Checkbox Lizenznummer erhalten entfernt. 2026-01-28 12:10:42 +01:00
Jürgen Meyer 1479fc7e20 Importfunktion angepasst 2026-01-27 18:27:28 +01:00
Jürgen Meyer 70563bc8e4 Formulare für Spielerimport angepasst. 2026-01-27 14:57:43 +01:00
Jürgen Meyer 218436c065 CSV Export Funktion mittels KI komplett neu erstellt. 2026-01-27 13:02:51 +01:00
Jürgen Meyer c21d20e532 Bei csv-Export wird Semikolon im Text durch Komma ersetzt (bei Export von Ligabetrieb, Ordnungsstrafen und Spielverlegungen) 2026-01-27 07:00:54 +01:00
MarvinF 8b22eb886d Merge pull request #246 from Deutscher-Tischfussballbund/sportsmanager2-stage
stage to prod
2026-01-26 17:59:27 +01:00
MarvinF ae05c42209 Merge branch 'sportsmanager2-prod' into sportsmanager2-stage 2026-01-26 17:59:03 +01:00
MarvinF 3bc1324b4b Merge pull request #245 from Deutscher-Tischfussballbund/sportsmanager2-dev
dev to stage
2026-01-26 17:57:36 +01:00
MarvinF 23ceb2e272 Merge branch 'sportsmanager2-stage' into sportsmanager2-dev 2026-01-26 17:56:42 +01:00
MarvinF 5b26295ebf Merge pull request #243 from Deutscher-Tischfussballbund/sportsmanager2-issue242
Sportsmanager2 issue242
2026-01-26 17:51:55 +01:00
Jürgen Meyer 9d3cd6b959 Telefonnummer Spielort in Team Details 2026-01-26 11:28:21 +01:00
Jürgen Meyer 6b7c5e7a3b Export Teamdaten implementiert. 2026-01-22 14:45:37 +01:00
Jürgen Meyer ab6f776b96 Tabellen Spielorte, Teams um die Felder telefon, EMail, Ruhetage und Trainingstage erweitert. 2026-01-22 11:31:27 +01:00
jmeyer26 8fed3c217f Merge pull request #241 from Deutscher-Tischfussballbund/sportsmanager2-issue240
Sportsmanager2 issue240
2026-01-22 09:18:25 +01:00
jmeyer26 633ec1f1cb Merge pull request #238 from Deutscher-Tischfussballbund/sportsmanager2-issue234
Sportsmanager2 issue234
2026-01-22 09:17:18 +01:00
Jürgen Meyer 41e229340d Formulare optimiert 2026-01-14 18:22:02 +01:00
Jürgen Meyer 379427d4c4 json Import implementiert. csv-Import um Lizenznummer erweitert. 2026-01-13 19:42:08 +01:00
Jürgen Meyer a2808b7db0 Erst mal ein bisschen aufgeräumt 2026-01-13 11:17:32 +01:00
Jürgen Meyer c3cec6c93c SQL-Anweisungen übersichtlicher gestaltet. 2026-01-06 16:53:19 +01:00
Jürgen Meyer 9913279519 Benutzerrechte für OS und SV angepasst 2026-01-06 13:10:40 +01:00
Jürgen Meyer 0c78ed8b63 Fehler bei Insert Antragsteller korrigiert 2026-01-04 13:29:29 +01:00
Jürgen Meyer 4a448cb61d Letzter Feinschliff 2026-01-04 12:14:21 +01:00
Jürgen Meyer 825ff04a89 script.php angepasst und noch ein paar kleine Korrekturen 2026-01-03 17:45:35 +01:00
Jürgen Meyer 8b7ca05fc1 Mailen von Spielverlegung und Export von Spielverlegungen 2026-01-02 23:12:45 +01:00
Jürgen Meyer 76f0ef5f55 Anlegen und Löschen von Spielverlegungen 2026-01-01 18:31:09 +01:00
Jürgen Meyer f76f1185f5 Abfragen optimiert 2025-12-30 18:53:44 +01:00
Jürgen Meyer 7253426b51 Menüstruktur für admin Spielverlegungen erstellt 2025-12-29 17:45:21 +01:00
Jürgen Meyer 4686f5d8db Liste Spielverlegungen in Frontend 2025-12-29 12:44:50 +01:00
Jürgen Meyer db80f584cd Verschiebereln erweitert. Kategoriefilter optimiert. 2025-12-25 13:20:54 +01:00
MarvinF 275693ecb3 Merge pull request #232 from Deutscher-Tischfussballbund/sportsmanager-issue069
implemented disciplinary penalties for clubs
2025-12-23 13:25:33 +01:00
MarvinF fb3c088835 Merge branch 'sportsmanager2-dev' into sportsmanager-issue069 2025-12-23 13:23:00 +01:00
jmeyer26 ddca0066bf Update src/structure/components/com_sportsmanager/admin.php
Co-authored-by: MarvinF <B3r@users.noreply.github.com>
2025-12-23 13:00:55 +01:00
MarvinF bc56e30682 Merge pull request #237 from Deutscher-Tischfussballbund/sportsmanager-issue236
Wrong winner when doing draw for cup
2025-12-23 12:39:19 +01:00
Jürgen Meyer 2fe9acb01c Änderungen gecheckt, Absender in joomlamail hinzugefügt. 2025-12-22 10:16:09 +01:00
Jürgen Meyer de3705ca65 Änderungen nach Kommentaren 2025-12-22 09:19:19 +01:00
Marvin Flock 947a150b06 fix: apply minor fixes to deprecated config and redundant variable assignment 2025-12-22 00:09:50 +01:00
Jürgen Meyer c8199abee1 Bei Pokalauslosung werden jetzt die richtigen Sieger erkannt 2025-12-21 18:35:44 +01:00
Jürgen Meyer 6c1a6aa0de Änderungen nach Kommentar vorgenommen 2025-12-21 05:21:36 +01:00
Marvin Flock 626b9c503a Merge branch 'sportsmanager2-dev' into sportsmanager-issue069
# Conflicts:
#	src/structure/components/com_sportsmanager/database/update.php
2025-12-20 17:21:54 +01:00
Jürgen Meyer 964ab1ca8b E-Mail über joomla. Status Überarbeitung. 2025-12-20 10:03:05 +01:00
Jürgen Meyer 783cffaf2b Kommemtar entfernt 2025-12-12 15:48:20 +01:00
Jürgen Meyer 12cb9a0e67 Fehler bei Export korrigiert. 2025-12-12 15:29:20 +01:00
Jürgen Meyer 49c8037dbf Export Ordnungsstrafen. Unnötige Tags entfernt. 2025-12-12 12:11:24 +01:00
Jürgen Meyer e7dbfa6402 Ordnungsstrafen implementiert 2025-12-11 17:52:36 +01:00
MarvinF b21e11be59 Merge pull request #231 from Deutscher-Tischfussballbund/sportsmanager2-stage
stage to prod
2025-12-09 19:11:57 +01:00
MarvinF f119316561 Merge branch 'sportsmanager2-prod' into sportsmanager2-stage 2025-12-09 19:11:36 +01:00
MarvinF 06070a1d47 Merge pull request #230 from Deutscher-Tischfussballbund/sportsmanager2-dev
dev to stage merge
2025-12-09 19:11:01 +01:00
MarvinF 5bf3fa3501 Merge branch 'sportsmanager2-stage' into sportsmanager2-dev 2025-12-09 19:10:17 +01:00
MarvinF a2cdc68578 Merge pull request #229 from Deutscher-Tischfussballbund/sportsmanager-issue225
administrators can't see player profiles of inactive players
2025-12-09 19:09:12 +01:00
MarvinF b34aa63872 Merge pull request #228 from Deutscher-Tischfussballbund/sportsmanager-issue227
Saving a tournament will overwrite the dates of its disciplines
2025-12-09 19:07:57 +01:00
Jürgen Meyer ddb7e3a1bd Korreketur datenbank-version 2025-12-09 05:46:28 +01:00
Jürgen Meyer e3fb99000c Korrektur Fehler beim Speichern Datum Disziplin 2025-12-09 05:43:23 +01:00
Jürgen Meyer 9cd84108e4 Spielerstatistik in adminSpieler um Vereinlose Spieler erweitert 2025-12-04 15:19:00 +01:00
Jürgen Meyer 3b721e3c82 Formular Spieler verschönert. 2025-12-04 14:08:14 +01:00
Jürgen Meyer fec866fa5d Profil von inaktiven Spieler kann mit bestimmten Rechten wieder angezeigt werden. 2025-12-04 13:31:33 +01:00
Marvin Flock d17280edb1 chore!: remove malicious fs package 2025-11-27 10:12:47 +01:00
MarvinF 287dcb0074 Merge pull request #224 from Deutscher-Tischfussballbund/sportsmanager2-stage
stage to prod
2025-11-17 17:16:48 +01:00
MarvinF 2e596dfcaa Merge branch 'sportsmanager2-prod' into sportsmanager2-stage 2025-11-17 17:16:28 +01:00
MarvinF 6c96125da4 Merge pull request #223 from Deutscher-Tischfussballbund/sportsmanager2-dev
dev to stage merge
2025-11-17 17:15:39 +01:00
MarvinF 01c7e5bb63 Merge branch 'sportsmanager2-stage' into sportsmanager2-dev 2025-11-17 17:15:00 +01:00
MarvinF 0116fd0860 Merge pull request #222 from Deutscher-Tischfussballbund/sportsmanager2-v230
Small design fixes
2025-11-16 20:17:39 +01:00
Jürgen Meyer ec61daa5c7 Kleine kosmetsiche Korrekturen 2025-11-15 11:28:53 +01:00
MarvinF e692edcb99 Merge pull request #220 from Deutscher-Tischfussballbund/sportsmanager2-issue217
Sportsmanager2 issue217
2025-11-14 11:25:37 +01:00
Marvin Flock c1196c9fd9 Merge branch 'sportsmanager2-dev' into sportsmanager2-issue217
# Conflicts:
#	src/structure/components/com_sportsmanager/database/update.php
2025-11-14 11:25:01 +01:00
MarvinF 4cc403536e Merge pull request #219 from Deutscher-Tischfussballbund/sportsmanager2-issue192
Playoffs optimization: KO games with game number and matchday title
2025-11-14 11:20:19 +01:00
Jürgen Meyer 1032af51f5 Kleine Korrektur 2025-11-14 07:28:36 +01:00
Jürgen Meyer 33d748303d Bei eintägiger Veranstaltung wird Datum in Formular Disziplin versteckt 2025-11-14 07:18:06 +01:00
Jürgen Meyer 331d4cfd85 Kleine Korrektur 2025-11-14 06:38:07 +01:00
Jürgen Meyer 6b1aa25c1b Comments in Review abgearbeitet 2025-11-14 06:33:11 +01:00
MarvinF 6b9f81f1c7 Merge pull request #221 from Deutscher-Tischfussballbund/sportsmanager2-issue218
MonsterDYP imports throw error
2025-11-13 21:52:06 +01:00
Jürgen Meyer e498981bc4 Datumsabgleich zwischen Turnier und Turnierdisziplin optimiert. 2025-11-13 17:13:43 +01:00
Jürgen Meyer 54d73a61e0 Hilfsausgabe gelöscht 2025-11-13 10:55:15 +01:00
Jürgen Meyer bd491add2e Unterdrückung der Speicherung von Turnierspielen bei Monstr-DYP 2025-11-13 10:51:11 +01:00
Jürgen Meyer 30c8ba9bfa Erweiterter Export für STFV 2025-11-12 11:56:35 +01:00
Jürgen Meyer 555f1de1b5 Verbandskürzel zu Einstellungen hinzugefügt 2025-11-12 11:17:21 +01:00
Jürgen Meyer a823e029d0 Live-Ticker angepasst 2025-11-10 16:32:19 +01:00
Jürgen Meyer 5627282a53 Vorbelegung Spielnummer entfernt. 2025-11-10 15:39:11 +01:00
Jürgen Meyer d73d081780 Ansicht Begegnungen im Frontend überarbeitet 2025-11-05 16:44:32 +01:00
Jürgen Meyer e3bd06257d Kleinen Programmierfehler beseitigt. 2025-11-05 12:43:32 +01:00
Jürgen Meyer 2a87c93c17 Anischt Begegnungen im admin-Bereich überarbeitet 2025-11-05 12:36:29 +01:00
Jürgen Meyer 5fafcace6b Überarbeitung Teamsport Spieltag erzeugen 2025-11-04 21:30:58 +01:00
MarvinF 12fd3a3ff0 Merge pull request #215 from Deutscher-Tischfussballbund/sportsmanager2-issue214
Add background color on hover for tournament trees
2025-11-04 18:47:30 +01:00
Jürgen Meyer 885d6a3191 Überarbeitung Begegnung hinzufügen bzw. editieren 2025-11-04 18:39:08 +01:00
MarvinF c50833ebe4 Merge pull request #216 from Deutscher-Tischfussballbund/sportsmanager2-issue213
Anzahl Kategorein auf 100 erhöht.
2025-11-04 00:05:18 +01:00
Jürgen Meyer 8242bd09cc Anzahl Kategorien Spielerstatistiken auf 100 erhöht 2025-11-03 15:32:14 +01:00
Jürgen Meyer 3886cc88d3 Anzahl Sortierreihenfolge Team Veranstaltungen auf 100 gesetzt. 2025-11-03 12:25:34 +01:00
Jürgen Meyer 96eff9f189 Anzahl Kategorein auf 100 erhöht. 2025-11-03 12:18:31 +01:00
Jürgen Meyer 1c2a0abcc2 Hintergrundfarbe bei Mouseover in Turnierbaum 2025-11-03 11:42:34 +01:00
MarvinF 24f4195403 Merge pull request #212 from Deutscher-Tischfussballbund/sportsmanager2-stage
stage to prod
2025-10-14 20:25:23 +02:00
MarvinF c1b7cb1e8c Merge pull request #211 from Deutscher-Tischfussballbund/sportsmanager2-dev
dev to stage merge
2025-10-14 20:23:35 +02:00
MarvinF 878cacd8cd Merge pull request #210 from Deutscher-Tischfussballbund/sportsmanager2-issue207
Sportsmanager2 issue207
2025-10-13 15:51:55 +02:00
MarvinF 5f830602ef Merge pull request #209 from Deutscher-Tischfussballbund/sportsmanager2-issue208
Vereinszuordnung Spieler korrigiert.
2025-10-12 23:31:46 +02:00
Jürgen Meyer eef105895b Spieleliste in Verein Details auskommentiert 2025-10-10 11:56:01 +02:00
Jürgen Meyer c0bdbb4bde Fehlerhaften Link Sortierung Vereine korrigiert. 2025-10-10 10:36:24 +02:00
Jürgen Meyer d05f3c5d7f Vereinszuordnung Spieler korrigiert. 2025-10-09 13:14:13 +02:00
MarvinF 0c334d897d Merge pull request #204 from Deutscher-Tischfussballbund/sportsmanager2-stage
downward merge stage to dev
2025-10-06 23:18:12 +02:00
MarvinF 79efed156b Merge pull request #203 from Deutscher-Tischfussballbund/sportsmanager2-prod
downward merge prod to stage
2025-10-06 23:17:24 +02:00
MarvinF 7984ea73aa Merge pull request #202 from Deutscher-Tischfussballbund/sportsmanager2-issue201
Zeileneinrückung in view.html.php korrigiert
2025-09-28 03:31:42 +02:00
Jürgen Meyer 7d07aee916 Zeileneinrückung in view.html.php korrigiert 2025-09-27 12:19:59 +02:00
15 changed files with 16284 additions and 10671 deletions
+3537 -1913
View File
File diff suppressed because it is too large Load Diff
-1
View File
@@ -122,7 +122,6 @@
"browser-sync": "^2.26.12", "browser-sync": "^2.26.12",
"core-js": "^3.6.5", "core-js": "^3.6.5",
"cross-env": "^7.0.2", "cross-env": "^7.0.2",
"fs": "0.0.1-security",
"gulp": "^4.0.2", "gulp": "^4.0.2",
"gulp-changed": "^4.0.2", "gulp-changed": "^4.0.2",
"gulp-clean": "^0.4.0", "gulp-clean": "^0.4.0",
@@ -21,12 +21,13 @@ COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_TEAMS_JOINT="Mannschaften in gem
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_CLUBS="Vereine" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_CLUBS="Vereine"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_VENUES="Spielorte" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_VENUES="Spielorte"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_APPOINTMENTS="Termine" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_APPOINTMENTS="Termine"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_MATCH_RESCHEDULING="Spielverlegungen"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_TITLE="Titel" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_TITLE="Titel"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_TITLE_DESC="Titel, der im Fenster oben angezeigt wird" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_TITLE_DESC="Titel, der im Fenster oben angezeigt wird"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_DESCRIPTION="Beschreibung" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_DESCRIPTION="Beschreibung"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_DESCRIPTION_DESC="Beschreibung, die unterhalb des Titels angezeigt wird (WICHTIG: Werden HTML-Tags verwendet, müssen auch Umlaute in HTML-Code angeben werden)" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_DESCRIPTION_DESC="Beschreibung, die unterhalb des Titels angezeigt wird (WICHTIG: Werden HTML-Tags verwendet, müssen auch Umlaute in HTML-Code angeben werden)"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_CATEGORIES="Kategorien" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_CATEGORIES="Kategorien"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_CATEGORIES_DESC="Eine optionale Auswahl an durch Kommata getrennte Kategorienummern" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_CATEGORIES_DESC="Eine optionale Auswahl von Kategorienummern durch Kommata oder Spiegelstrich getrennt"
COM_SPORTSMANAGER_LAYOUT_ELO_RANKING_TITLE="Layout: Elo-Rangliste" COM_SPORTSMANAGER_LAYOUT_ELO_RANKING_TITLE="Layout: Elo-Rangliste"
COM_SPORTSMANAGER_LAYOUT_ELO_RANKING_DESC="Auflistung der Spieler sortiert nach Elo-Wertung" COM_SPORTSMANAGER_LAYOUT_ELO_RANKING_DESC="Auflistung der Spieler sortiert nach Elo-Wertung"
COM_SPORTSMANAGER_LAYOUT_ELO_RANKING_OPTION_ELO_RANKING="Elo-Rangliste" COM_SPORTSMANAGER_LAYOUT_ELO_RANKING_OPTION_ELO_RANKING="Elo-Rangliste"
@@ -21,12 +21,13 @@ COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_TEAMS_JOINT="Teams in joint list
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_CLUBS="Clubs" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_CLUBS="Clubs"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_VENUES="Venues" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_VENUES="Venues"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_APPOINTMENTS="Appointments" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_APPOINTMENTS="Appointments"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_MATCH_RESCHEDULING="Match reschedulings"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_TITLE="Title" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_TITLE="Title"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_TITLE_DESC="Title which will be shows on top" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_TITLE_DESC="Title which will be shows on top"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_DESCRIPTION="Description" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_DESCRIPTION="Description"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_DESCRIPTION_DESC="Description that will be shows below the titel (IMPORTANT: if html tags are used, special characters must be maskeraded)" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_DESCRIPTION_DESC="Description that will be shows below the titel (IMPORTANT: if html tags are used, special characters must be maskeraded)"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_CATEGORIES="Categories" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_CATEGORIES="Categories"
COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_CATEGORIES_DESC="An optional selection of category numbers seperated by commas" COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_CATEGORIES_DESC="An optional selection of category numbers seperated by commas or bullet point"
COM_SPORTSMANAGER_LAYOUT_ELO_RANKING_TITLE="Layout: elo ranking" COM_SPORTSMANAGER_LAYOUT_ELO_RANKING_TITLE="Layout: elo ranking"
COM_SPORTSMANAGER_LAYOUT_ELO_RANKING_DESC="Listing of players sorted by elo rating" COM_SPORTSMANAGER_LAYOUT_ELO_RANKING_DESC="Listing of players sorted by elo rating"
COM_SPORTSMANAGER_LAYOUT_ELO_RANKING_OPTION_ELO_RANKING="Elo ranking" COM_SPORTSMANAGER_LAYOUT_ELO_RANKING_OPTION_ELO_RANKING="Elo ranking"
File diff suppressed because it is too large Load Diff
@@ -5365,6 +5365,209 @@ function updateDatabase(): void
} }
} }
if ($datenbank_version < 110) {
$aktueller_verein_aktualisieren = true;
$query = "UPDATE #__sportsmanager_einstellungen"
. "\n SET wert = '110'"
. "\n WHERE name = 'datenbank_version'";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
}
if ($datenbank_version < 111) {
$query = "INSERT IGNORE #__sportsmanager_einstellungen SET name = 'verbands_kuerzel', wert = 'tbe.';";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "UPDATE #__sportsmanager_einstellungen"
. "\n SET wert = '111'"
. "\n WHERE name = 'datenbank_version'";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
}
if ($datenbank_version < 112) {
// Korrektur Startuhrzeit in sportsmanager_turnierdisziplin bei eintägigen Veranstaltungen
$query = "UPDATE #__sportsmanager_turnierdisziplin td"
. "\n JOIN #__sportsmanager_turnier t ON td.turnier_id = t.turnier_id"
. "\n SET td.beginn = CONCAT(t.erster_tag, ' ', TIME(td.beginn))"
. "\n WHERE t.erster_tag = t.letzter_tag;";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
$query = "UPDATE #__sportsmanager_einstellungen"
. "\n SET wert = '112'"
. "\n WHERE name = 'datenbank_version'";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
}
if ($datenbank_version < 113) {
// Korrektur Startuhrzeit in sportsmanager_turnierdisziplin bei eintägigen Veranstaltungen
$query = "UPDATE #__sportsmanager_turnierdisziplin td"
. "\n JOIN #__sportsmanager_turnier t ON td.turnier_id = t.turnier_id"
. "\n SET td.beginn = CONCAT(t.erster_tag, ' ', TIME(td.beginn))"
. "\n WHERE t.erster_tag = t.letzter_tag;";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
$query = "UPDATE #__sportsmanager_einstellungen"
. "\n SET wert = '113'"
. "\n WHERE name = 'datenbank_version'";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
}
if ($datenbank_version < 114) {
$query = "CREATE TABLE IF NOT EXISTS `#__sportsmanager_regelwerke` ("
. "\n `regelwerke_id` int(11) NOT NULL AUTO_INCREMENT,"
. "\n `regelwerk` varchar(32) NOT NULL,"
. "\n PRIMARY KEY (`regelwerke_id`),"
. "\n UNIQUE KEY `regelwerk` (`regelwerk`)"
. "\n ) ENGINE=MyISAM DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "CREATE TABLE IF NOT EXISTS `#__sportsmanager_verstoesse` ("
. "\n `verstoesse_id` int(11) NOT NULL AUTO_INCREMENT,"
. "\n `regelwerke_id` int(11) NOT NULL DEFAULT 0,"
. "\n `paragraph_spo` varchar(32) NOT NULL DEFAULT '',"
. "\n `paragraph_go` varchar(32) NOT NULL DEFAULT '',"
. "\n `verstoss` varchar(64) NOT NULL DEFAULT '',"
. "\n `haupttext` text NOT NULL,"
. "\n `zusatztext` text NOT NULL,"
. "\n `gebuehr` smallint(3) NOT NULL DEFAULT 0,"
. "\n `zusatzgebuehr` smallint(2) NOT NULL DEFAULT 0,"
. "\n `zur_auswahl` tinyint(1) NOT NULL DEFAULT 1,"
. "\n PRIMARY KEY (`verstoesse_id`)"
. "\n ) ENGINE=MyISAM DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "CREATE TABLE IF NOT EXISTS `#__sportsmanager_ordnungsstrafen` ("
. "\n `ordnungsstrafen_id` int(11) NOT NULL AUTO_INCREMENT,"
. "\n `verstoesse_id` int(11) NOT NULL DEFAULT 0,"
. "\n `begegnung_id` int(11) NOT NULL DEFAULT 0,"
. "\n `team_id` int(11) NOT NULL DEFAULT 0,"
. "\n `aussteller_id` int(11) NOT NULL DEFAULT 0,"
. "\n `ausstelldatum` datetime NOT NULL DEFAULT current_timestamp(),"
. "\n `versender_id` int(11) DEFAULT NULL,"
. "\n `versendedatum` datetime DEFAULT NULL,"
. "\n `rechnungssteller_id` int(11) DEFAULT NULL,"
. "\n `rechnungsdatum` datetime DEFAULT NULL,"
. "\n `multiplikator` tinyint(1) NOT NULL DEFAULT 1,"
. "\n `weitere_angaben` text NOT NULL,"
. "\n PRIMARY KEY (`ordnungsstrafen_id`)"
. "\n ) ENGINE=MyISAM DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "CREATE TABLE IF NOT EXISTS `#__sportsmanager_email_vorlagen` ("
. "\n `email_vorlagen_id` int(11) NOT NULL AUTO_INCREMENT,"
. "\n `vorlage` varchar(64) NOT NULL,"
. "\n `betreff` varchar(256) NOT NULL DEFAULT '',"
. "\n `von` varchar(64) NOT NULL DEFAULT '',"
. "\n `an` varchar(256) NOT NULL DEFAULT '',"
. "\n `cc` varchar(256) NOT NULL DEFAULT '',"
. "\n `bcc` varchar(256) NOT NULL DEFAULT '',"
. "\n `email_text` text NOT NULL,"
. "\n PRIMARY KEY (`email_vorlagen_id`),"
. "\n UNIQUE KEY `vorlage` (`vorlage`)"
. "\n ) ENGINE=MyISAM DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "INSERT IGNORE #__sportsmanager_einstellungen SET name = 'ordnungsstrafen_verwenden', wert = '0';";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "INSERT IGNORE INTO `#__sportsmanager_email_vorlagen` (`email_vorlagen_id`, `vorlage`) VALUES (NULL, 'Ordnungsstrafe');";
$db->setQuery($query);
if (!$db->execute()) { die($db->stderr(true)); }
$query = "ALTER TABLE `#__sportsmanager_veranstaltung` ADD COLUMN IF NOT EXISTS `regelwerke_id` INT(11) NOT NULL DEFAULT '0' AFTER `bezeichnung`;";
$db->setQuery($query);
if (!$db->execute()) { die($db->stderr(true)); }
$query = "UPDATE #__sportsmanager_einstellungen"
. "\n SET wert = '114'"
. "\n WHERE name = 'datenbank_version'";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
}
if ($datenbank_version < 115) {
// Erweiterung Tabelle #__sportsmanager_verschieberegel
$query = "ALTER TABLE `#__sportsmanager_verschieberegel`"
."\n ADD COLUMN IF NOT EXISTS `begruendung_erforderlich` INT(1) NOT NULL DEFAULT 0 AFTER `ablehnen`,"
."\n ADD COLUMN IF NOT EXISTS `vereine_berechtigt` INT(1) NOT NULL DEFAULT 1 AFTER `begruendung_erforderlich`,"
."\n ADD COLUMN IF NOT EXISTS `verband_berechtigt` INT(1) NOT NULL DEFAULT 0 AFTER `vereine_berechtigt`;";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
$query = "INSERT IGNORE INTO `#__sportsmanager_email_vorlagen` (`email_vorlagen_id`, `vorlage`) VALUES (NULL, 'Spielverlegung');";
$db->setQuery($query);
if (!$db->execute()) { die($db->stderr(true)); }
$query = "UPDATE #__sportsmanager_einstellungen"
. "\n SET wert = '115'"
. "\n WHERE name = 'datenbank_version'";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
}
if ($datenbank_version < 116) {
$query = "ALTER TABLE `#__sportsmanager_spielort`"
. "\n ADD IF NOT EXISTS `telefon` VARCHAR(64) NULL DEFAULT NULL AFTER `url`,"
. "\n ADD IF NOT EXISTS `email` VARCHAR(64) NULL DEFAULT NULL AFTER `telefon`,"
. "\n ADD IF NOT EXISTS `ruhetage` VARCHAR(64) NULL DEFAULT NULL AFTER `email`;";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
$query = "ALTER TABLE `#__sportsmanager_team`"
. "\n ADD IF NOT EXISTS `trainingstage` VARCHAR(64) NULL DEFAULT NULL AFTER `heimspielort_id`;";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
$query = "UPDATE #__sportsmanager_einstellungen"
. "\n SET wert = '116'"
. "\n WHERE name = 'datenbank_version'";
$db->setQuery($query);
if (!$db->execute()) {
die($db->stderr(true));
}
}
if ($termin_aktionen_email_setzen) { if ($termin_aktionen_email_setzen) {
$query = "SELECT aktion_user_id, termin_aktion_id" $query = "SELECT aktion_user_id, termin_aktion_id"
. "\n FROM #__sportsmanager_termin_aktion"; . "\n FROM #__sportsmanager_termin_aktion";
@@ -215,6 +215,24 @@ if ($task == "spielerbild") {
case 'admin_verschieben_modus_remove': case 'admin_verschieben_modus_remove':
adminRemoveVerschiebenModus(); adminRemoveVerschiebenModus();
break; break;
case 'admin_spielverlegungen';
adminSpielverlegungen();
break;
case 'admin_spielverlegung_edit';
adminEditSpielverlegung();
break;
case 'admin_spielverlegung_save';
adminSaveSpielverlegung();
break;
case 'admin_spielverlegung_remove';
adminRemoveSpielverlegung();
break;
case 'admin_spielverlegungen_export':
adminExportSpielverlegungen();
break;
case 'admin_spielverlegung_mailen';
adminSpielverlegungMailen();
break;
case 'admin_kategorien': case 'admin_kategorien':
adminKategorien(); adminKategorien();
break; break;
@@ -350,6 +368,60 @@ if ($task == "spielerbild") {
case 'admin_rechnung_remove': case 'admin_rechnung_remove':
adminRemoveRechnung(); adminRemoveRechnung();
break; break;
case 'admin_joomla_mail_senden':
sendJoomlaMail();
break;
case 'admin_regelwerke':
adminRegelwerke();
break;
case 'admin_regelwerk_edit':
adminEditRegelwerk();
break;
case 'admin_regelwerk_save':
adminSaveRegelwerk();
break;
case 'admin_regelwerk_remove':
adminRemoveRegelwerk();
break;
case 'admin_ordnungsstrafe_mailen':
adminOrdnungsstrafeMailen();
break;
case 'admin_ordnungsstrafen':
adminOrdnungsstrafen();
break;
case 'admin_ordnungsstrafe_edit':
adminEditOrdnungsstrafe();
break;
case 'admin_ordnungsstrafe_save':
adminSaveOrdnungsstrafe();
break;
case 'admin_ordnungsstrafe_remove':
adminRemoveOrdnungsstrafe();
break;
case 'admin_ordnungsstrafen_export':
adminExportOrdnungsstrafen();
break;
case 'admin_verstoesse':
adminVerstoesse();
break;
case 'admin_verstoss_edit':
adminEditVerstoss();
break;
case 'admin_verstoss_save':
adminSaveVerstoss();
break;
case 'admin_verstoss_remove':
adminRemoveVerstoss();
break;
case 'admin_ordnungsstrafen_vorlage':
adminEditEmailVorlage('Ordnungsstrafe');
break;
case 'admin_spielverlegung_vorlage';
adminEditEmailVorlage('Spielverlegung');
break;
case 'admin_email_vorlage_save':
adminSaveEmailVorlage();
break;
case 'admin_moderatoren': case 'admin_moderatoren':
adminModeratoren(); adminModeratoren();
break; break;
@@ -987,6 +1059,8 @@ if ($task == "spielerbild") {
adminTermine(0); adminTermine(0);
break; break;
} }
} else if ($content == 'spielverlegungen') {
spielverlegungen();
} else if ($content == 'login') { } else if ($content == 'login') {
userAuth(); userAuth();
} else if ($content == 'login_refresh') { } else if ($content == 'login_refresh') {
@@ -2388,6 +2462,24 @@ function turnierbaumAnzeigen($veranstaltung): void
else else
$begegnungen[$begegnung['Spieltag_Nr'] + 1][round($begegnung['Spiel_Nr'] / 2)]['gast'] = htmlentities($begegnung['Gast']); $begegnungen[$begegnung['Spieltag_Nr'] + 1][round($begegnung['Spiel_Nr'] / 2)]['gast'] = htmlentities($begegnung['Gast']);
} }
} else
if ($begegnung['Heim_Satzpunkte'] == $begegnung['Gast_Satzpunkte'] && $begegnung['Heim_Tore'] > $begegnung['Gast_Tore']) {
$begegnungen[$begegnung['Spieltag_Nr']][$begegnung['Spiel_Nr']]['sieger'] = 1;
if ($begegnung['Spieltag_Nr'] < $anzahlRunden){
if (round($begegnung['Spiel_Nr'] % 2))
$begegnungen[$begegnung['Spieltag_Nr'] + 1][round($begegnung['Spiel_Nr'] / 2)]['heim'] = htmlentities($begegnung['Heim']);
else
$begegnungen[$begegnung['Spieltag_Nr'] + 1][round($begegnung['Spiel_Nr'] / 2)]['gast'] = htmlentities($begegnung['Heim']);
}
} else
if ($begegnung['Heim_Satzpunkte'] == $begegnung['Gast_Satzpunkte'] && $begegnung['Heim_Tore'] < $begegnung['Gast_Tore']) {
$begegnungen[$begegnung['Spieltag_Nr']][$begegnung['Spiel_Nr']]['sieger'] = 2;
if ($begegnung['Spieltag_Nr'] < $anzahlRunden){
if (round($begegnung['Spiel_Nr'] % 2))
$begegnungen[$begegnung['Spieltag_Nr'] + 1][round($begegnung['Spiel_Nr'] / 2)]['heim'] = htmlentities($begegnung['Gast']);
else
$begegnungen[$begegnung['Spieltag_Nr'] + 1][round($begegnung['Spiel_Nr'] / 2)]['gast'] = htmlentities($begegnung['Gast']);
}
} else { } else {
$begegnungen[$begegnung['Spieltag_Nr']][$begegnung['Spiel_Nr']]['sieger'] = 0; $begegnungen[$begegnung['Spieltag_Nr']][$begegnung['Spiel_Nr']]['sieger'] = 0;
} }
@@ -2410,7 +2502,7 @@ function begegnungenAnzeigen($veranstaltung, $verein_id, $spielort_id, $zeitfens
. "\n (SELECT vorschlagendes_team_id FROM #__sportsmanager_unbestaetigtes_ergebnis AS tt1 WHERE tt1.begegnung_id = t1.begegnung_id LIMIT 1) AS unbestaetigtes_ergebnis_team_id," . "\n (SELECT vorschlagendes_team_id FROM #__sportsmanager_unbestaetigtes_ergebnis AS tt1 WHERE tt1.begegnung_id = t1.begegnung_id LIMIT 1) AS unbestaetigtes_ergebnis_team_id,"
. "\n (SELECT IF(aktion NOT IN (0, 3, 4), NULL, tt1.eingetragen) FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verlegung_eingetragen," . "\n (SELECT IF(aktion NOT IN (0, 3, 4), NULL, tt1.eingetragen) FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verlegung_eingetragen,"
. "\n (SELECT verantwortlich_team_id FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verantwortlich_team_id," . "\n (SELECT verantwortlich_team_id FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verantwortlich_team_id,"
. "\n IF(NOT ISNULL(t6.verschieberegel_id) AND (t6.vorlaufzeit_tage = 0 OR DATEDIFF(zeitpunkt, CURDATE()) >= t6.vorlaufzeit_tage), 1, 0) AS verschieberegel_erfuellt" . "\n IF(NOT ISNULL(t6.verschieberegel_id) AND t6.vereine_berechtigt = 1 AND (t6.vorlaufzeit_tage = 0 OR DATEDIFF(zeitpunkt, CURDATE()) >= t6.vorlaufzeit_tage), 1, 0) AS verschieberegel_erfuellt"
. "\n FROM #__sportsmanager_begegnung AS t1" . "\n FROM #__sportsmanager_begegnung AS t1"
. "\n LEFT JOIN #__sportsmanager_spielort AS s1 ON t1.spielort_id = s1.spielort_id" . "\n LEFT JOIN #__sportsmanager_spielort AS s1 ON t1.spielort_id = s1.spielort_id"
. "\n LEFT JOIN #__sportsmanager_team AS t2 ON t1.heim_team_id = t2.team_id" . "\n LEFT JOIN #__sportsmanager_team AS t2 ON t1.heim_team_id = t2.team_id"
@@ -2430,7 +2522,7 @@ function begegnungenAnzeigen($veranstaltung, $verein_id, $spielort_id, $zeitfens
. "\n (SELECT vorschlagendes_team_id FROM #__sportsmanager_unbestaetigtes_ergebnis AS tt1 WHERE tt1.begegnung_id = t1.begegnung_id LIMIT 1) AS unbestaetigtes_ergebnis_team_id," . "\n (SELECT vorschlagendes_team_id FROM #__sportsmanager_unbestaetigtes_ergebnis AS tt1 WHERE tt1.begegnung_id = t1.begegnung_id LIMIT 1) AS unbestaetigtes_ergebnis_team_id,"
. "\n (SELECT IF(aktion NOT IN (0, 3, 4), NULL, tt1.eingetragen) FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verlegung_eingetragen," . "\n (SELECT IF(aktion NOT IN (0, 3, 4), NULL, tt1.eingetragen) FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verlegung_eingetragen,"
. "\n (SELECT verantwortlich_team_id FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verantwortlich_team_id," . "\n (SELECT verantwortlich_team_id FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verantwortlich_team_id,"
. "\n IF(NOT ISNULL(t6.verschieberegel_id) AND (t6.vorlaufzeit_tage = 0 OR DATEDIFF(zeitpunkt, CURDATE()) >= t6.vorlaufzeit_tage), 1, 0) AS verschieberegel_erfuellt" . "\n IF(NOT ISNULL(t6.verschieberegel_id) AND t6.vereine_berechtigt = 1 AND (t6.vorlaufzeit_tage = 0 OR DATEDIFF(zeitpunkt, CURDATE()) >= t6.vorlaufzeit_tage), 1, 0) AS verschieberegel_erfuellt"
. "\n FROM #__sportsmanager_begegnung AS t1" . "\n FROM #__sportsmanager_begegnung AS t1"
. "\n LEFT JOIN #__sportsmanager_spielort AS s1 ON t1.spielort_id = s1.spielort_id" . "\n LEFT JOIN #__sportsmanager_spielort AS s1 ON t1.spielort_id = s1.spielort_id"
. "\n LEFT JOIN #__sportsmanager_team AS t2 ON t1.heim_team_id = t2.team_id" . "\n LEFT JOIN #__sportsmanager_team AS t2 ON t1.heim_team_id = t2.team_id"
@@ -2451,7 +2543,7 @@ function begegnungenAnzeigen($veranstaltung, $verein_id, $spielort_id, $zeitfens
. "\n (SELECT vorschlagendes_team_id FROM #__sportsmanager_unbestaetigtes_ergebnis AS tt1 WHERE tt1.begegnung_id = t1.begegnung_id LIMIT 1) AS unbestaetigtes_ergebnis_team_id," . "\n (SELECT vorschlagendes_team_id FROM #__sportsmanager_unbestaetigtes_ergebnis AS tt1 WHERE tt1.begegnung_id = t1.begegnung_id LIMIT 1) AS unbestaetigtes_ergebnis_team_id,"
. "\n (SELECT IF(aktion NOT IN (0, 3, 4), NULL, tt1.eingetragen) FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verlegung_eingetragen," . "\n (SELECT IF(aktion NOT IN (0, 3, 4), NULL, tt1.eingetragen) FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verlegung_eingetragen,"
. "\n (SELECT verantwortlich_team_id FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verantwortlich_team_id," . "\n (SELECT verantwortlich_team_id FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verantwortlich_team_id,"
. "\n IF(NOT ISNULL(t6.verschieberegel_id) AND (t6.vorlaufzeit_tage = 0 OR DATEDIFF(zeitpunkt, CURDATE()) >= t6.vorlaufzeit_tage), 1, 0) AS verschieberegel_erfuellt" . "\n IF(NOT ISNULL(t6.verschieberegel_id) AND t6.vereine_berechtigt = 1 AND (t6.vorlaufzeit_tage = 0 OR DATEDIFF(zeitpunkt, CURDATE()) >= t6.vorlaufzeit_tage), 1, 0) AS verschieberegel_erfuellt"
. "\n FROM #__sportsmanager_begegnung AS t1" . "\n FROM #__sportsmanager_begegnung AS t1"
. "\n LEFT JOIN #__sportsmanager_team AS t2 ON t1.heim_team_id = t2.team_id" . "\n LEFT JOIN #__sportsmanager_team AS t2 ON t1.heim_team_id = t2.team_id"
. "\n LEFT JOIN #__sportsmanager_team AS t3 ON t1.gast_team_id = t3.team_id" . "\n LEFT JOIN #__sportsmanager_team AS t3 ON t1.gast_team_id = t3.team_id"
@@ -2478,7 +2570,7 @@ function begegnungenAnzeigen($veranstaltung, $verein_id, $spielort_id, $zeitfens
. "\n (SELECT IF(aktion NOT IN (0, 3, 4), NULL, tt1.eingetragen) FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verlegung_eingetragen," . "\n (SELECT IF(aktion NOT IN (0, 3, 4), NULL, tt1.eingetragen) FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verlegung_eingetragen,"
. "\n (SELECT verantwortlich_team_id FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verantwortlich_team_id," . "\n (SELECT verantwortlich_team_id FROM #__sportsmanager_begegnung_historie AS tt1 USE INDEX (begegnung_id) WHERE tt1.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verantwortlich_team_id,"
// //
. "\n IF(NOT ISNULL(t6.verschieberegel_id) AND (t6.vorlaufzeit_tage = 0 OR DATEDIFF(zeitpunkt, CURDATE()) >= t6.vorlaufzeit_tage), 1, 0) AS verschieberegel_erfuellt" . "\n IF(NOT ISNULL(t6.verschieberegel_id) AND t6.vereine_berechtigt = 1 AND (t6.vorlaufzeit_tage = 0 OR DATEDIFF(zeitpunkt, CURDATE()) >= t6.vorlaufzeit_tage), 1, 0) AS verschieberegel_erfuellt"
. "\n FROM #__sportsmanager_begegnung AS t1" . "\n FROM #__sportsmanager_begegnung AS t1"
. "\n LEFT JOIN #__sportsmanager_team AS t2 ON t1.heim_team_id = t2.team_id" . "\n LEFT JOIN #__sportsmanager_team AS t2 ON t1.heim_team_id = t2.team_id"
. "\n LEFT JOIN #__sportsmanager_team AS t3 ON t1.gast_team_id = t3.team_id" . "\n LEFT JOIN #__sportsmanager_team AS t3 ON t1.gast_team_id = t3.team_id"
@@ -2870,10 +2962,23 @@ function spieler(): void
$query .= ", teamname"; $query .= ", teamname";
$query .= ", vereinsname, veranstalterbezeichnung" $query .= ", vereinsname, veranstalterbezeichnung"
. "\n FROM #__sportsmanager_spieler"; . "\n FROM #__sportsmanager_spieler";
if (!empty($kategorieFilter) || !empty($veranstalterFilter)) if (!empty($kategorieFilter) || !empty($veranstalterFilter)){
$query .= "\n INNER JOIN (SELECT spieler_id FROM #__sportsmanager_mitglied_von_verein INNER JOIN #__sportsmanager_verein USING (verein_id) INNER JOIN #__sportsmanager_veranstalter USING (veranstalter_id) WHERE NOT #__sportsmanager_mitglied_von_verein.ausgetreten AND NOT #__sportsmanager_verein.ausgetreten" . $veranstalterFilter . $kategorieFilter . "GROUP BY spieler_id ORDER BY spieler_id, verein_id) AS mitgliedschaft USING (spieler_id)"; $query .= "\n INNER JOIN (SELECT spieler_id FROM #__sportsmanager_mitglied_von_verein"
if ($veranstaltungid != 0) . "\n INNER JOIN #__sportsmanager_verein USING (verein_id)"
$query .= "\n INNER JOIN (SELECT spieler_id, teamname FROM #__sportsmanager_veranstaltung INNER JOIN #__sportsmanager_team USING (veranstaltung_id) INNER JOIN #__sportsmanager_mitglied_von_team USING (team_id) WHERE status > 0 AND veranstaltung_id = $veranstaltungid AND NOT ausgetreten GROUP BY spieler_id ORDER BY YEAR(letzter_tag) DESC, reihenfolge, letzter_tag DESC, bezeichnung, teamname) AS mannschaftsmitglied USING (spieler_id)"; . "\n INNER JOIN #__sportsmanager_veranstalter USING (veranstalter_id)"
. "\n WHERE NOT #__sportsmanager_mitglied_von_verein.ausgetreten"
. "\n AND NOT #__sportsmanager_verein.ausgetreten" . $veranstalterFilter . $kategorieFilter
. "\n GROUP BY spieler_id ORDER BY spieler_id, verein_id) AS mitgliedschaft USING (spieler_id)";
}
if ($veranstaltungid != 0){
$query .= "\n INNER JOIN (SELECT spieler_id, teamname FROM #__sportsmanager_veranstaltung"
. "\n INNER JOIN #__sportsmanager_team USING (veranstaltung_id)"
. "\n INNER JOIN #__sportsmanager_mitglied_von_team USING (team_id)"
. "\n WHERE status > 0 AND veranstaltung_id = $veranstaltungid AND NOT ausgetreten"
. "\n GROUP BY spieler_id"
. "\n ORDER BY YEAR(letzter_tag) DESC, reihenfolge, letzter_tag DESC, bezeichnung, teamname) AS mannschaftsmitglied"
. "\n USING (spieler_id)";
}
$query .= "\n LEFT JOIN #__sportsmanager_verein ON aktueller_verein_id = verein_id" $query .= "\n LEFT JOIN #__sportsmanager_verein ON aktueller_verein_id = verein_id"
. "\n LEFT JOIN #__sportsmanager_veranstalter USING (veranstalter_id)" . "\n LEFT JOIN #__sportsmanager_veranstalter USING (veranstalter_id)"
. "\n LEFT JOIN #__sportsmanager_mitglied_von_verein USING (spieler_id)" . "\n LEFT JOIN #__sportsmanager_mitglied_von_verein USING (spieler_id)"
@@ -2998,7 +3103,9 @@ function spielerDetails(): void
$spieler = $rows[0]; $spieler = $rows[0];
// Aktive Vereinsmitgliedschaften ermitteln // Aktive Vereinsmitgliedschaften ermitteln
$query = "SELECT vereinsname" $query = "SELECT vereinsname,"
. "\n CASE #__sportsmanager_mitglied_von_verein.mitgliedsstatus"
. "\n WHEN 1 THEN 'Aktiv' WHEN 2 THEN 'Eingeschränkt' END AS status"
. "\n FROM #__sportsmanager_mitglied_von_verein, #__sportsmanager_verein" . "\n FROM #__sportsmanager_mitglied_von_verein, #__sportsmanager_verein"
. "\n LEFT JOIN #__sportsmanager_veranstalter USING (veranstalter_id)" . "\n LEFT JOIN #__sportsmanager_veranstalter USING (veranstalter_id)"
. "\n WHERE #__sportsmanager_mitglied_von_verein.spieler_id = $id " . "\n WHERE #__sportsmanager_mitglied_von_verein.spieler_id = $id "
@@ -3215,7 +3322,7 @@ function spielerDetails(): void
$statistik["elo_doppel"] = loadResult($db, $query) && $elo_anzeigen; $statistik["elo_doppel"] = loadResult($db, $query) && $elo_anzeigen;
if (isJson()) { if (isJson()) {
JSON_sportsmanager:: spielerDetails($spieler, $vereine, $veranstalter, $spieler_elo_verlauf_einzel, $spieler_elo_verlauf_doppel, $spielerNamen, $teamNamen, $veranstaltungBezeichnungen, $turnierdisziplinBezeichnungen, $individualwettbewerbBezeichnungen, $ranglistenplatzierungen, $turnierplatzierungen, $teams, $elo_detailliert, $statistik, $einstufungen); JSON_sportsmanager::spielerDetails($spieler, $vereine, $veranstalter, $spieler_elo_verlauf_einzel, $spieler_elo_verlauf_doppel, $spielerNamen, $teamNamen, $veranstaltungBezeichnungen, $turnierdisziplinBezeichnungen, $individualwettbewerbBezeichnungen, $ranglistenplatzierungen, $turnierplatzierungen, $teams, $elo_detailliert, $statistik, $einstufungen);
} else { } else {
HTML_sportsmanager::spielerDetails($spieler, $vereine, $veranstalter, $spieler_elo_verlauf_einzel, $spieler_elo_verlauf_doppel, $spielerNamen, $teamNamen, $veranstaltungBezeichnungen, $turnierdisziplinBezeichnungen, $individualwettbewerbBezeichnungen, $ranglistenplatzierungen, $turnierplatzierungen, $teams, $sortierung, $vorheriger_spieler_id, $naechster_spieler_id, $elo_detailliert, $statistik, $beginn, $kategorie, $einstufungen, $filter, $veranstaltungid, $veranstalterid, $einstufungid, $unabhaengige_ansicht, $details_anzeigen, $lizenz_anzeigen); HTML_sportsmanager::spielerDetails($spieler, $vereine, $veranstalter, $spieler_elo_verlauf_einzel, $spieler_elo_verlauf_doppel, $spielerNamen, $teamNamen, $veranstaltungBezeichnungen, $turnierdisziplinBezeichnungen, $individualwettbewerbBezeichnungen, $ranglistenplatzierungen, $turnierplatzierungen, $teams, $sortierung, $vorheriger_spieler_id, $naechster_spieler_id, $elo_detailliert, $statistik, $beginn, $kategorie, $einstufungen, $filter, $veranstaltungid, $veranstalterid, $einstufungid, $unabhaengige_ansicht, $details_anzeigen, $lizenz_anzeigen);
} }
@@ -3919,10 +4026,11 @@ function vereinDetails(): void
$fruehere_teams = loadObjectList($db, $query); $fruehere_teams = loadObjectList($db, $query);
HTML_sportsmanager::vereinDetails($verein, $mitglieder, $vereinsansprechpartner, $aktuelle_teams, $vorheriger_verein_id, $naechster_verein_id, $vereins_moderator, $details_anzeigen, $ansprechpartner_anzeigen); HTML_sportsmanager::vereinDetails($verein, $mitglieder, $vereinsansprechpartner, $aktuelle_teams, $vorheriger_verein_id, $naechster_verein_id, $vereins_moderator, $details_anzeigen, $ansprechpartner_anzeigen);
begegnungenAnzeigen(NULL, $id, NULL, 92, true, true, false, Text::_('COM_SPORTSMANAGER_RUNNING_MATCHES'), true, true); // Links in Begegnungen sind fehlerhaft bei Aufruf aus vereinDetails (Jürgen Meyer, 10.10.2025)
begegnungenAnzeigen(NULL, $id, NULL, 62, true, false, true, "Begegnungen der kommenden zwei Monate", false, true); // begegnungenAnzeigen(NULL, $id, NULL, 92, true, true, false, Text::_('COM_SPORTSMANAGER_RUNNING_MATCHES'), true, true);
begegnungenAnzeigen(NULL, $id, NULL, 366, false, true, true, "Begegnungen des vergangenen Jahres", true, true); // begegnungenAnzeigen(NULL, $id, NULL, 62, true, false, true, "Begegnungen der kommenden zwei Monate", false, true);
HTML_sportsmanager::iCalBegegnungen(SportsManagerURL('&task=verein_begegnungen_ical&id=' . $verein->verein_id)); // begegnungenAnzeigen(NULL, $id, NULL, 366, false, true, true, "Begegnungen des vergangenen Jahres", true, true);
// HTML_sportsmanager::iCalBegegnungen(SportsManagerURL('&task=verein_begegnungen_ical&id=' . $verein->verein_id));
HTML_sportsmanager::vereinDetailsErgaenzung($mailverteiler, $fruehere_teams, $vereins_moderator); HTML_sportsmanager::vereinDetailsErgaenzung($mailverteiler, $fruehere_teams, $vereins_moderator);
} }
@@ -4011,6 +4119,105 @@ function spielort(): void
HTML_sportsmanager::iCalBegegnungen(SportsManagerURL('&task=spielort_begegnungen_ical&id=' . $id)); HTML_sportsmanager::iCalBegegnungen(SportsManagerURL('&task=spielort_begegnungen_ical&id=' . $id));
} }
function spielverlegungen(): void
{
$db = getDatabase();
global $params;
$jInput = Factory::getContainer()->get(SiteApplication::class)->input;
$filter_status = $jInput->get('filter_status', '', 'RAW');
if (empty($filter_status))
$filter_status = "offen,genehmigt";
$query = "SELECT saison_id, saisonbezeichnung"
. "\n FROM #__sportsmanager_saison"
. "\n ORDER BY saisonbezeichnung DESC LIMIT 1";
$saisons = loadObjectList($db, $query);
$filter_saison_id = $saisons[0]->saison_id;
$query = "SELECT t1.begegnung_historie_id AS beantragt_id, t1.begegnung_id AS begegnung_id,"
. "\n t1.eingetragen AS beantragt, t1.kommentar AS Begruendung_beantragt, t1.zeitpunkt AS Termin_alt,"
. "\n t1.team_id as beantragt_verein, t5.bezeichnung AS Liga,"
. "\n t3.teamname AS Heim, t4.teamname AS Gast, t6.teamname AS beantragt_von, 'offen' AS status"
. "\n FROM #__sportsmanager_begegnung_historie AS t1"
. "\n LEFT JOIN #__sportsmanager_begegnung AS t2 ON t2.begegnung_id = t1.begegnung_id"
. "\n LEFT JOIN #__sportsmanager_team AS t3 ON t3.team_id = t2.heim_team_id"
. "\n LEFT JOIN #__sportsmanager_team AS t4 ON t4.team_id = t2.gast_team_id"
. "\n LEFT JOIN #__sportsmanager_veranstaltung AS t5 ON t5.veranstaltung_id = t4.veranstaltung_id"
. "\n LEFT JOIN #__sportsmanager_team AS t6 ON t6.team_id = t1.team_id"
. "\n WHERE t1.aktion = 2"
. "\n AND t5.saison_id = '$filter_saison_id'"
. kategorieFilter("AND t5.kategorie IN")
. "\n ORDER BY t1.begegnung_id, t1.zeitpunkt ASC;";
$spielverlegungen = loadObjectList($db, $query);
$last_id = "";
foreach ($spielverlegungen as $key => $spielverlegung) {
if ($spielverlegung->begegnung_id == $last_id) {
unset($spielverlegungen[$key]);
} else {
$last_id = $spielverlegung->begegnung_id;
$query = "SELECT t1.begegnung_historie_id AS genehmigt_id, t1.eingetragen AS genehmigt,"
. "\n t1.user_id AS genehmigt_von, t1.team_id as genehmigt_verein, t1.zeitpunkt AS Termin_neu"
. "\n FROM #__sportsmanager_begegnung_historie AS t1"
. "\n LEFT JOIN #__sportsmanager_begegnung AS t2 ON t2.begegnung_id = t1.begegnung_id"
. "\n WHERE t1.aktion = 1 AND t1.begegnung_id = $last_id"
. "\n ORDER BY t1.zeitpunkt DESC LIMIT 1;";
$genehmigt = loadObjectList($db, $query);
if (!empty($genehmigt)) {
$spielverlegung->genehmigt_id = $genehmigt[0]->genehmigt_id;
$spielverlegung->genehmigt = $genehmigt[0]->genehmigt;
$spielverlegung->Termin_neu = $genehmigt[0]->Termin_neu;
$spielverlegung->genehmigt_von = $genehmigt[0]->genehmigt_von;
$spielverlegung->genehmigt_verein = $genehmigt[0]->genehmigt_verein;
$spielverlegung->status = "genehmigt";
} else {
$spielverlegung->genehmigt_id = "";
$spielverlegung->genehmigt = "";
$spielverlegung->Termin_neu = "";
$spielverlegung->genehmigt_von = "";
$spielverlegung->genehmigt_verein = "";
}
$query = "SELECT t1.begegnung_historie_id AS abgelehnt_id, t1.eingetragen AS abgelehnt,"
. "\n t1.user_id AS abgelehnt_von, t1.team_id as abgelehnt_verein,"
. "\n t1.kommentar AS Begruendung_abgelehnt"
. "\n FROM #__sportsmanager_begegnung_historie AS t1"
. "\n LEFT JOIN #__sportsmanager_begegnung AS t2 ON t2.begegnung_id = t1.begegnung_id"
. "\n WHERE t1.aktion = 10 AND t1.begegnung_id = $last_id"
. "\n ORDER BY t1.zeitpunkt DESC LIMIT 1;";
$abgelehnt = loadObjectList($db, $query);
if (!empty($abgelehnt)) {
$spielverlegung->abgelehnt_id = $abgelehnt[0]->abgelehnt_id;
$spielverlegung->abgelehnt = $abgelehnt[0]->abgelehnt;
$spielverlegung->abgelehnt_von = $abgelehnt[0]->abgelehnt_von;
$spielverlegung->abgelehnt_verein = $abgelehnt[0]->abgelehnt_verein;
$spielverlegung->Begruendung_abgelehnt = $abgelehnt[0]->Begruendung_abgelehnt;
$spielverlegung->status = "abgelehnt";
} else {
$spielverlegung->abgelehnt_id = "";
$spielverlegung->abgelehnt = "";
$spielverlegung->abgelehnt_von = "";
$spielverlegung->abgelehnt_verein = "";
$spielverlegung->Begruendung_abgelehnt = "";
}
}
}
$spielverlegungen = array_values($spielverlegungen);
if (isJson()) {
echo json_encode($spielverlegungen);
} else {
HTML_sportsmanager::spielverlegungen($params->get('titel'), $params->get('beschreibung'), $spielverlegungen);
}
}
function begegnungSpielplan($teamansicht = false): void function begegnungSpielplan($teamansicht = false): void
{ {
$db = getDatabase(); $db = getDatabase();
@@ -4197,7 +4404,11 @@ function begegnungVerlegenForm(): void
die("Missing id!"); die("Missing id!");
$aus_uebersicht = $jInput->get('aus_uebersicht', 0, 'INT'); $aus_uebersicht = $jInput->get('aus_uebersicht', 0, 'INT');
$query = "SELECT #__sportsmanager_veranstaltung.*, initial_ohne_termin, keine_gegenvorschlaege, vorlaufzeit_tage, termine_minimal, termine_maximal, ablehnen FROM #__sportsmanager_veranstaltung LEFT JOIN #__sportsmanager_verschieberegel USING (verschieberegel_id) WHERE veranstaltung_id = $veranstaltungid"; $query = "SELECT #__sportsmanager_veranstaltung.*, initial_ohne_termin, keine_gegenvorschlaege, vorlaufzeit_tage,"
. "\n termine_minimal, termine_maximal, ablehnen, begruendung_erforderlich"
. "\n FROM #__sportsmanager_veranstaltung LEFT JOIN #__sportsmanager_verschieberegel USING (verschieberegel_id)"
. "\n WHERE veranstaltung_id = $veranstaltungid";
$rows = loadObjectList($db, $query); $rows = loadObjectList($db, $query);
if (count($rows) < 1) if (count($rows) < 1)
die("Wrong id!"); die("Wrong id!");
@@ -4281,6 +4492,7 @@ function begegnungVerlegen(): void
$aus_uebersicht = $jInput->get('aus_uebersicht', 0, 'INT'); $aus_uebersicht = $jInput->get('aus_uebersicht', 0, 'INT');
$angefordert = $jInput->get('anfordern', false, 'BOOL'); $angefordert = $jInput->get('anfordern', false, 'BOOL');
$abgelehnt = $jInput->get('ablehnen', false, 'BOOL'); $abgelehnt = $jInput->get('ablehnen', false, 'BOOL');
$verlegungsgrund = $jInput->get('verlegungsgrund', '', 'RAW');
if ($jInput->get('cancel', false, 'BOOL')) { if ($jInput->get('cancel', false, 'BOOL')) {
redirectSportsManagerURL('&task=' . ($aus_uebersicht ? 'veranstaltungen' : 'veranstaltung') . '&veranstaltungid=' . $veranstaltungId); redirectSportsManagerURL('&task=' . ($aus_uebersicht ? 'veranstaltungen' : 'veranstaltung') . '&veranstaltungid=' . $veranstaltungId);
@@ -4348,7 +4560,7 @@ function begegnungVerlegen(): void
$aktueller_zeitpunkt = date('Y-m-d H:i:s'); $aktueller_zeitpunkt = date('Y-m-d H:i:s');
if (count($verlegen_aktionen) == 0 || $verlegen_aktionen[0]->aktion == 1 || $verlegen_aktionen[0]->aktion == 5 || $verlegen_aktionen[0]->aktion == 10) { if (count($verlegen_aktionen) == 0 || $verlegen_aktionen[0]->aktion == 1 || $verlegen_aktionen[0]->aktion == 5 || $verlegen_aktionen[0]->aktion == 10) {
$query = "INSERT INTO #__sportsmanager_begegnung_historie (begegnung_id, aktion, zeitpunkt, user_id, team_id, verantwortlich_team_id, kommentar, eingetragen)" $query = "INSERT INTO #__sportsmanager_begegnung_historie (begegnung_id, aktion, zeitpunkt, user_id, team_id, verantwortlich_team_id, kommentar, eingetragen)"
. "\n VALUES ($id, 2, '$begegnung->zeitpunkt', NULL, NULL, NULL, NULL, '$aktueller_zeitpunkt');"; . "\n VALUES ($id, 2, '$begegnung->zeitpunkt', '$user_id', '$vorschlagendes_team_id', '" . ($vorschlagendes_team_id == $begegnung->heim_team_id ? $begegnung->gast_team_id : $begegnung->heim_team_id) . "', '$verlegungsgrund', '$aktueller_zeitpunkt');";
$db->setQuery($query); $db->setQuery($query);
if (!$db->execute()) { if (!$db->execute()) {
abortWithError($db->stderr(true)); abortWithError($db->stderr(true));
@@ -4357,7 +4569,7 @@ function begegnungVerlegen(): void
if ($angefordert) { if ($angefordert) {
$query = "INSERT INTO #__sportsmanager_begegnung_historie (begegnung_id, aktion, zeitpunkt, user_id, team_id, verantwortlich_team_id, kommentar, eingetragen)" $query = "INSERT INTO #__sportsmanager_begegnung_historie (begegnung_id, aktion, zeitpunkt, user_id, team_id, verantwortlich_team_id, kommentar, eingetragen)"
. "\n VALUES ($id, 3, NULL, '$user_id', '$vorschlagendes_team_id', '" . ($vorschlagendes_team_id == $begegnung->heim_team_id ? $begegnung->gast_team_id : $begegnung->heim_team_id) . "', NULL, '$aktueller_zeitpunkt');"; . "\n VALUES ($id, 3, NULL, '$user_id', '$vorschlagendes_team_id', '" . ($vorschlagendes_team_id == $begegnung->heim_team_id ? $begegnung->gast_team_id : $begegnung->heim_team_id) . "', '$verlegungsgrund', '$aktueller_zeitpunkt');";
$db->setQuery($query); $db->setQuery($query);
if (!$db->execute()) { if (!$db->execute()) {
abortWithError($db->stderr(true)); abortWithError($db->stderr(true));
@@ -5585,7 +5797,13 @@ function aktuellerVereinAktualisieren($spieler_id = 0): void
$db = getDatabase(); $db = getDatabase();
$query = "UPDATE #__sportsmanager_spieler" $query = "UPDATE #__sportsmanager_spieler"
. "\n LEFT JOIN (SELECT spieler_id, verein_id FROM #__sportsmanager_mitglied_von_verein INNER JOIN #__sportsmanager_verein USING (verein_id) WHERE NOT #__sportsmanager_mitglied_von_verein.ausgetreten AND NOT #__sportsmanager_verein.ausgetreten GROUP BY spieler_id ORDER BY spieler_id, verein_id) AS mitgliedschaft USING (spieler_id)" . "\n LEFT JOIN (SELECT spieler_id, verein_id FROM #__sportsmanager_mitglied_von_verein"
. "\n INNER JOIN #__sportsmanager_verein USING (verein_id)"
. "\n WHERE NOT #__sportsmanager_mitglied_von_verein.ausgetreten"
. "\n AND #__sportsmanager_mitglied_von_verein.mitgliedsstatus IN (1,2)"
. "\n AND NOT #__sportsmanager_verein.ausgetreten"
. "\n GROUP BY spieler_id"
. "\n ORDER BY spieler_id, verein_id) AS mitgliedschaft USING (spieler_id)"
. "\n SET aktueller_verein_id = mitgliedschaft.verein_id"; . "\n SET aktueller_verein_id = mitgliedschaft.verein_id";
if ($spieler_id != 0) if ($spieler_id != 0)
$query .= "\n WHERE spieler_id = $spieler_id"; $query .= "\n WHERE spieler_id = $spieler_id";
@@ -185,17 +185,45 @@ function individualwettbewerbFilter($prefix): string
function kategorieFilter($prefix, $suffix = ""): string function kategorieFilter($prefix, $suffix = ""): string
{ {
global $params; global $params;
$kategorien = explode(",", $params->get('kategorien')); $kategorien = explode(",", $params->get('kategorien'));
$filter = ""; $result = [];
foreach ($kategorien as $s) {
$kategorie = intval(trim($s)); foreach ($kategorien as $item) {
if ($kategorie == 0) $item = trim($item);
continue; if ($item === '') continue;
if (!empty($filter))
$filter .= ", "; // Prüfen, ob es ein Bereich ist
$filter .= $kategorie; if (strpos($item, '-') !== false) {
$rangeParts = explode('-', $item);
// genau 2 Teile für einen gültigen Bereich
if (count($rangeParts) !== 2) continue;
$start = intval(trim($rangeParts[0]));
$end = intval(trim($rangeParts[1]));
if ($start <= 0 || $end <= 0 || $start > $end) continue;
for ($i = $start; $i <= $end; $i++) {
$result[$i] = true; // Duplikate vermeiden
} }
return empty($filter) ? "" : (" " . $prefix . " (" . $filter . ") " . $suffix); } else {
$num = intval($item);
if ($num > 0) {
$result[$num] = true;
}
}
}
if (empty($result)) {
return "";
}
$filter = array_keys($result);
sort($filter, SORT_NUMERIC);
return " $prefix (" . implode(", ", $filter) . ") $suffix";
} }
function turnierFilter($prefix): string function turnierFilter($prefix): string
@@ -24,6 +24,7 @@
<option value="vereine"><![CDATA[COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_CLUBS]]></option> <option value="vereine"><![CDATA[COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_CLUBS]]></option>
<option value="spielorte"><![CDATA[COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_VENUES]]></option> <option value="spielorte"><![CDATA[COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_VENUES]]></option>
<option value="termine"><![CDATA[COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_APPOINTMENTS]]></option> <option value="termine"><![CDATA[COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_APPOINTMENTS]]></option>
<option value="spielverlegungen"><![CDATA[COM_SPORTSMANAGER_LAYOUT_GENERAL_CONTENT_OPTION_MATCH_RESCHEDULING]]></option>
</field> </field>
<field name="titel" <field name="titel"
type="text" type="text"
@@ -1087,11 +1087,24 @@ static function begegnungenAnzeigen($veranstaltung, $modus, $rows, $zeitfenster,
$monat = "..."; $monat = "...";
$spieltag = 0; $spieltag = 0;
$spielort_name = ""; $spielort_name = "";
$Spieltagname = "";
$Spieltagname_Buffer = "";
foreach ($rows as $row) { foreach ($rows as $row) {
$ergebnis_vorhanden = $row->heim_punkte != null || $row->gast_punkte != null; $ergebnis_vorhanden = $row->heim_punkte != null || $row->gast_punkte != null;
if ($zeitfenster == 0 && $veranstaltung != null) { if ($zeitfenster == 0 && $veranstaltung != null) {
if ($veranstaltung->unterteilung == 0 || $veranstaltung->unterteilung == 1) { if ($veranstaltung->unterteilung == 0 || $veranstaltung->unterteilung == 1) {
if ($spieltag != $row->spieltag || $spielort_name != $row->spielort_name) {
if ($row->spieltag > 999)
$Spieltagname = htmlentities_utf8(Rundenbezeichnung($row->spieltag, $veranstaltung->unterteilung == 0, true));
else if ($veranstaltung->unterteilung == 1)
$Spieltagname = "Runde " . $row->spieltag;
else
$Spieltagname = "Spieltag " . $row->spieltag;
if ($row->spieltag < 999 && $veranstaltung->spieltag_titel_zeigen == 1 && $row->spieltag_titel != "")
$Spieltagname .= " - " . $row->spieltag_titel;
if ($Spieltagname_Buffer != $Spieltagname || $spielort_name != $row->spielort_name) {
$spieltag = $row->spieltag; $spieltag = $row->spieltag;
$spielort_name = $row->spielort_name; $spielort_name = $row->spielort_name;
?> ?>
@@ -1112,6 +1125,7 @@ static function begegnungenAnzeigen($veranstaltung, $modus, $rows, $zeitfenster,
</tr> </tr>
<?php <?php
} }
$Spieltagname_Buffer = $Spieltagname;
} else if ($monat != substr($row->zeitpunkt, 0, 7)) { // Freundschaftsspiel } else if ($monat != substr($row->zeitpunkt, 0, 7)) { // Freundschaftsspiel
$monat = substr($row->zeitpunkt, 0, 7); $monat = substr($row->zeitpunkt, 0, 7);
if (strlen($monat) == 0) if (strlen($monat) == 0)
@@ -1311,8 +1325,11 @@ static function turnierbaumAnzeigen($veranstaltung,$begegnungen): void
$oben = $hoehe * pow(2, $runde) * $spiel + $offset; $oben = $hoehe * pow(2, $runde) * $spiel + $offset;
$links = ($breite + $abstand) * $runde; $links = ($breite + $abstand) * $runde;
echo "\n<div "; echo "\n<div ";
if ($begegnungen[$runde + 1][$spiel + 1]['link']) if ($begegnungen[$runde + 1][$spiel + 1]['link']){
echo "onclick=\"window.location.href='" . $begegnungen[$runde + 1][$spiel + 1]['link'] . "';\" "; echo "onclick=\"window.location.href='" . $begegnungen[$runde + 1][$spiel + 1]['link'] . "';\" ";
echo "onmouseover=\"this.style.backgroundColor='lightblue';\" ";
echo "onmouseout=\"this.style.backgroundColor='white';\" ";
}
echo "class='matchbox' style='top: " . $oben . "px; left: " . $links . "px;' echo "class='matchbox' style='top: " . $oben . "px; left: " . $links . "px;'
title='" . $begegnungen[$runde + 1][$spiel + 1]['tooltiptext'] . "'>"; title='" . $begegnungen[$runde + 1][$spiel + 1]['tooltiptext'] . "'>";
echo "<span class='" . $class['heim'] . "'>"; echo "<span class='" . $class['heim'] . "'>";
@@ -1985,8 +2002,8 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<?php <?php
} }
static function tabelleEigeneAnzeigen($veranstaltung, $teams, $alleine_angezeigt, $praesentation = 0): void static function tabelleEigeneAnzeigen($veranstaltung, $teams, $alleine_angezeigt, $praesentation = 0): void
{ {
global $params; global $params;
// Um Platzierungen zu bestimmen, muss überhaupt eine Platzierung/konkrete K.O.-Runde existieren // Um Platzierungen zu bestimmen, muss überhaupt eine Platzierung/konkrete K.O.-Runde existieren
@@ -2098,7 +2115,7 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<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
} }
} }
static function teamsHeader($titel, $beschreibung, $saisons, $filter_saison_id): void static function teamsHeader($titel, $beschreibung, $saisons, $filter_saison_id): void
{ {
@@ -2147,13 +2164,13 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
} }
} }
/** /**
* @param $veranstaltung * @param $veranstaltung
* @param $rows * @param $rows
* @since 1.0.0 * @since 1.0.0
*/ */
static function mannschaften($veranstaltung, $rows): void static function mannschaften($veranstaltung, $rows): void
{ {
global $params; global $params;
if (!empty($veranstaltung)) { if (!empty($veranstaltung)) {
@@ -2305,9 +2322,9 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
?> ?>
<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
} }
/** /**
* @param $veranstaltung * @param $veranstaltung
* @param $team * @param $team
* @param $mitglieder * @param $mitglieder
@@ -2327,8 +2344,8 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
* @param $ist_vergangen * @param $ist_vergangen
* @since 1.0.0 * @since 1.0.0
*/ */
static function mannschaftDetails($veranstaltung, $team, $mitglieder, $mailverteiler, $mitglieder_statistiken, $teamansprechpartner, $begegnungen, $vorheriges_team_id, $naechstes_team_id, $team_moderator, $details_anzeigen, $ansprechpartner_anzeigen, $weitere_veranstaltungen, $veranstaltungsbezeichnungen, $spielberechtigungen, $ansicht_vereinigt, $ist_vergangen):void { static function mannschaftDetails($veranstaltung, $team, $mitglieder, $mailverteiler, $mitglieder_statistiken, $teamansprechpartner, $begegnungen, $vorheriges_team_id, $naechstes_team_id, $team_moderator, $details_anzeigen, $ansprechpartner_anzeigen, $weitere_veranstaltungen, $veranstaltungsbezeichnungen, $spielberechtigungen, $ansicht_vereinigt, $ist_vergangen):void {
global $params; global $params;
?> ?>
<table style="width: 100%; border: none; border-spacing: 0;"> <table style="width: 100%; border: none; border-spacing: 0;">
@@ -2631,6 +2648,8 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
echo htmlentities_utf8($team->name); echo htmlentities_utf8($team->name);
$anschrift = $team->strasse . (!empty($team->strasse) && (!empty($team->plz) || !empty($team->ortsname) || !empty($team->ortsteil)) ? ", " : "") . $team->plz . (!empty($team->plz) ? " " : "") . $team->ortsname . (!empty($team->ortsname) && !empty($team->ortsteil) ? "-" : "") . $team->ortsteil; $anschrift = $team->strasse . (!empty($team->strasse) && (!empty($team->plz) || !empty($team->ortsname) || !empty($team->ortsteil)) ? ", " : "") . $team->plz . (!empty($team->plz) ? " " : "") . $team->ortsname . (!empty($team->ortsname) && !empty($team->ortsteil) ? "-" : "") . $team->ortsteil;
echo "<br />" . htmlentities_utf8($anschrift); echo "<br />" . htmlentities_utf8($anschrift);
if (!empty($team->telefon))
echo "<br />" . htmlentities_utf8($team->telefon);
?> ?>
</td> </td>
</tr> </tr>
@@ -2748,18 +2767,18 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<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
} }
$veranstaltung_id = $row->veranstaltung_id; $veranstaltung_id = $row->veranstaltung_id;
?> ?>
<div class="uk-overflow-auto"> <div class="uk-overflow-auto">
<table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> <table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr> <tr>
<td nowrap class="contentheading<?php echo $params->get('pageclass_sfx'); ?>" <td nowrap class="contentheading<?php echo $params->get('pageclass_sfx'); ?>"
style="width: 100%"><?php echo Text::_('COM_SPORTSMANAGER_MATCHES'); ?><?php if (isset($veranstaltungsbezeichnungen[$veranstaltung_id])) echo " " . htmlentities_utf8($veranstaltungsbezeichnungen[$veranstaltung_id]); ?></td> style="width: 100%"><?php echo Text::_('COM_SPORTSMANAGER_MATCHES'); ?><?php if (isset($veranstaltungsbezeichnungen[$veranstaltung_id])) echo " " . htmlentities_utf8($veranstaltungsbezeichnungen[$veranstaltung_id]); ?></td>
</tr> </tr>
</table> </table>
</div> </div>
<div class="uk-overflow-auto"> <div class="uk-overflow-auto">
<table style="width: 720px; border-collapse: separate;" class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> <table style="width: 720px; border-collapse: separate;" 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'); ?>">
<?php <?php
@@ -3057,10 +3076,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<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
} }
} }
static function vereine($titel, $beschreibung, $rows, $organisationAnzeigen, $spalteMitgliederAnzeigen): void static function vereine($titel, $beschreibung, $rows, $organisationAnzeigen, $spalteMitgliederAnzeigen): void
{ {
global $params; global $params;
if (!empty($titel)) { ?> if (!empty($titel)) { ?>
<div <div
@@ -3095,13 +3114,13 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<th style='text-align: center; width: 120px;' nowrap>Vereinslogo</th> <th style='text-align: center; width: 120px;' nowrap>Vereinslogo</th>
<?php } ?> <?php } ?>
<th style='text-align: left;' nowrap><strong> <th style='text-align: left;' nowrap><strong>
<a href="verband/vereine?view=sportsmanager&task=sort_by_vereinsname"> <a href="<?php echo SportsManagerURL('&view=sportsmanager&task=sort_by_vereinsname'); ?>">
<?php echo Text::_('COM_SPORTSMANAGER_TEAM_NAME2'); ?> <?php echo Text::_('COM_SPORTSMANAGER_TEAM_NAME2'); ?>
</a> </a>
</strong></th> </strong></th>
<?php if ($spalteMitgliederAnzeigen){ ?> <?php if ($spalteMitgliederAnzeigen){ ?>
<th style='text-align: center;width: 120px;' nowrap><strong> <th style='text-align: center;width: 120px;' nowrap><strong>
<a href="verband/vereine?view=sportsmanager&task=sort_by_mitglieder"> <a href="<?php echo SportsManagerURL('&view=sportsmanager&task=sort_by_mitglieder'); ?>">
<?php echo Text::_('COM_SPORTSMANAGER_MEMBERS'); ?></a></strong></th> <?php echo Text::_('COM_SPORTSMANAGER_MEMBERS'); ?></a></strong></th>
<th style='text-align: left;' nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_TEAM_SEAT'); ?> <th style='text-align: left;' nowrap><strong><?php echo Text::_('COM_SPORTSMANAGER_TEAM_SEAT'); ?>
</strong></th> </strong></th>
@@ -3155,10 +3174,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
?> ?>
<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
} }
static function vereinDetails($verein, $mitglieder, $vereinsansprechpartner, $aktuelle_teams, $vorheriger_verein_id, $naechster_verein_id, $vereins_moderator, $details_anzeigen, $ansprechpartner_anzeigen): void static function vereinDetails($verein, $mitglieder, $vereinsansprechpartner, $aktuelle_teams, $vorheriger_verein_id, $naechster_verein_id, $vereins_moderator, $details_anzeigen, $ansprechpartner_anzeigen): void
{ {
global $params; global $params;
?> ?>
@@ -3405,7 +3424,7 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> <table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr> <tr>
<td nowrap class="contentheading<?php echo $params->get('pageclass_sfx'); ?>" <td nowrap class="contentheading<?php echo $params->get('pageclass_sfx'); ?>"
style="width: 100%"><?php echo Text::_('COM_SPORTSMANAGER_MEMBERS'); ?></td> style="width: 100%"><?php echo Text::_('COM_SPORTSMANAGER_ACTIVE_MEMBERS'); ?></td>
</tr> </tr>
</table> </table>
</div> </div>
@@ -3463,10 +3482,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
?> ?>
<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
} }
static function iCalBegegnungen($url): void static function iCalBegegnungen($url): void
{ {
global $params; global $params;
?> ?>
@@ -3486,10 +3505,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</div> </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
} }
static function vereinDetailsErgaenzung($mailverteiler, $fruehere_teams, $vereins_moderator): void static function vereinDetailsErgaenzung($mailverteiler, $fruehere_teams, $vereins_moderator): void
{ {
global $params; global $params;
if (count($fruehere_teams) > 0) { if (count($fruehere_teams) > 0) {
@@ -3588,10 +3607,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<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
} }
} }
static function spielorte($titel, $beschreibung, $rows): void static function spielorte($titel, $beschreibung, $rows): void
{ {
global $params; global $params;
if (!empty($titel)) { ?> if (!empty($titel)) { ?>
@@ -3691,10 +3710,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
?> ?>
<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
} }
static function spielort($spielort, $begegnung_zeitpunkt, $aktuelle_teams, $vorheriger_spielort_id, $naechster_spielort_id): void static function spielort($spielort, $begegnung_zeitpunkt, $aktuelle_teams, $vorheriger_spielort_id, $naechster_spielort_id): void
{ {
global $params; global $params;
?> ?>
@@ -3910,13 +3929,83 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<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
} }
} }
static function spieler($beschreibung, $rows, $sortierung, $statistik, $beginn, $kategorie, $filter, $veranstaltungid, $einstufungid, $veranstaltungen, $veranstalterid, $veranstalter, $einstufungen, $details_anzeigen): void static function spielverlegungen($titel, $beschreibung, $rows): void
{ {
global $params;
if (!empty($titel)) { ?>
<style>td{padding: 3px;}</style>
<div
class="componentheading<?php echo $params->get('pageclass_sfx'); ?>"><?php echo htmlentities_utf8($titel); ?></div><?php }
if (!empty($beschreibung)) {
?>
<div class="uk-overflow-auto">
<table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr>
<td><?php echo str_contains($beschreibung, ">") ? $beschreibung : htmlentities_utf8($beschreibung); ?></td>
</tr>
</table>
</div>
<?php
}
?>
<div class="uk-overflow-auto">
<table class="uk-table-shrink contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>" style='width: 1000px;'>
<tr class="sectiontableheader<?php echo $params->get('pageclass_sfx'); ?>">
<th nowrap style='text-align: center; width: 180px;'><STRONG><?php echo Text::_('COM_SPORTSMANAGER_COMPETITION'); ?></STRONG></th>
<th nowrap style='text-align: center; width: 200px;'><STRONG><?php echo Text::_('COM_SPORTSMANAGER_MATCH'); ?></STRONG></th>
<th nowrap style='text-align: center; width: 150px;'><STRONG><?php echo Text::_('COM_SPORTSMANAGER_OLD_DATE'); ?></STRONG></th>
<th nowrap style='text-align: center; width: 150px;'><STRONG><?php echo Text::_('COM_SPORTSMANAGER_NEW_DATE'); ?></STRONG></th>
<th nowrap style='text-align: left; width: 280px;'><STRONG><?php echo Text::_('COM_SPORTSMANAGER_COMMENT'); ?></STRONG></th>
</tr>
<?php
if (count($rows) > 0) {
$k = 0;
foreach ($rows as $row) {
?>
<tr class="sectiontableentry<?php echo $k + 1;
$k = ($k + 1) % 2; ?><?php echo $params->get('pageclass_sfx'); ?>">
<td nowrap style='text-align: center;'>
<?php echo htmlentities_utf8($row->Liga); ?>
</td>
<td nowrap style='text-align: center;'>
<?php
if ($row->Heim == $row->beantragt_von)
echo "<u>" . htmlentities_utf8($row->Heim) . "</u>";
else
echo htmlentities_utf8($row->Heim);
echo "<br>";
if ($row->Gast == $row->beantragt_von)
echo "<u>" . htmlentities_utf8($row->Gast) . "</u>";
else
echo htmlentities_utf8($row->Gast);
?>
</td>
<td nowrap style='text-align: center;'>
<?php echo str_replace(" ", "<br>", date('d.m.Y h:i', strtotime($row->Termin_alt))); ?>
</td>
<td nowrap style='text-align: center;'>
<?php echo $row->Termin_neu == "" ? "" : str_replace(" ", "<br>", date('d.m.Y h:i', strtotime($row->Termin_neu))); ?>
</td>
<td nowrap style='text-align: left;'>
<?php echo htmlentities_utf8($row->Begruendung_beantragt); ?>
</td>
</tr>
<?php
}
}
?>
</table></div>
<span class="article_seperator<?php echo $params->get('pageclass_sfx'); ?>">&nbsp;</span>
<?php
}
static function spieler($beschreibung, $rows, $sortierung, $statistik, $beginn, $kategorie, $filter, $veranstaltungid, $einstufungid, $veranstaltungen, $veranstalterid, $veranstalter, $einstufungen, $details_anzeigen): void
{
global $params; global $params;
if (!empty($beschreibung)) { if (!empty($beschreibung)) {
?> ?>
<div class="uk-overflow-auto"> <div class="uk-overflow-auto">
<table class="uk-table contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> <table class="uk-table contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
@@ -3925,11 +4014,11 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</tr> </tr>
</table> </table>
</div> </div>
<?php <?php
} }
$filter_anzeigen = !empty($kategorie) || (($statistik["einstufung_allgemein"] > 0 || $statistik["einstufung_einzel"] > 0 || $statistik["einstufung_doppel"] > 0) && !empty($einstufungid)) || (count($veranstaltungen) > 0 && !empty($veranstaltungid)) || (count($veranstalter) > 0 && !empty($veranstalterid)); $filter_anzeigen = !empty($kategorie) || (($statistik["einstufung_allgemein"] > 0 || $statistik["einstufung_einzel"] > 0 || $statistik["einstufung_doppel"] > 0) && !empty($einstufungid)) || (count($veranstaltungen) > 0 && !empty($veranstaltungid)) || (count($veranstalter) > 0 && !empty($veranstalterid));
?> ?>
<script type="text/javascript"> <script type="text/javascript">
function filter_anzeigen() { function filter_anzeigen() {
document.getElementById("row_kategorie").style.display = ''; document.getElementById("row_kategorie").style.display = '';
@@ -4050,19 +4139,19 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<input type="hidden" name="sortierung" value="<?php echo $sortierung; ?>"/> <input type="hidden" name="sortierung" value="<?php echo $sortierung; ?>"/>
<input type="hidden" name="task" value="spieler"/> <input type="hidden" name="task" value="spieler"/>
</form> </form>
<?php <?php
addOnLoad("document.adminForm.filter.focus();"); addOnLoad("document.adminForm.filter.focus();");
if (count($rows) > 0) { if (count($rows) > 0) {
$bilder_anzeigen = false; $bilder_anzeigen = false;
foreach ($rows as $spieler) { foreach ($rows as $spieler) {
if (bildHTML("spieler", !$details_anzeigen && $spieler->bild_ausblenden ? '' : $spieler->spieler_id, 30, 40, 0, 0, '', $spieler->geschlecht == 'M' ? 'm' : 'w') != null) { if (bildHTML("spieler", !$details_anzeigen && $spieler->bild_ausblenden ? '' : $spieler->spieler_id, 30, 40, 0, 0, '', $spieler->geschlecht == 'M' ? 'm' : 'w') != null) {
$bilder_anzeigen = true; $bilder_anzeigen = true;
break; break;
} }
} }
?> ?>
<div class="uk-overflow-auto"> <div class="uk-overflow-auto">
<table class="uk-table contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> <table class="uk-table 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'); ?>">
@@ -4242,8 +4331,8 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</div> </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
} }
else { else {
?> ?>
<div class="uk-overflow-auto"> <div class="uk-overflow-auto">
<table class="uk-table contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> <table class="uk-table contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
@@ -4256,21 +4345,25 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</div> </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
} }
} }
static function spielerDetails($spieler, $vereine, $veranstalter, $spieler_elo_verlauf_einzel, $spieler_elo_verlauf_doppel, static function spielerDetails($spieler, $vereine, $veranstalter, $spieler_elo_verlauf_einzel, $spieler_elo_verlauf_doppel,
$spielerNamen, $teamNamen, $veranstaltungBezeichnungen, $turnierdisziplinBezeichnungen, $spielerNamen, $teamNamen, $veranstaltungBezeichnungen, $turnierdisziplinBezeichnungen,
$individualwettbewerbBezeichnungen, $ranglistenplatzierungen, $turnierplatzierungen, $individualwettbewerbBezeichnungen, $ranglistenplatzierungen, $turnierplatzierungen,
$teams, $sortierung, $vorheriger_spieler_id, $naechster_spieler_id, $elo_detailliert, $teams, $sortierung, $vorheriger_spieler_id, $naechster_spieler_id, $elo_detailliert,
$statistik, $beginn, $kategorie, $einstufungen, $filter, $veranstaltungid, $veranstalterid, $statistik, $beginn, $kategorie, $einstufungen, $filter, $veranstaltungid, $veranstalterid,
$einstufungid, $unabhaengige_ansicht, $details_anzeigen, $lizenz_anzeigen):void { $einstufungid, $unabhaengige_ansicht, $details_anzeigen, $lizenz_anzeigen):void {
global $params; global $params;
if (count($vereine) == 0){echo "Sie haben keine Berechtigung auf diesen Datensatz!!!"; die;} if ((count($vereine) == 0) && !benutzerZugriff("spieler_aendern") && !benutzerVeranstalterModerator() && !benutzerVereinModerator())
{
echo "Sie haben keine Berechtigung auf diesen Datensatz!!!";
die;
}
?> ?>
<table style="width: 100%; border: none; border-spacing: 0; padding: 3px"> <table style="width: 100%; border: none; border-spacing: 0; padding: 3px">
<tr> <tr>
<?php <?php
if ($vorheriger_spieler_id != 0 || $naechster_spieler_id != 0) { if ($vorheriger_spieler_id != 0 || $naechster_spieler_id != 0) {
@@ -4305,9 +4398,9 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
} }
?> ?>
</tr> </tr>
</table> </table>
<div class="uk-overflow-auto"> <div class="uk-overflow-auto">
<table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> <table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr> <tr>
<td colspan="3"> <td colspan="3">
@@ -4317,11 +4410,11 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</td> </td>
</tr> </tr>
</table> </table>
</div> </div>
<?php <?php
$bild = bildHTML("spieler", !$details_anzeigen && $spieler->bild_ausblenden ? '' : $spieler->spieler_id, 0, 0, 180, 240, 'border="1"', $spieler->geschlecht == 'M' ? 'm' : 'w'); $bild = bildHTML("spieler", !$details_anzeigen && $spieler->bild_ausblenden ? '' : $spieler->spieler_id, 0, 0, 180, 240, 'border="1"', $spieler->geschlecht == 'M' ? 'm' : 'w');
if ($bild != null) { if ($bild != null) {
?> ?>
<div class="uk-overflow-auto"> <div class="uk-overflow-auto">
<table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> <table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
@@ -4332,18 +4425,18 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</div> </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
} }
?> ?>
<div class="uk-overflow-auto"> <div class="uk-overflow-auto">
<table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> <table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr> <tr>
<td nowrap class="contentheading<?php echo $params->get('pageclass_sfx'); ?>" <td nowrap class="contentheading<?php echo $params->get('pageclass_sfx'); ?>"
style="width: 100%"><h2><?php echo Text::_('COM_SPORTSMANAGER_INFORMATION'); ?></h2></td> style="width: 100%"><h2><?php echo Text::_('COM_SPORTSMANAGER_INFORMATION'); ?></h2></td>
</tr> </tr>
</table> </table>
</div> </div>
<div class="uk-overflow-auto"> <div class="uk-overflow-auto">
<table <table
class="uk-table-shrink uk-table-hover uk-table-middle contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> class="uk-table-shrink uk-table-hover uk-table-middle contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<?php <?php
@@ -4445,7 +4538,7 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<td nowrap style="text-align: right"> <td nowrap style="text-align: right">
<?php <?php
foreach ($vereine as $verein) foreach ($vereine as $verein)
echo htmlentities_utf8($verein->vereinsname) . "<br />"; echo htmlentities_utf8($verein->vereinsname) . " (" . htmlentities_utf8($verein->status) . ")<br />";
?> ?>
</td> </td>
</tr> </tr>
@@ -4501,13 +4594,13 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
} }
?> ?>
</table> </table>
</div> </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
if (count($ranglistenplatzierungen) > 0) { if (count($ranglistenplatzierungen) > 0) {
?> ?>
<div class="uk-overflow-auto"> <div class="uk-overflow-auto">
<table class="uk-table-middle contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> <table class="uk-table-middle contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr> <tr>
<td class="contentheading<?php echo $params->get('pageclass_sfx'); ?>" <td class="contentheading<?php echo $params->get('pageclass_sfx'); ?>"
@@ -4515,9 +4608,9 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</td> </td>
</tr> </tr>
</table> </table>
</div> </div>
<div class="uk-overflow-auto"> <div class="uk-overflow-auto">
<div class="uk-overflow-auto"> <div class="uk-overflow-auto">
<table <table
class="uk-table-hover uk-table-middle rangliste-width contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>"> class="uk-table-hover uk-table-middle rangliste-width contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
@@ -5089,10 +5182,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<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
} }
} }
function begegnungVerlegen($veranstaltung, $begegnung, $heim_team, $gast_team, $verlegen_aktionen, $berechtigt_fuer_akzeptieren, $aus_uebersicht, $vorschlagendes_team_id): void function begegnungVerlegen($veranstaltung, $begegnung, $heim_team, $gast_team, $verlegen_aktionen, $berechtigt_fuer_akzeptieren, $aus_uebersicht, $vorschlagendes_team_id): void
{ {
global $params; global $params;
?> ?>
<div <div
@@ -5101,11 +5194,7 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<form action="<?php echo SportsManagerURL(); ?>" method="post" name="adminForm" id="adminForm"> <form action="<?php echo SportsManagerURL(); ?>" method="post" name="adminForm" id="adminForm">
<div class="uk-overflow-auto"> <div class="uk-overflow-auto">
<table class="uk-table" style="width: 100%"> <table style="width: 100%">
<tr>
<td nowrap style="width: 60%; vertical-align: top">
<div class="uk-overflow-auto">
<table class="uk-table" style="width: 100%">
<tr> <tr>
<td nowrap style="width: 20%; text-align: right"> <td nowrap style="width: 20%; text-align: right">
<?php echo Text::_('COM_SPORTSMANAGER_ORIGINALY_SCHEDULED'); ?>: <?php echo Text::_('COM_SPORTSMANAGER_ORIGINALY_SCHEDULED'); ?>:
@@ -5173,7 +5262,22 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
return anzahl_termine >= termine_minimal; return anzahl_termine >= termine_minimal;
} }
</script> </script>
<?PHP if ($veranstaltung->begruendung_erforderlich && empty($verlegen_aktionen)){ ?>
<tr>
<td nowrap style="width: 20%; text-align: right">
<label
for="reason"><?php echo Text::_('COM_SPORTSMANAGER_REASON_GAME_APPOINTMENT'); ?>
:</label>
</td>
<td nowrap>
<input class="inputbox" type="text"
name="verlegungsgrund"
id="reason"
size="100" maxlength="255"/>
</td>
</tr>
<?php <?php
}
for ($termin = 1; for ($termin = 1;
$termin <= $anzahl_moegliche_termine; $termin <= $anzahl_moegliche_termine;
$termin++) { $termin++) {
@@ -5197,7 +5301,7 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</script> </script>
<select <select
aria-label="<?php echo Text::_('COM_SPORTSMANAGER_ARIA_LABEL_PROPOSAL_DAY') . ' ' . $termin ?>" aria-label="<?php echo Text::_('COM_SPORTSMANAGER_ARIA_LABEL_PROPOSAL_DAY') . ' ' . $termin ?>"
class="uk-select uk-form-width-medium" class="uk-select uk-form-width-small"
name="datum_tag_<?php echo $termin; ?>" size="1" name="datum_tag_<?php echo $termin; ?>" size="1"
onChange="termin_changed_<?php echo $termin; ?>();"> onChange="termin_changed_<?php echo $termin; ?>();">
<?php <?php
@@ -5213,7 +5317,7 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</select> </select>
<select <select
aria-label="<?php echo Text::_('COM_SPORTSMANAGER_ARIA_LABEL_PROPOSAL_MONTH') . ' ' . $termin ?>" aria-label="<?php echo Text::_('COM_SPORTSMANAGER_ARIA_LABEL_PROPOSAL_MONTH') . ' ' . $termin ?>"
class="uk-select uk-form-width-medium" class="uk-select uk-form-width-small"
name="datum_monat_<?php echo $termin; ?>" size="1" name="datum_monat_<?php echo $termin; ?>" size="1"
onChange="termin_changed_<?php echo $termin; ?>();"> onChange="termin_changed_<?php echo $termin; ?>();">
<?php <?php
@@ -5227,7 +5331,7 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</select> </select>
<select <select
aria-label="<?php echo Text::_('COM_SPORTSMANAGER_ARIA_LABEL_PROPOSAL_YEAR') . ' ' . $termin ?>" aria-label="<?php echo Text::_('COM_SPORTSMANAGER_ARIA_LABEL_PROPOSAL_YEAR') . ' ' . $termin ?>"
class="uk-select uk-form-width-medium" class="uk-select uk-form-width-small"
name="datum_jahr_<?php echo $termin; ?>" size="1" name="datum_jahr_<?php echo $termin; ?>" size="1"
onChange="termin_changed_<?php echo $termin; ?>();"> onChange="termin_changed_<?php echo $termin; ?>();">
<?php <?php
@@ -5240,7 +5344,7 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</select> </select>
<select <select
aria-label="<?php echo Text::_('COM_SPORTSMANAGER_ARIA_LABEL_PROPOSAL_HOUR') . ' ' . $termin ?>" aria-label="<?php echo Text::_('COM_SPORTSMANAGER_ARIA_LABEL_PROPOSAL_HOUR') . ' ' . $termin ?>"
class="uk-select uk-form-width-medium" class="uk-select uk-form-width-small"
name="uhrzeit_stunden_<?php echo $termin; ?>" size="1" name="uhrzeit_stunden_<?php echo $termin; ?>" size="1"
onChange="termin_changed_<?php echo $termin; ?>();"> onChange="termin_changed_<?php echo $termin; ?>();">
<?php <?php
@@ -5255,7 +5359,7 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</select> </select>
<select <select
aria-label="<?php echo Text::_('COM_SPORTSMANAGER_ARIA_LABEL_PROPOSAL_MINUTE') . ' ' . $termin ?>" aria-label="<?php echo Text::_('COM_SPORTSMANAGER_ARIA_LABEL_PROPOSAL_MINUTE') . ' ' . $termin ?>"
class="uk-select uk-form-width-medium" class="uk-select uk-form-width-small"
name="uhrzeit_minuten_<?php echo $termin; ?>" size="1" name="uhrzeit_minuten_<?php echo $termin; ?>" size="1"
onChange="termin_changed_<?php echo $termin; ?>();"> onChange="termin_changed_<?php echo $termin; ?>();">
<?php <?php
@@ -5346,10 +5450,6 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
?> ?>
</table> </table>
</div> </div>
</td>
</tr>
</table>
</div>
<?php <?php
if ($berechtigt_anfordern) { if ($berechtigt_anfordern) {
@@ -5388,10 +5488,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</form> </form>
<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
} }
static function turniervoranmeldungenHeader($titel, $beschreibung): void static function turniervoranmeldungenHeader($titel, $beschreibung): void
{ {
global $params; global $params;
if (!empty($titel)) { ?> if (!empty($titel)) { ?>
<div <div
@@ -5407,10 +5507,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</div> </div>
<?php <?php
} }
} }
static function turniervoranmeldungen($disziplin, $meldungenSpielerSortiert, $meldungenSpielerIds, $meldungenSpielerGeschlechter, $meldungenSpielerNamen, $meldungenSpielerBilderAusblenden, $details_anzeigen): void static function turniervoranmeldungen($disziplin, $meldungenSpielerSortiert, $meldungenSpielerIds, $meldungenSpielerGeschlechter, $meldungenSpielerNamen, $meldungenSpielerBilderAusblenden, $details_anzeigen): void
{ {
global $params; global $params;
?> ?>
@@ -5584,10 +5684,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
?> ?>
<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
} }
static function spielerstatistikenHeader($titel, $beschreibung, $saisons, $filter_saison_id): void static function spielerstatistikenHeader($titel, $beschreibung, $saisons, $filter_saison_id): void
{ {
global $params; global $params;
//SpielerstatistikenHeader //SpielerstatistikenHeader
if (!empty($titel)) { ?> if (!empty($titel)) { ?>
@@ -5633,10 +5733,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</form> </form>
<?php <?php
} }
} }
static function spielerstatistik($spielerstatistik, $spielerstatistik_punkte, $allein_angezeigt, $vorherige_spielerstatistik_id, $naechste_spielerstatistik_id, $details_anzeigen): void static function spielerstatistik($spielerstatistik, $spielerstatistik_punkte, $allein_angezeigt, $vorherige_spielerstatistik_id, $naechste_spielerstatistik_id, $details_anzeigen): void
{ {
global $params; global $params;
if ($allein_angezeigt) { if ($allein_angezeigt) {
?> ?>
@@ -5912,10 +6012,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<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
} }
} }
static function individualwettbewerbHeader($titel, $beschreibung, $saisons, $filter_saison_id): void static function individualwettbewerbHeader($titel, $beschreibung, $saisons, $filter_saison_id): void
{ {
global $params; global $params;
if (!empty($titel)) { ?> if (!empty($titel)) { ?>
@@ -5961,10 +6061,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</form> </form>
<?php <?php
} }
} }
static function individualwettbewerb($individualwettbewerb, $spiele, $platzierungen, $allein_angezeigt, $vorheriger_individualwettbewerb_id, $naechster_individualwettbewerb_id, $details_anzeigen): void static function individualwettbewerb($individualwettbewerb, $spiele, $platzierungen, $allein_angezeigt, $vorheriger_individualwettbewerb_id, $naechster_individualwettbewerb_id, $details_anzeigen): void
{ {
global $params; global $params;
if (!empty($vorheriger_individualwettbewerb_id) || !empty($naechster_individualwettbewerb_id)) { if (!empty($vorheriger_individualwettbewerb_id) || !empty($naechster_individualwettbewerb_id)) {
@@ -6370,10 +6470,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<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
} }
} }
static function individualwettbewerbSpiele($individualwettbewerbe_bezeichnungen, $spiele, $details_anzeigen): void static function individualwettbewerbSpiele($individualwettbewerbe_bezeichnungen, $spiele, $details_anzeigen): void
{ {
global $params; global $params;
if (!empty($spiele)) { if (!empty($spiele)) {
@@ -6537,10 +6637,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<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
} }
} }
static function eloRanglistenHeader($titel, $beschreibung): void static function eloRanglistenHeader($titel, $beschreibung): void
{ {
global $params; global $params;
if (!empty($titel)) { ?> if (!empty($titel)) { ?>
@@ -6557,10 +6657,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</div> </div>
<?php <?php
} }
} }
static function eloRangliste($spieler, $typ, $kategorie, $allein_angezeigt, $vorherige_ansicht, $naechste_ansicht, $details_anzeigen): void static function eloRangliste($spieler, $typ, $kategorie, $allein_angezeigt, $vorherige_ansicht, $naechste_ansicht, $details_anzeigen): void
{ {
global $params; global $params;
if ($kategorie == 'H') if ($kategorie == 'H')
@@ -6741,10 +6841,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<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
} }
} }
static function ranglistenHeader($titel, $beschreibung, $saisons, $filter_saison_id): void static function ranglistenHeader($titel, $beschreibung, $saisons, $filter_saison_id): void
{ {
global $params; global $params;
@@ -6791,10 +6891,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
</form> </form>
<?php <?php
} }
} }
static function rangliste($rangliste, $rangliste_punkte, $allein_angezeigt, $details_anzeigen): void static function rangliste($rangliste, $rangliste_punkte, $allein_angezeigt, $details_anzeigen): void
{ {
?> ?>
<style>td{padding: 3px;}</style> <style>td{padding: 3px;}</style>
<?php <?php
@@ -6953,10 +7053,10 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<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
} }
} }
static function ranglistenpunkte($rangliste, $rangliste_punkte, $turnierdisziplinen, $streichergebnisse): void static function ranglistenpunkte($rangliste, $rangliste_punkte, $turnierdisziplinen, $streichergebnisse): void
{ {
global $params; global $params;
?> ?>
@@ -7055,7 +7155,7 @@ static function tabelleAnzeigen($veranstaltung, $modus, $teams, $spieltag, $spie
<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
} }
} }
} }
?> ?>
File diff suppressed because it is too large Load Diff
@@ -40,6 +40,9 @@ class HTML_sportsmanager_ticker
continue; continue;
else else
$status = 'upcoming'; $status = 'upcoming';
if ($begegnung->spieltag_titel)
$spieltag = $begegnung->spieltag_titel;
else
$spieltag = Rundenbezeichnung($begegnung->spieltag, $begegnung->unterteilung == 0, false, true); $spieltag = Rundenbezeichnung($begegnung->spieltag, $begegnung->unterteilung == 0, false, true);
$gewinner = $begegnung->heim_spielpunkte > $begegnung->gast_spielpunkte ? 1 : ($begegnung->heim_spielpunkte < $begegnung->gast_spielpunkte ? 2 : 0); $gewinner = $begegnung->heim_spielpunkte > $begegnung->gast_spielpunkte ? 1 : ($begegnung->heim_spielpunkte < $begegnung->gast_spielpunkte ? 2 : 0);
$heim_name = $begegnung->heim_name; $heim_name = $begegnung->heim_name;
@@ -1,4 +1,4 @@
; Sports Manager (C) 2006-2020, Sven Nickel (Test) ; Sports Manager (C) 2006-2020, Sven Nickel (Test)
COM_SPORTSMANAGER="Sports Manager" COM_SPORTSMANAGER="Sports Manager"
COM_SPORTSMANAGER_PLAYERS="Spieler" COM_SPORTSMANAGER_PLAYERS="Spieler"
COM_SPORTSMANAGER_CLUBS="Vereine" COM_SPORTSMANAGER_CLUBS="Vereine"
@@ -39,6 +39,7 @@ COM_SPORTSMANAGER_ORGANISATION="Organisation"
COM_SPORTSMANAGER_TEAM_MEMBERS="Mannschaftsmitglieder" COM_SPORTSMANAGER_TEAM_MEMBERS="Mannschaftsmitglieder"
COM_SPORTSMANAGER_TEAM_MEMBERS2=Vereinsmitglieder COM_SPORTSMANAGER_TEAM_MEMBERS2=Vereinsmitglieder
COM_SPORTSMANAGER_MEMBERS="Mitglieder" COM_SPORTSMANAGER_MEMBERS="Mitglieder"
COM_SPORTSMANAGER_ACTIVE_MEMBERS="Aktive Mitglieder"
COM_SPORTSMANAGER_TEAMS="Mannschaften" COM_SPORTSMANAGER_TEAMS="Mannschaften"
COM_SPORTSMANAGER_CURRENT_TEAMS="Aktuelle Mannschaften" COM_SPORTSMANAGER_CURRENT_TEAMS="Aktuelle Mannschaften"
COM_SPORTSMANAGER_PREVIOUS_TEAMS="Fr&uuml;here Mannschaften" COM_SPORTSMANAGER_PREVIOUS_TEAMS="Fr&uuml;here Mannschaften"
@@ -264,6 +265,7 @@ COM_SPORTSMANAGER_IN="in"
COM_SPORTSMANAGER_NATIONAL="Nationale" COM_SPORTSMANAGER_NATIONAL="Nationale"
COM_SPORTSMANAGER_INTERNATIONAL="Internationale" COM_SPORTSMANAGER_INTERNATIONAL="Internationale"
COM_SPORTSMANAGER_PLAYER_NUMBER_SHORT="Spielernr." COM_SPORTSMANAGER_PLAYER_NUMBER_SHORT="Spielernr."
COM_SPORTSMANAGER_ASSOCIATION_SHORT_NAME="Verbands-Kürzel"
COM_SPORTSMANAGER_BASIC_PLAYER_NUMBER_SHORT="Basis-Spielernr." COM_SPORTSMANAGER_BASIC_PLAYER_NUMBER_SHORT="Basis-Spielernr."
COM_SPORTSMANAGER_MESSAGES="Meldungen" COM_SPORTSMANAGER_MESSAGES="Meldungen"
COM_SPORTSMANAGER_TOURNAMENT_PLACEMENT="Turnierplatzierungen" COM_SPORTSMANAGER_TOURNAMENT_PLACEMENT="Turnierplatzierungen"
@@ -319,6 +321,7 @@ COM_SPORTSMANAGER_VIEW_LEAST_MEMBER_COUNT="Mindest Mitgliederzahl zeigen (Verein
COM_SPORTSMANAGER_SHOW_ORGANISATION="Spalte Verband zeigen (Vereine)" COM_SPORTSMANAGER_SHOW_ORGANISATION="Spalte Verband zeigen (Vereine)"
COM_SPORTSMANAGER_SHOW_MEMBER_COUNT="Spalte Mitglieder Zeigen (Vereine)" COM_SPORTSMANAGER_SHOW_MEMBER_COUNT="Spalte Mitglieder Zeigen (Vereine)"
COM_SPORTSMANAGER_SHOW_TOURNAMENT_BRACKET="Turnierbaum anzeigen" COM_SPORTSMANAGER_SHOW_TOURNAMENT_BRACKET="Turnierbaum anzeigen"
COM_SPORTSMANAGER_USE_DISCIPLINARY_FINE="Ordnungsstrafen verwenden"
COM_SPORTSMANAGER_PLAYER_DETAILS="Spielerdetails" COM_SPORTSMANAGER_PLAYER_DETAILS="Spielerdetails"
COM_SPORTSMANAGER_PLAYER_LIST_DETAILS="Spielerliste/-details" COM_SPORTSMANAGER_PLAYER_LIST_DETAILS="Spielerliste/-details"
COM_SPORTSMANAGER_PLAYER_EDIT="Spielerdaten durch Organisations-/Vereinsansprechpartner bearbeiten" COM_SPORTSMANAGER_PLAYER_EDIT="Spielerdaten durch Organisations-/Vereinsansprechpartner bearbeiten"
@@ -361,6 +364,7 @@ COM_SPORTSMANAGER_STATISTIK="Statistik"
COM_SPORTSMANAGER_PLAYERS_ACTIVE="Spieler aktiv" COM_SPORTSMANAGER_PLAYERS_ACTIVE="Spieler aktiv"
COM_SPORTSMANAGER_RESTRICTED_PLAYERS="Spieler eingeschr&auml;nkt" COM_SPORTSMANAGER_RESTRICTED_PLAYERS="Spieler eingeschr&auml;nkt"
COM_SPORTSMANAGER_PLAYER_PASSIV="Spieler passiv" COM_SPORTSMANAGER_PLAYER_PASSIV="Spieler passiv"
COM_SPORTSMANAGER_PLAYER_UNATTACHED="Spieler vereinslos"
COM_SPORTSMANAGER_MEN_ACTIVE="Herren aktiv" COM_SPORTSMANAGER_MEN_ACTIVE="Herren aktiv"
COM_SPORTSMANAGER_WOMEN_ACTIVE="Damen aktiv" COM_SPORTSMANAGER_WOMEN_ACTIVE="Damen aktiv"
COM_SPORTSMANAGER_JUNIOR_ACTIVE="Junioren aktiv" COM_SPORTSMANAGER_JUNIOR_ACTIVE="Junioren aktiv"
@@ -411,7 +415,7 @@ COM_SPORTSMANAGER_EXPORT="Exportieren"
COM_SPORTSMANAGER_INTERNATIONAL_PLAYERS="Spieler (international)" COM_SPORTSMANAGER_INTERNATIONAL_PLAYERS="Spieler (international)"
COM_SPORTSMANAGER_COUNTRY_CODE="Landeskennung" COM_SPORTSMANAGER_COUNTRY_CODE="Landeskennung"
COM_SPORTSMANAGER_IMPORT="Importieren" COM_SPORTSMANAGER_IMPORT="Importieren"
COM_SPORTSMANAGER_IMPORT_MESSAGE="Im Import sind ausschlie&szlig;lich Spielerdaten zum Verein %s enthalten. Soll ausschlie&szlig;lich der Spielerbestand des einen Vereins aktualisiert werden, muss der zugeh&ouml;rige Verein unten ausgew&auml;hlt werden. Beinhaltet der Import den gesamten Spielerbestand einer Organisation, muss die zugeh&ouml;rige Organisation gew&auml;hlt werden." COM_SPORTSMANAGER_IMPORT_MESSAGE="Im Import sind ausschlie&szlig;lich Spielerdaten zum Verein %s enthalten. Soll ausschlie&szlig;lich der Spielerbestand des einen Vereins aktualisiert werden, muss der zugeh&ouml;rige Verein unten ausgew&auml;hlt werden. Beinhaltet der Import den gesamten Spielerbestand einer Organisation, muss die zugeh&ouml;rige Organisation gew&auml;hlt werden.<br />Bei schon vorhandener Lizenznummer wird die Lizenznummer und das Geburtsjahr nicht &uuml;berschrieben!"
COM_SPORTSMANAGER_CHECK="Pr&uuml;fen" COM_SPORTSMANAGER_CHECK="Pr&uuml;fen"
COM_SPORTSMANAGER_IMPORT_CONFLICTS_MESSAGE="Im Import sind Fehler oder Konflikte enthalten, die im Vorfeld manuell beseitigt werden müssen." COM_SPORTSMANAGER_IMPORT_CONFLICTS_MESSAGE="Im Import sind Fehler oder Konflikte enthalten, die im Vorfeld manuell beseitigt werden müssen."
COM_SPORTSMANAGER_IMPORT_DUPLICATE_MESSAGE="Versuch, Spielernr. auf eine bereits für einen anderen Spieler vergebene Spielernr. zu ändern" COM_SPORTSMANAGER_IMPORT_DUPLICATE_MESSAGE="Versuch, Spielernr. auf eine bereits für einen anderen Spieler vergebene Spielernr. zu ändern"
@@ -512,7 +516,6 @@ COM_SPORTSMANAGER_ADD_POINTS_TABLE="Punktetabelle hinzuf&uuml;gen"
COM_SPORTSMANAGER_ADD_FUNCTION="Funktion hinzuf&uuml;gen" COM_SPORTSMANAGER_ADD_FUNCTION="Funktion hinzuf&uuml;gen"
COM_SPORTSMANAGER_PARTICIPANT="Teilnehmer" COM_SPORTSMANAGER_PARTICIPANT="Teilnehmer"
COM_SPORTSMANAGER_FUNCTION="Funktion" COM_SPORTSMANAGER_FUNCTION="Funktion"
COM_SPORTSMANAGER_MULTIPLIER="Multiplikator"
COM_SPORTSMANAGER_MAXIMUM="maximal" COM_SPORTSMANAGER_MAXIMUM="maximal"
COM_SPORTSMANAGER_CONTRACTION="K&uuml;rzel" COM_SPORTSMANAGER_CONTRACTION="K&uuml;rzel"
COM_SPORTSMANAGER_ELIGIBLE_ORGANIZERS="Berechtigte f&uuml;r Veranstalter" COM_SPORTSMANAGER_ELIGIBLE_ORGANIZERS="Berechtigte f&uuml;r Veranstalter"
@@ -573,7 +576,7 @@ COM_SPORTSMANAGER_PRIVATE_PLAYER_DATA="Private Spielerdaten in Vereins- und Mann
COM_SPORTSMANAGER_ASSOCIATIONS_MEMBERSHIPS_MANAGE="Vereine und Mitgliedschaften verwalten" COM_SPORTSMANAGER_ASSOCIATIONS_MEMBERSHIPS_MANAGE="Vereine und Mitgliedschaften verwalten"
COM_SPORTSMANAGER_MANAGE_CLASSIFICATIONS="Einstufungen verwalten" COM_SPORTSMANAGER_MANAGE_CLASSIFICATIONS="Einstufungen verwalten"
COM_SPORTSMANAGER_MANAGE_TEAM_PLANS="Mannschaftsspielpläne verwalten" COM_SPORTSMANAGER_MANAGE_TEAM_PLANS="Mannschaftsspielpläne verwalten"
COM_SPORTSMANAGER_MANAGE_RULES_POSTPONEMENT="Verschieberegeln verwalten" COM_SPORTSMANAGER_MANAGE_RULES_POSTPONEMENT="Spielverlegungen/Verschieberegeln verwalten"
COM_SPORTSMANAGER_MANAGE_VENUES="Spielorte verwalten" COM_SPORTSMANAGER_MANAGE_VENUES="Spielorte verwalten"
COM_SPORTSMANAGER_MANAGE_TEAM_COMPETITIONS="Mannschaftswettbewerbe verwalten" COM_SPORTSMANAGER_MANAGE_TEAM_COMPETITIONS="Mannschaftswettbewerbe verwalten"
COM_SPORTSMANAGER_MANAGE_PLAYER_STATISTICS="Spielerstastistiken verwalten" COM_SPORTSMANAGER_MANAGE_PLAYER_STATISTICS="Spielerstastistiken verwalten"
@@ -808,7 +811,6 @@ COM_SPORTSMANAGER_APPLIED_FOR="Beantragt"
COM_SPORTSMANAGER_DECLINED="Abgelehnt" COM_SPORTSMANAGER_DECLINED="Abgelehnt"
COM_SPORTSMANAGER_DATE_DETAILS="Termin: Details" COM_SPORTSMANAGER_DATE_DETAILS="Termin: Details"
COM_SPORTSMANAGER_ADDITIONS="Zus&auml;tze" COM_SPORTSMANAGER_ADDITIONS="Zus&auml;tze"
COM_SPORTSMANAGER_ADDITIONAL_INFORMATION="Weitere Informationen"
COM_SPORTSMANAGER_PUBLIC_EMAIL="E-Mail &ouml;ffentlich" COM_SPORTSMANAGER_PUBLIC_EMAIL="E-Mail &ouml;ffentlich"
COM_SPORTSMANAGER_EMAIL_WITH_CHANGES="E-Mail bei &Auml;nderungen" COM_SPORTSMANAGER_EMAIL_WITH_CHANGES="E-Mail bei &Auml;nderungen"
COM_SPORTSMANAGER_ACTION_TYPE="Aktionstyp" COM_SPORTSMANAGER_ACTION_TYPE="Aktionstyp"
@@ -884,6 +886,9 @@ COM_SPORTSMANAGER_INITIAL_APPOINTMENT_SUGGESTIONS="Initiale Terminvorschl&auml;g
COM_SPORTSMANAGER_REQUESTING_TEAM="Beantragende Mannschaft" COM_SPORTSMANAGER_REQUESTING_TEAM="Beantragende Mannschaft"
COM_SPORTSMANAGER_OPPONENT_TEAM="Gegnerische Mannschaft" COM_SPORTSMANAGER_OPPONENT_TEAM="Gegnerische Mannschaft"
COM_SPORTSMANAGER_AGAINST_PROPOSALS_ALLOWED="Gegensvorschl&auml;ge zul&auml;ssig" COM_SPORTSMANAGER_AGAINST_PROPOSALS_ALLOWED="Gegensvorschl&auml;ge zul&auml;ssig"
COM_SPORTSMANAGER_REASON_REQUIRED="Begr&uuml;ndung erforderlich"
COM_SPORTSMANAGER_CLUB_ENTITLEMENT="Berechtigung Vereine"
COM_SPORTSMANAGER_ASSOCIATION_ENTITLEMENT="Berechtigung Verband"
COM_SPORTSMANAGER_LEAD_TIME="Vorlaufzeit" COM_SPORTSMANAGER_LEAD_TIME="Vorlaufzeit"
COM_SPORTSMANAGER_APPOINTMENT_PROPOSALS_MINIMAL="Terminvorschl&auml;ge minimal" COM_SPORTSMANAGER_APPOINTMENT_PROPOSALS_MINIMAL="Terminvorschl&auml;ge minimal"
COM_SPORTSMANAGER_APPOINTMENT_PROPOSALS_MAXIMUM="Terminvorschl&auml;ge maximal" COM_SPORTSMANAGER_APPOINTMENT_PROPOSALS_MAXIMUM="Terminvorschl&auml;ge maximal"
@@ -893,6 +898,8 @@ COM_SPORTSMANAGER_OPTIONAL_BUT_SAME_IN_DOUBLES="Optional, aber im Doppel keiner
COM_SPORTSMANAGER_REQUIRED="Erforderlich" COM_SPORTSMANAGER_REQUIRED="Erforderlich"
COM_SPORTSMANAGER_RESULT_ONLY="Nur Ergebnis" COM_SPORTSMANAGER_RESULT_ONLY="Nur Ergebnis"
COM_SPORTSMANAGER_GAME_NUMBER="Spiel %d" COM_SPORTSMANAGER_GAME_NUMBER="Spiel %d"
COM_SPORTSMANAGER_LABEL_GAME_NUMBER="Spiel Nr"
COM_SPORTSMANAGER_LABEL_GAME_TITLE="Spieltag Titel"
COM_SPORTSMANAGER_EMAIL_SHIFT_GAME_APPOINTMENT_SUBJECT="%s vs %s: Spieltermin verlegen" COM_SPORTSMANAGER_EMAIL_SHIFT_GAME_APPOINTMENT_SUBJECT="%s vs %s: Spieltermin verlegen"
COM_SPORTSMANAGER_EMAIL_SHIFT_GAME_APPOINTMENT_BODY="Zur Begegnung %s gegen %s am %s in %s wird von %s der Spieltermin verschoben.\n\nAlternative Termine:\n\n" COM_SPORTSMANAGER_EMAIL_SHIFT_GAME_APPOINTMENT_BODY="Zur Begegnung %s gegen %s am %s in %s wird von %s der Spieltermin verschoben.\n\nAlternative Termine:\n\n"
COM_SPORTSMANAGER_EMAIL_SHIFT_GAME_APPOINTMENT_REQUESTED_BODY="Zur Begegnung %s gegen %s am %s in %s wird von %s der Spieltermin verschoben.\n\nBitte alternative Termine vorschlagen unter %s" COM_SPORTSMANAGER_EMAIL_SHIFT_GAME_APPOINTMENT_REQUESTED_BODY="Zur Begegnung %s gegen %s am %s in %s wird von %s der Spieltermin verschoben.\n\nBitte alternative Termine vorschlagen unter %s"
@@ -1014,3 +1021,53 @@ COM_SPORTSMANAGER_NUM_REQUESTED_SHIFTS="Verschiebungen"
COM_SPORTSMANAGER_NUM_REQUESTED_SHFITS_TOOLTIP="Spielverschiebungen durch diese Mannschaft" COM_SPORTSMANAGER_NUM_REQUESTED_SHFITS_TOOLTIP="Spielverschiebungen durch diese Mannschaft"
COM_SPORTSMANAGER_GAME_RESULT_DELAYS="Verzögerung" COM_SPORTSMANAGER_GAME_RESULT_DELAYS="Verzögerung"
COM_SPORTSMANAGER_USE_EMAIL_REMINDERS="Verwende Email Erinnerungen" COM_SPORTSMANAGER_USE_EMAIL_REMINDERS="Verwende Email Erinnerungen"
COM_SPORTSMANAGER_RULEBOOKS="Regelwerke"
COM_SPORTSMANAGER_RULEBOOK="Regelwerk"
COM_SPORTSMANAGER_RULE_SHORT="SPO"
COM_SPORTSMANAGER_FEE_SHORT="GO"
COM_SPORTSMANAGER_RULE_LONG="Paragraph SPO"
COM_SPORTSMANAGER_FEE_LONG="Paragraph GO"
COM_SPORTSMANAGER_SELECT="Auswahl"
COM_SPORTSMANAGER_NO_SELECT="keine Auswahl"
COM_SPORTSMANAGER_REALLY_REMOVE_RULEBOOK="Willst Du dieses Regelwerk wirklich entfernen?"
COM_SPORTSMANAGER_ADD_RULEBOOK="Regelwerk hinzuf&uuml;gen"
COM_SPORTSMANAGER_DISCIPLINARY_FINES="Ordnungsstrafen"
COM_SPORTSMANAGER_DISCIPLINARY_FINE="Ordnungsstrafe"
COM_SPORTSMANAGER_ISSUE_DISCIPLINARY_FINES="Ordnungsstrafe ausstellen"
COM_SPORTSMANAGER_EDIT_DISCIPLINARY_FINE="Ordnungsstrafe bearbeiten"
COM_SPORTSMANAGER_SEND_DISCIPLINARY_FINE="Ordnungsstrafe versenden"
COM_SPORTSMANAGER_REALLY_REMOVE_DISCIPLINARY_FINES="Willst Du diese Ordnungsstrafe wirklich entfernen?"
COM_SPORTSMANAGER_VIOLATIONS="Verst&ouml;&szlig;e"
COM_SPORTSMANAGER_VIOLATION="Versto&szlig;"
COM_SPORTSMANAGER_ADD_VIOLATION="Versto&szlig; hinzuf&uuml;gen"
COM_SPORTSMANAGER_REALLY_REMOVE_VIOLATION="Willst Du diesen Versto&szlig; wirklich entfernen?"
COM_SPORTSMANAGER_VIOLATION_TEXT="Text"
COM_SPORTSMANAGER_VIOLATION_ADD_TEXT="Zusatztext"
COM_SPORTSMANAGER_FEE="Geb&uuml;hr"
COM_SPORTSMANAGER_ADD_FEE="Zusatzgeb&uuml;hr"
COM_SPORTSMANAGER_SELECTABLE="Ausw&auml;hlbar"
COM_SPORTSMANAGER_TEMPLATE="Vorlage"
COM_SPORTSMANAGER_EMAIL_SUBJECT="Betreff"
COM_SPORTSMANAGER_EMAIL_MESSAGE="Nachricht"
COM_SPORTSMANAGER_EMAIL_TO="An"
COM_SPORTSMANAGER_EMAIL_SEND="E-Mail senden"
COM_SPORTSMANAGER_EMAIL_TEXT_TEMPLATE="Textvorlage"
COM_SPORTSMANAGER_ISSUER="Aussteller"
COM_SPORTSMANAGER_ISSUE_DATE="Ausstelldatum"
COM_SPORTSMANAGER_SENDER="Sender"
COM_SPORTSMANAGER_BILL_ISSUER="Rechnung erstellt"
COM_SPORTSMANAGER_MULTIPLIER="Multiplikator"
COM_SPORTSMANAGER_ADDITIONAL_INFORMATION="Weitere Angaben"
COM_SPORTSMANAGER_EMAIL_WAS_SEND="Die E-Mail wurde erfolgreich versendet"
COM_SPORTSMANAGER_EMAIL_WAS_NOT_SEND="Die E-Mail wurde nicht versendet"
COM_SPORTSMANAGER_OLD_DATE="Alter Termin"
COM_SPORTSMANAGER_NEW_DATE="Neuer Termin"
COM_SPORTSMANAGER_REASON_GAME_APPOINTMENT="Verlegungsgrund"
COM_SPORTSMANAGER_MATCH_RESCHEDULINGS="Spielverlegungen"
COM_SPORTSMANAGER_MATCH_RESCHEDULING="Spielverlegung"
COM_SPORTSMANAGER_MATCH_SWAPPING_HELP="Bei Heimrechttausch gleichen Termin eintragen"
COM_SPORTSMANAGER_NOT_VALID_TIME="Ung&uuml;ltige Uhrzeit"
COM_SPORTSMANAGER_REALLY_MATCH_RESCHEDULING="Willst Du diesen Spielverlegung wirklich entfernen?"
COM_SPORTSMANAGER_REST_DAYS="Ruhetage"
COM_SPORTSMANAGER_TRAINING_DAYS="Trainingstage"
COM_SPORTSMANAGER_NOT_ACTUALIZED_DATA="Nicht aktualisierte Daten"
@@ -1,4 +1,4 @@
; Sports Manager (C) 2006-2020, Sven Nickel ; Sports Manager (C) 2006-2020, Sven Nickel
COM_SPORTSMANAGER="Sports Manager" COM_SPORTSMANAGER="Sports Manager"
COM_SPORTSMANAGER_PLAYERS="Players" COM_SPORTSMANAGER_PLAYERS="Players"
COM_SPORTSMANAGER_CLUBS="Clubs" COM_SPORTSMANAGER_CLUBS="Clubs"
@@ -39,6 +39,7 @@ COM_SPORTSMANAGER_ORGANISATION="Organisation"
COM_SPORTSMANAGER_TEAM_MEMBERS="Team members" COM_SPORTSMANAGER_TEAM_MEMBERS="Team members"
COM_SPORTSMANAGER_TEAM_MEMBERS2="Club members" COM_SPORTSMANAGER_TEAM_MEMBERS2="Club members"
COM_SPORTSMANAGER_MEMBERS="Members" COM_SPORTSMANAGER_MEMBERS="Members"
COM_SPORTSMANAGER_ACTIVE_MEMBERS="Active members"
COM_SPORTSMANAGER_TEAMS="Teams" COM_SPORTSMANAGER_TEAMS="Teams"
COM_SPORTSMANAGER_CURRENT_TEAMS="Current teams" COM_SPORTSMANAGER_CURRENT_TEAMS="Current teams"
COM_SPORTSMANAGER_PREVIOUS_TEAMS="Previous teams" COM_SPORTSMANAGER_PREVIOUS_TEAMS="Previous teams"
@@ -264,6 +265,7 @@ COM_SPORTSMANAGER_IN="in"
COM_SPORTSMANAGER_NATIONAL="National" COM_SPORTSMANAGER_NATIONAL="National"
COM_SPORTSMANAGER_INTERNATIONAL="International" COM_SPORTSMANAGER_INTERNATIONAL="International"
COM_SPORTSMANAGER_PLAYER_NUMBER_SHORT="Player number" COM_SPORTSMANAGER_PLAYER_NUMBER_SHORT="Player number"
COM_SPORTSMANAGER_ASSOCIATION_SHORT_NAME="Association short name"
COM_SPORTSMANAGER_BASIC_PLAYER_NUMBER_SHORT="Player number base" COM_SPORTSMANAGER_BASIC_PLAYER_NUMBER_SHORT="Player number base"
COM_SPORTSMANAGER_MESSAGES="Registrations" COM_SPORTSMANAGER_MESSAGES="Registrations"
COM_SPORTSMANAGER_TOURNAMENT_PLACEMENT="Tournament placements" COM_SPORTSMANAGER_TOURNAMENT_PLACEMENT="Tournament placements"
@@ -319,6 +321,7 @@ COM_SPORTSMANAGER_VIEW_LEAST_MEMBER_COUNT="Show least member count (teams)"
COM_SPORTSMANAGER_SHOW_ORGANISATION="Show organisation (teams)" COM_SPORTSMANAGER_SHOW_ORGANISATION="Show organisation (teams)"
COM_SPORTSMANAGER_SHOW_MEMBER_COUNT="Show member column (teams)" COM_SPORTSMANAGER_SHOW_MEMBER_COUNT="Show member column (teams)"
COM_SPORTSMANAGER_SHOW_TOURNAMENT_BRACKET="Show Tournament Bracket" COM_SPORTSMANAGER_SHOW_TOURNAMENT_BRACKET="Show Tournament Bracket"
COM_SPORTSMANAGER_USE_DISCIPLINARY_FINE="Use disciplinary fine"
COM_SPORTSMANAGER_PLAYER_DETAILS="Player details" COM_SPORTSMANAGER_PLAYER_DETAILS="Player details"
COM_SPORTSMANAGER_PLAYER_LIST_DETAILS="Player list details" COM_SPORTSMANAGER_PLAYER_LIST_DETAILS="Player list details"
COM_SPORTSMANAGER_PLAYER_EDIT="Edit player data by organisation/club contacts" COM_SPORTSMANAGER_PLAYER_EDIT="Edit player data by organisation/club contacts"
@@ -359,8 +362,9 @@ COM_SPORTSMANAGER_PLAYERS_EXPORT_SPORT_SOFTWARE="Export players (Sport Software)
COM_SPORTSMANAGER_CLEANUP_INACTIVE_PLAYERS="Cleanup inactive players" COM_SPORTSMANAGER_CLEANUP_INACTIVE_PLAYERS="Cleanup inactive players"
COM_SPORTSMANAGER_STATISTIK="Statistics" COM_SPORTSMANAGER_STATISTIK="Statistics"
COM_SPORTSMANAGER_PLAYERS_ACTIVE="Players active" COM_SPORTSMANAGER_PLAYERS_ACTIVE="Players active"
COM_SPORTSMANAGER_RESTRICTED_PLAYERS="Players restrited" COM_SPORTSMANAGER_RESTRICTED_PLAYERS="Players restricted"
COM_SPORTSMANAGER_PLAYER_PASSIV="Players passive" COM_SPORTSMANAGER_PLAYER_PASSIV="Players passive"
COM_SPORTSMANAGER_PLAYER_UNATTACHED="Players unattached"
COM_SPORTSMANAGER_MEN_ACTIVE="Male active" COM_SPORTSMANAGER_MEN_ACTIVE="Male active"
COM_SPORTSMANAGER_WOMEN_ACTIVE="Female active" COM_SPORTSMANAGER_WOMEN_ACTIVE="Female active"
COM_SPORTSMANAGER_JUNIOR_ACTIVE="Juniors active" COM_SPORTSMANAGER_JUNIOR_ACTIVE="Juniors active"
@@ -411,7 +415,7 @@ COM_SPORTSMANAGER_EXPORT="Export"
COM_SPORTSMANAGER_INTERNATIONAL_PLAYERS="Players (international)" COM_SPORTSMANAGER_INTERNATIONAL_PLAYERS="Players (international)"
COM_SPORTSMANAGER_COUNTRY_CODE="Country code" COM_SPORTSMANAGER_COUNTRY_CODE="Country code"
COM_SPORTSMANAGER_IMPORT="Import" COM_SPORTSMANAGER_IMPORT="Import"
COM_SPORTSMANAGER_IMPORT_MESSAGE="In the import there are only player information about club %s present. Shall only the members of that one club be updated, the associated club has to be selected down here. If the import contains all members of the organisation then the organisation must be selected." COM_SPORTSMANAGER_IMPORT_MESSAGE="In the import there are only player information about club %s present. Shall only the members of that one club be updated, the associated club has to be selected down here. If the import contains all members of the organisation then the organisation must be selected.<br />If a license number already exists, the license number and the year of birth will not be overwritten."
COM_SPORTSMANAGER_CHECK="Check" COM_SPORTSMANAGER_CHECK="Check"
COM_SPORTSMANAGER_IMPORT_CONFLICTS_MESSAGE="There are faults or conflicts in the import which have to be fixed manually first." COM_SPORTSMANAGER_IMPORT_CONFLICTS_MESSAGE="There are faults or conflicts in the import which have to be fixed manually first."
COM_SPORTSMANAGER_IMPORT_DUPLICATE_MESSAGE="Attempt to change player number into one that is already assigned to another player." COM_SPORTSMANAGER_IMPORT_DUPLICATE_MESSAGE="Attempt to change player number into one that is already assigned to another player."
@@ -512,7 +516,6 @@ COM_SPORTSMANAGER_ADD_POINTS_TABLE="Add points table"
COM_SPORTSMANAGER_ADD_FUNCTION="Add function" COM_SPORTSMANAGER_ADD_FUNCTION="Add function"
COM_SPORTSMANAGER_PARTICIPANT="Participants" COM_SPORTSMANAGER_PARTICIPANT="Participants"
COM_SPORTSMANAGER_FUNCTION="Function" COM_SPORTSMANAGER_FUNCTION="Function"
COM_SPORTSMANAGER_MULTIPLIER="Multiplier"
COM_SPORTSMANAGER_MAXIMUM="maximum" COM_SPORTSMANAGER_MAXIMUM="maximum"
COM_SPORTSMANAGER_CONTRACTION="Contraction" COM_SPORTSMANAGER_CONTRACTION="Contraction"
COM_SPORTSMANAGER_ELIGIBLE_ORGANIZERS="Eligible for organisation" COM_SPORTSMANAGER_ELIGIBLE_ORGANIZERS="Eligible for organisation"
@@ -573,7 +576,7 @@ COM_SPORTSMANAGER_PRIVATE_PLAYER_DATA="View privat player information in club an
COM_SPORTSMANAGER_ASSOCIATIONS_MEMBERSHIPS_MANAGE="Manage clubs and memberships" COM_SPORTSMANAGER_ASSOCIATIONS_MEMBERSHIPS_MANAGE="Manage clubs and memberships"
COM_SPORTSMANAGER_MANAGE_CLASSIFICATIONS="Manage classifications" COM_SPORTSMANAGER_MANAGE_CLASSIFICATIONS="Manage classifications"
COM_SPORTSMANAGER_MANAGE_TEAM_PLANS="Manage team plans" COM_SPORTSMANAGER_MANAGE_TEAM_PLANS="Manage team plans"
COM_SPORTSMANAGER_MANAGE_RULES_POSTPONEMENT="Manage postpone rules" COM_SPORTSMANAGER_MANAGE_RULES_POSTPONEMENT="Manage match rescheduling/postpone rules"
COM_SPORTSMANAGER_MANAGE_VENUES="Manage venues" COM_SPORTSMANAGER_MANAGE_VENUES="Manage venues"
COM_SPORTSMANAGER_MANAGE_TEAM_COMPETITIONS="Manage team competitions" COM_SPORTSMANAGER_MANAGE_TEAM_COMPETITIONS="Manage team competitions"
COM_SPORTSMANAGER_MANAGE_PLAYER_STATISTICS="Manage player statitics" COM_SPORTSMANAGER_MANAGE_PLAYER_STATISTICS="Manage player statitics"
@@ -808,7 +811,6 @@ COM_SPORTSMANAGER_APPLIED_FOR="Applied"
COM_SPORTSMANAGER_DECLINED="Declined" COM_SPORTSMANAGER_DECLINED="Declined"
COM_SPORTSMANAGER_DATE_DETAILS="Event: Details" COM_SPORTSMANAGER_DATE_DETAILS="Event: Details"
COM_SPORTSMANAGER_ADDITIONS="Additions" COM_SPORTSMANAGER_ADDITIONS="Additions"
COM_SPORTSMANAGER_ADDITIONAL_INFORMATION="Additional information"
COM_SPORTSMANAGER_PUBLIC_EMAIL="E-mail public" COM_SPORTSMANAGER_PUBLIC_EMAIL="E-mail public"
COM_SPORTSMANAGER_EMAIL_WITH_CHANGES="E-mail for changes" COM_SPORTSMANAGER_EMAIL_WITH_CHANGES="E-mail for changes"
COM_SPORTSMANAGER_ACTION_TYPE="Action type" COM_SPORTSMANAGER_ACTION_TYPE="Action type"
@@ -884,6 +886,9 @@ COM_SPORTSMANAGER_INITIAL_APPOINTMENT_SUGGESTIONS="Initial appointment suggestio
COM_SPORTSMANAGER_REQUESTING_TEAM="Requesting team" COM_SPORTSMANAGER_REQUESTING_TEAM="Requesting team"
COM_SPORTSMANAGER_OPPONENT_TEAM="Opponent team" COM_SPORTSMANAGER_OPPONENT_TEAM="Opponent team"
COM_SPORTSMANAGER_AGAINST_PROPOSALS_ALLOWED="Against proposals allowed" COM_SPORTSMANAGER_AGAINST_PROPOSALS_ALLOWED="Against proposals allowed"
COM_SPORTSMANAGER_REASON_REQUIRED="Reason required"
COM_SPORTSMANAGER_CLUB_ENTITLEMENT="Club entitlement"
COM_SPORTSMANAGER_ASSOCIATION_ENTITLEMENT="Association_entitlement"
COM_SPORTSMANAGER_LEAD_TIME="Lead time" COM_SPORTSMANAGER_LEAD_TIME="Lead time"
COM_SPORTSMANAGER_APPOINTMENT_PROPOSALS_MINIMAL="Appointment proposals minimal" COM_SPORTSMANAGER_APPOINTMENT_PROPOSALS_MINIMAL="Appointment proposals minimal"
COM_SPORTSMANAGER_APPOINTMENT_PROPOSALS_MAXIMUM="Appointment proposals maximum" COM_SPORTSMANAGER_APPOINTMENT_PROPOSALS_MAXIMUM="Appointment proposals maximum"
@@ -893,6 +898,8 @@ COM_SPORTSMANAGER_OPTIONAL_BUT_SAME_IN_DOUBLES="Optional but both or none in dou
COM_SPORTSMANAGER_REQUIRED="Required" COM_SPORTSMANAGER_REQUIRED="Required"
COM_SPORTSMANAGER_RESULT_ONLY="Result only" COM_SPORTSMANAGER_RESULT_ONLY="Result only"
COM_SPORTSMANAGER_GAME_NUMBER="Game %d" COM_SPORTSMANAGER_GAME_NUMBER="Game %d"
COM_SPORTSMANAGER_LABEL_GAME_NUMBER="Game nr"
COM_SPORTSMANAGER_LABEL_GAME_TITLE="Gameday title"
COM_SPORTSMANAGER_EMAIL_SHIFT_GAME_APPOINTMENT_SUBJECT="%s vs %s: Shift game appointment" COM_SPORTSMANAGER_EMAIL_SHIFT_GAME_APPOINTMENT_SUBJECT="%s vs %s: Shift game appointment"
COM_SPORTSMANAGER_EMAIL_SHIFT_GAME_APPOINTMENT_BODY="For match %s versus %s on %s in %s the game appointment is shifted by %s.\n\nAlternative appointments:\n\n" COM_SPORTSMANAGER_EMAIL_SHIFT_GAME_APPOINTMENT_BODY="For match %s versus %s on %s in %s the game appointment is shifted by %s.\n\nAlternative appointments:\n\n"
COM_SPORTSMANAGER_EMAIL_SHIFT_GAME_APPOINTMENT_REQUESTED_BODY="For match %s on %s in %s the game appointment is shifted by %s.\n\nPlease propose alternative appointments under %s" COM_SPORTSMANAGER_EMAIL_SHIFT_GAME_APPOINTMENT_REQUESTED_BODY="For match %s on %s in %s the game appointment is shifted by %s.\n\nPlease propose alternative appointments under %s"
@@ -945,8 +952,10 @@ COM_SPORTSMANAGER_NON_SMOKING_PROTECTION_MARK_NO=" (Kein Nichtraucherschutz)"
COM_SPORTSMANAGER_POINTS_TABLE="Points table" COM_SPORTSMANAGER_POINTS_TABLE="Points table"
COM_SPORTSMANAGER_EVALUATION="Auswertung" COM_SPORTSMANAGER_EVALUATION="Auswertung"
COM_SPORTSMANAGER_FUNCTION_DESCRIPTION="Variables: n = number of participants, p = place, m = multiplier of rating and in doubles possibly additionally reduced rating<br />Functions: +, -, *, /, round(x), pow(x), if(a > b, x, y), min(x, y), max(x, y), log(x), ln(x), logn(b, x)<br />VerteilungR(r, p, n, m) := max(round((((m * r - 1) * (-log(p / n) * (1 - (p / n)))) / (-log(1 / n) * (1 - (1 / n)))) + 1), 1)<br />Verteilung(r, p, n, m) := max(round(m * round((((r - 1) * (-log(p / n) * (1 - (p / n)))) / (-log(1 / n) * (1 - (1 / n)))) + 1)), 1)<br /><br />The functions VerteilungR() and Verteilung() distribute points for place 1 (r) descending to the individual places (p) of the number of participants (n).<br />VerteilungR() applies the multiplier (m) to the points for 1st place and then distributes down to 1 point for the last place.<br />Verteilung() applies the multiplier (m) to the points after the calculation, i.e. the last place receives 1 * m points." COM_SPORTSMANAGER_FUNCTION_DESCRIPTION="Variables: n = number of participants, p = place, m = multiplier of rating and in doubles possibly additionally reduced rating<br />Functions: +, -, *, /, round(x), pow(x), if(a > b, x, y), min(x, y), max(x, y), log(x), ln(x), logn(b, x)<br />VerteilungR(r, p, n, m) := max(round((((m * r - 1) * (-log(p / n) * (1 - (p / n)))) / (-log(1 / n) * (1 - (1 / n)))) + 1), 1)<br />Verteilung(r, p, n, m) := max(round(m * round((((r - 1) * (-log(p / n) * (1 - (p / n)))) / (-log(1 / n) * (1 - (1 / n)))) + 1)), 1)<br /><br />The functions VerteilungR() and Verteilung() distribute points for place 1 (r) descending to the individual places (p) of the number of participants (n).<br />VerteilungR() applies the multiplier (m) to the points for 1st place and then distributes down to 1 point for the last place.<br />Verteilung() applies the multiplier (m) to the points after the calculation, i.e. the last place receives 1 * m points."
COM_SPORTSMANAGER_LIZENZ="License" COM_SPORTSMANAGER_RANK="Rank"
; Edit Player
COM_SPORTSMANAGER_LIZENZ="License"
COM_SPORTSMANAGER_ARIA_LABEL_MATCHDAY_SELECT="Choose a match day" COM_SPORTSMANAGER_ARIA_LABEL_MATCHDAY_SELECT="Choose a match day"
COM_SPORTSMANAGER_ARIA_LABEL_PROPOSAL_DAY="Choose the day of the match proposal" COM_SPORTSMANAGER_ARIA_LABEL_PROPOSAL_DAY="Choose the day of the match proposal"
COM_SPORTSMANAGER_ARIA_LABEL_PROPOSAL_MONTH="Choose the month of the match proposal" COM_SPORTSMANAGER_ARIA_LABEL_PROPOSAL_MONTH="Choose the month of the match proposal"
@@ -1012,3 +1021,53 @@ COM_SPORTSMANAGER_NUM_REQUESTED_SHIFTS="Shifts"
COM_SPORTSMANAGER_NUM_REQUESTED_SHFITS_TOOLTIP="Game shifts caused by this team" COM_SPORTSMANAGER_NUM_REQUESTED_SHFITS_TOOLTIP="Game shifts caused by this team"
COM_SPORTSMANAGER_GAME_RESULT_DELAYS="Delay" COM_SPORTSMANAGER_GAME_RESULT_DELAYS="Delay"
COM_SPORTSMANAGER_USE_EMAIL_REMINDERS="Use email reminders" COM_SPORTSMANAGER_USE_EMAIL_REMINDERS="Use email reminders"
COM_SPORTSMANAGER_RULEBOOKS="Rulebooks"
COM_SPORTSMANAGER_RULEBOOK="Rulebook"
COM_SPORTSMANAGER_RULE_SHORT="Rule"
COM_SPORTSMANAGER_FEE_SHORT="Section fees"
COM_SPORTSMANAGER_RULE_LONG="Section rules"
COM_SPORTSMANAGER_FEE_LONG="Fee"
COM_SPORTSMANAGER_SELECT="Select"
COM_SPORTSMANAGER_NO_SELECT="No selection"
COM_SPORTSMANAGER_REALLY_REMOVE_RULEBOOK="Do you really want to remove this rulebook?"
COM_SPORTSMANAGER_ADD_RULEBOOK="Add rulebook"
COM_SPORTSMANAGER_DISCIPLINARY_FINES="Disciplinary fines"
COM_SPORTSMANAGER_ISSUE_DISCIPLINARY_FINES="Issue disciplinary fines"
COM_SPORTSMANAGER_ISSUE_DISCIPLINARY_FINE="Issue disciplinary fine"
COM_SPORTSMANAGER_EDIT_DISCIPLINARY_FINE="Edit issue disciplinary fine"
COM_SPORTSMANAGER_SEND_DISCIPLINARY_FINE="Send issue disciplinary fine"
COM_SPORTSMANAGER_REALLY_REMOVE_DISCIPLINARY_FINES="Do you really want to remove this Issue disciplinary fine?"
COM_SPORTSMANAGER_VIOLATIONS="Violations"
COM_SPORTSMANAGER_VIOLATION="Violation"
COM_SPORTSMANAGER_ADD_VIOLATION="Add violation"
COM_SPORTSMANAGER_REALLY_REMOVE_VIOLATION="Do you really want to remove this violation?"
COM_SPORTSMANAGER_VIOLATION_TEXT="Text"
COM_SPORTSMANAGER_VIOLATION_ADD_TEXT="Additional text"
COM_SPORTSMANAGER_FEE="Fee"
COM_SPORTSMANAGER_ADD_FEE="Additional Fee"
COM_SPORTSMANAGER_SELECTABLE="Selectable"
COM_SPORTSMANAGER_TEMPLATE="Template"
COM_SPORTSMANAGER_EMAIL_SUBJECT="Subject"
COM_SPORTSMANAGER_EMAIL_MESSAGE="Message"
COM_SPORTSMANAGER_EMAIL_TO="to"
COM_SPORTSMANAGER_EMAIL_SEND="Send E-Mail"
COM_SPORTSMANAGER_EMAIL_TEXT_TEMPLATE="Text template"
COM_SPORTSMANAGER_ISSUER="Issuer"
COM_SPORTSMANAGER_SENDER="Sender"
COM_SPORTSMANAGER_ISSUE_DATE="Issue date"
COM_SPORTSMANAGER_BILL_ISSUER="Bill issuer"
COM_SPORTSMANAGER_MULTIPLIER="Multiplier"
COM_SPORTSMANAGER_ADDITIONAL_INFORMATION="Additional information"
COM_SPORTSMANAGER_EMAIL_WAS_SEND="E-Mail was succesfully sent"
COM_SPORTSMANAGER_EMAIL_WAS_NOT_SEND="E-Mail was not sent"
COM_SPORTSMANAGER_OLD_DATE="Old Date"
COM_SPORTSMANAGER_NEW_DATE="New Date"
COM_SPORTSMANAGER_REASON_GAME_APPOINTMENT="Appointment reason"
COM_SPORTSMANAGER_MATCH_RESCHEDULINGS="Match reschedulings"
COM_SPORTSMANAGER_MATCH_RESCHEDULING="Match rescheduling"
COM_SPORTSMANAGER_MATCH_SWAPPING_HELP="If home advantage is swapped, enter the same date"
COM_SPORTSMANAGER_NOT_VALID_TIME="Not valid time"
COM_SPORTSMANAGER_REALLY_MATCH_RESCHEDULING="Do you really want to remove this match rescheduling?"
COM_SPORTSMANAGER_REST_DAYS="Rest days"
COM_SPORTSMANAGER_TRAINING_DAYS="Training days"
COM_SPORTSMANAGER_NOT_ACTUALIZED_DATA="Data not updated"
+99 -1
View File
@@ -670,6 +670,9 @@ return new class () implements InstallerScriptInterface
. "\n `ortsname` varchar(30) DEFAULT NULL," . "\n `ortsname` varchar(30) DEFAULT NULL,"
. "\n `ortsteil` varchar(30) DEFAULT NULL," . "\n `ortsteil` varchar(30) DEFAULT NULL,"
. "\n `url` varchar(150) DEFAULT NULL," . "\n `url` varchar(150) DEFAULT NULL,"
. "\n `telefon` varchar(64) DEFAULT NULL,"
. "\n `email` varchar(64) DEFAULT NULL,"
. "\n `ruhetage` varchar(64) DEFAULT NULL,"
. "\n `beschreibung` varchar(500) DEFAULT NULL," . "\n `beschreibung` varchar(500) DEFAULT NULL,"
. "\n `status` tinyint(1) NOT NULL DEFAULT '0'," . "\n `status` tinyint(1) NOT NULL DEFAULT '0',"
. "\n PRIMARY KEY (`spielort_id`)" . "\n PRIMARY KEY (`spielort_id`)"
@@ -692,6 +695,7 @@ return new class () implements InstallerScriptInterface
. "\n `heimspiel_wochentag` tinyint(4) DEFAULT NULL," . "\n `heimspiel_wochentag` tinyint(4) DEFAULT NULL,"
. "\n `heimspiel_uhrzeit` smallint(6) DEFAULT NULL," . "\n `heimspiel_uhrzeit` smallint(6) DEFAULT NULL,"
. "\n `heimspielort_id` int(11) DEFAULT NULL," . "\n `heimspielort_id` int(11) DEFAULT NULL,"
. "\n `trainingstage` varchar(64) DEFAULT NULL,"
. "\n `nichtraucherschutz` tinyint(4) DEFAULT '0'," . "\n `nichtraucherschutz` tinyint(4) DEFAULT '0',"
. "\n `platz` smallint(6) DEFAULT NULL," . "\n `platz` smallint(6) DEFAULT NULL,"
. "\n `gesamtpunkte` float(6,2) DEFAULT NULL," . "\n `gesamtpunkte` float(6,2) DEFAULT NULL,"
@@ -1035,6 +1039,7 @@ return new class () implements InstallerScriptInterface
. "\n `saison_id` int(11) NOT NULL DEFAULT '0'," . "\n `saison_id` int(11) NOT NULL DEFAULT '0',"
. "\n `veranstalter_id` int(11) NOT NULL DEFAULT '0'," . "\n `veranstalter_id` int(11) NOT NULL DEFAULT '0',"
. "\n `bezeichnung` varchar(50) DEFAULT NULL," . "\n `bezeichnung` varchar(50) DEFAULT NULL,"
. "\n `regelwerke_id` INT(11) NOT NULL DEFAULT '0',"
. "\n `modus_id` int(11) NOT NULL DEFAULT '0'," . "\n `modus_id` int(11) NOT NULL DEFAULT '0',"
. "\n `verschieberegel_id` int(11) NOT NULL DEFAULT '0'," . "\n `verschieberegel_id` int(11) NOT NULL DEFAULT '0',"
. "\n `tabellenwertung` tinyint(4) NOT NULL DEFAULT '0'," . "\n `tabellenwertung` tinyint(4) NOT NULL DEFAULT '0',"
@@ -1104,6 +1109,9 @@ return new class () implements InstallerScriptInterface
. "\n `termine_minimal` tinyint(4) NOT NULL DEFAULT '0'," . "\n `termine_minimal` tinyint(4) NOT NULL DEFAULT '0',"
. "\n `termine_maximal` tinyint(4) NOT NULL DEFAULT '0'," . "\n `termine_maximal` tinyint(4) NOT NULL DEFAULT '0',"
. "\n `ablehnen` tinyint(1) NOT NULL DEFAULT '0'," . "\n `ablehnen` tinyint(1) NOT NULL DEFAULT '0',"
. "\n `begruendung_erforderlich` int(1) NOT NULL DEFAULT 0,"
. "\n `vereine_berechtigt` int(1) NOT NULL DEFAULT 1,"
. "\n `verband_berechtigt` int(1) NOT NULL DEFAULT 0,"
. "\n PRIMARY KEY (`verschieberegel_id`)" . "\n PRIMARY KEY (`verschieberegel_id`)"
. "\n) ENGINE=MyISAM DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;"; . "\n) ENGINE=MyISAM DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;";
$db->setQuery( $query ); $db->setQuery( $query );
@@ -1118,7 +1126,69 @@ return new class () implements InstallerScriptInterface
$db->setQuery( $query ); $db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); } if (!$db->execute()) { die($db->stderr(true)); }
$query = "INSERT IGNORE #__sportsmanager_einstellungen SET name = 'datenbank_version', wert = '108';"; $query = "CREATE TABLE IF NOT EXISTS `#__sportsmanager_regelwerke` ("
. "\n `regelwerke_id` int(11) NOT NULL AUTO_INCREMENT,"
. "\n `regelwerk` varchar(32) NOT NULL,"
. "\n PRIMARY KEY (`regelwerke_id`),"
. "\n UNIQUE KEY `regelwerk` (`regelwerk`)"
. "\n ) ENGINE=MyISAM DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "CREATE TABLE IF NOT EXISTS `#__sportsmanager_verstoesse` ("
. "\n `verstoesse_id` int(11) NOT NULL AUTO_INCREMENT,"
. "\n `regelwerke_id` int(11) NOT NULL DEFAULT 0,"
. "\n `paragraph_spo` varchar(32) NOT NULL DEFAULT '',"
. "\n `paragraph_go` varchar(32) NOT NULL DEFAULT '',"
. "\n `verstoss` varchar(64) NOT NULL DEFAULT '',"
. "\n `haupttext` text NOT NULL,"
. "\n `zusatztext` text NOT NULL,"
. "\n `gebuehr` smallint(3) NOT NULL DEFAULT 0,"
. "\n `zusatzgebuehr` smallint(2) NOT NULL DEFAULT 0,"
. "\n `zur_auswahl` tinyint(1) NOT NULL DEFAULT 1,"
. "\n PRIMARY KEY (`verstoesse_id`)"
. "\n ) ENGINE=MyISAM DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "CREATE TABLE IF NOT EXISTS `#__sportsmanager_ordnungsstrafen` ("
. "\n `ordnungsstrafen_id` int(11) NOT NULL AUTO_INCREMENT,"
. "\n `verstoesse_id` int(11) NOT NULL DEFAULT 0,"
. "\n `begegnung_id` int(11) NOT NULL DEFAULT 0,"
. "\n `team_id` int(11) NOT NULL DEFAULT 0,"
. "\n `aussteller_id` int(11) NOT NULL DEFAULT 0,"
. "\n `ausstelldatum` datetime NOT NULL DEFAULT current_timestamp(),"
. "\n `versender_id` int(11) DEFAULT NULL,"
. "\n `versendedatum` datetime DEFAULT NULL,"
. "\n `rechnungssteller_id` int(11) DEFAULT NULL,"
. "\n `rechnungsdatum` datetime DEFAULT NULL,"
. "\n `multiplikator` tinyint(1) NOT NULL DEFAULT 1,"
. "\n `weitere_angaben` text NOT NULL,"
. "\n PRIMARY KEY (`ordnungsstrafen_id`)"
. "\n ) ENGINE=MyISAM DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "CREATE TABLE IF NOT EXISTS `#__sportsmanager_email_vorlagen` ("
. "\n `email_vorlagen_id` int(11) NOT NULL AUTO_INCREMENT,"
. "\n `vorlage` varchar(64) NOT NULL,"
. "\n `betreff` varchar(256) NOT NULL DEFAULT '',"
. "\n `von` varchar(64) NOT NULL DEFAULT '',"
. "\n `an` varchar(256) NOT NULL DEFAULT '',"
. "\n `cc` varchar(256) NOT NULL DEFAULT '',"
. "\n `bcc` varchar(256) NOT NULL DEFAULT '',"
. "\n `email_text` text NOT NULL,"
. "\n PRIMARY KEY (`email_vorlagen_id`),"
. "\n UNIQUE KEY `vorlage` (`vorlage`)"
. "\n ) ENGINE=MyISAM DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "INSERT IGNORE #__sportsmanager_einstellungen SET name = 'verbands_kuerzel', wert = 'tbe.';";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "INSERT IGNORE #__sportsmanager_einstellungen SET name = 'datenbank_version', wert = '116';";
$db->setQuery( $query ); $db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); } if (!$db->execute()) { die($db->stderr(true)); }
@@ -1150,6 +1220,10 @@ return new class () implements InstallerScriptInterface
$db->setQuery( $query ); $db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); } if (!$db->execute()) { die($db->stderr(true)); }
$query = "INSERT IGNORE #__sportsmanager_einstellungen SET name = 'ordnungsstrafen_verwenden', wert = '0';";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "INSERT IGNORE #__sportsmanager_einstellungen SET name = 'spalte_mitglieder_zeigen', wert = '1';"; $query = "INSERT IGNORE #__sportsmanager_einstellungen SET name = 'spalte_mitglieder_zeigen', wert = '1';";
$db->setQuery( $query ); $db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); } if (!$db->execute()) { die($db->stderr(true)); }
@@ -1161,6 +1235,14 @@ return new class () implements InstallerScriptInterface
$query = "INSERT INTO #__sportsmanager_verschieberegel (bezeichnung, initial_ohne_termin, keine_gegenvorschlaege, vorlaufzeit_tage, termine_minimal, termine_maximal, ablehnen)" $query = "INSERT INTO #__sportsmanager_verschieberegel (bezeichnung, initial_ohne_termin, keine_gegenvorschlaege, vorlaufzeit_tage, termine_minimal, termine_maximal, ablehnen)"
. "\n VALUES ('Beliebig', '0', '0', '0', '1', '3', '0');"; . "\n VALUES ('Beliebig', '0', '0', '0', '1', '3', '0');";
$db->setQuery($query); $db->setQuery($query);
if (!$db->execute()) { die($db->stderr(true)); }
$query = "INSERT IGNORE INTO `#__sportsmanager_email_vorlagen` (`email_vorlagen_id`, `vorlage`) VALUES (NULL, 'Ordnungsstrafe');";
$db->setQuery($query);
if (!$db->execute()) { die($db->stderr(true)); }
$query = "INSERT IGNORE INTO `#__sportsmanager_email_vorlagen` (`email_vorlagen_id`, `vorlage`) VALUES (NULL, 'Spielverlegung');";
$db->setQuery($query);
if (!$db->execute()) { die($db->stderr(true)); } if (!$db->execute()) { die($db->stderr(true)); }
$query = "INSERT #__sportsmanager_rangliste_system" $query = "INSERT #__sportsmanager_rangliste_system"
@@ -1650,5 +1732,21 @@ return new class () implements InstallerScriptInterface
$query = "DROP TABLE IF EXISTS `#__sportsmanager_verteiler`;"; $query = "DROP TABLE IF EXISTS `#__sportsmanager_verteiler`;";
$db->setQuery( $query ); $db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); } if (!$db->execute()) { die($db->stderr(true)); }
$query = "DROP TABLE IF EXISTS `#__sportsmanager_regelwerke`;";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "DROP TABLE IF EXISTS `#__sportsmanager_verstoesse`;";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "DROP TABLE IF EXISTS `#__sportsmanager_ordnungsstrafen`;";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
$query = "DROP TABLE IF EXISTS `#__sportsmanager_email_vorlagen`;";
$db->setQuery( $query );
if (!$db->execute()) { die($db->stderr(true)); }
} }
}; };