diff --git a/src/structure/components/com_sportsmanager/admin.php b/src/structure/components/com_sportsmanager/admin.php index 4733928..7378943 100644 --- a/src/structure/components/com_sportsmanager/admin.php +++ b/src/structure/components/com_sportsmanager/admin.php @@ -8881,7 +8881,56 @@ function adminBegegnungen(): void $query = "SELECT t1.*, t2.teamname AS heim_name, t3.teamname AS gast_name, t4.unbestaetigtes_ergebnis_id, t4.zwischenergebnis, t2.nichtraucherschutz AS heim_nichtraucherschutz, t3.nichtraucherschutz AS gast_nichtraucherschutz," . "\n EXISTS(SELECT * FROM #__sportsmanager_begegnung_historie USE INDEX (begegnung_id) WHERE #__sportsmanager_begegnung_historie.begegnung_id = t1.begegnung_id AND aktion IN (1, 5)) AS verlegt," - . "\n (SELECT IF(#__sportsmanager_begegnung_historie.aktion NOT IN (0, 3, 4), NULL, #__sportsmanager_begegnung_historie.eingetragen) AS eingetragen FROM #__sportsmanager_begegnung_historie USE INDEX (begegnung_id) WHERE #__sportsmanager_begegnung_historie.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verlegung_eingetragen" + . "\n (SELECT IF(#__sportsmanager_begegnung_historie.aktion NOT IN (0, 3, 4), NULL, #__sportsmanager_begegnung_historie.eingetragen) AS eingetragen FROM #__sportsmanager_begegnung_historie USE INDEX (begegnung_id) WHERE #__sportsmanager_begegnung_historie.begegnung_id = t1.begegnung_id ORDER BY begegnung_historie_id DESC LIMIT 1) AS verlegung_eingetragen," + + . "\n UNIX_TIMESTAMP(t1.zeitpunkt) AS termin_spiel," + + . "\n (" + . "\n SELECT UNIX_TIMESTAMP(zeitpunkt)" + . "\n FROM #__sportsmanager_begegnung_historie" + . "\n WHERE begegnung_id = t1.begegnung_id AND aktion = 2" + . "\n ORDER BY begegnung_historie_id ASC" + . "\n LIMIT 1" + . "\n ) AS termin_original," + + . "\n (" + . "\n SELECT team_id" + . "\n FROM #__sportsmanager_begegnung_historie" + . "\n WHERE begegnung_id = t1.begegnung_id AND aktion IN (0, 3)" + . "\n ORDER BY begegnung_historie_id ASC" + . "\n LIMIT 1" + . "\n ) AS verantwortliches_team," + + . "\n (" + . "\n SELECT UNIX_TIMESTAMP(zeitpunkt)" + . "\n FROM #__sportsmanager_begegnung_historie" + . "\n WHERE begegnung_id = t1.begegnung_id AND aktion = 1" + . "\n ORDER BY begegnung_historie_id ASC" + . "\n LIMIT 1" + . "\n ) AS termin_akzeptiert," + + . "\n (" + . "\n SELECT UNIX_TIMESTAMP(eingetragen)" + . "\n FROM #__sportsmanager_begegnung_historie" + . "\n WHERE begegnung_id = t1.begegnung_id AND aktion = 6" + . "\n ORDER BY begegnung_historie_id ASC" + . "\n LIMIT 1" + . "\n ) AS ergebnis_vorgeschlagen," + + . "\n (" + . "\n SELECT UNIX_TIMESTAMP(eingetragen)" + . "\n FROM #__sportsmanager_begegnung_historie" + . "\n WHERE begegnung_id = t1.begegnung_id AND aktion = 7" + . "\n ORDER BY begegnung_historie_id ASC" + . "\n LIMIT 1" + . "\n ) AS ergebnis_akzeptiert," + + . "\n (" + . "\n SELECT COUNT(*) FROM #__sportsmanager_teamspiel" + . "\n WHERE begegnung_id = t1.begegnung_id" + . "\n AND (heim_spieler_1_id = 0 OR heim_spieler_2_id = 0 OR gast_spieler_1_id = 0 OR gast_spieler_2_id = 0)" + . "\n ) AS fehlende_spieler" + . "\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 t3 ON t1.gast_team_id = t3.team_id" diff --git a/src/structure/components/com_sportsmanager/views/sportsmanager/view_admin.php b/src/structure/components/com_sportsmanager/views/sportsmanager/view_admin.php index 16bf2d3..c3ed060 100644 --- a/src/structure/components/com_sportsmanager/views/sportsmanager/view_admin.php +++ b/src/structure/components/com_sportsmanager/views/sportsmanager/view_admin.php @@ -12,6 +12,27 @@ defined('_JEXEC') or die('Restricted access'); require_once JPATH_SITE . '/components/com_sportsmanager/views/sportsmanager/view_tools.php'; require_once JPATH_SITE . '/components/com_sportsmanager/util/image.php'; +function formatTimediff( $timestamp1, $timestamp2, $verbose ) { + if (empty($timestamp1) || empty($timestamp2)) { + return ""; + } else { + $hourdiff = ($timestamp2 - $timestamp1) / 3600.0; + if (abs($hourdiff) > 23) { + return sprintf($verbose ? "%+d d" : "%dd", round($hourdiff / 24.0)); + } else { + return "-"; + } + } +} + +function formatTeamName( $team_name, $team_id, $highlight_team_id ) { + if ($team_id == $highlight_team_id) { + return "" . htmlentities_utf8($team_name) . ""; + } else { + return htmlentities_utf8($team_name); + } +} + class HTML_sportsmanager_admin { static function adminUebersicht($veranstaltungen, $spielerstatistiken, $turniere, $ranglisten, $individualwettbewerbe, $statistik, $saisons, $filter_saison_id, $externe_datenbank): void @@ -8605,6 +8626,7 @@ class HTML_sportsmanager_admin punktetyp == 0 ? Text::_('COM_SPORTSMANAGER_GOALS') : Text::_('COM_SPORTSMANAGER_SETS'); ?>