mirror of
https://github.com/Deutscher-Tischfussballbund/com_sportsmanager.git
synced 2026-06-10 06:27:52 +00:00
Merge pull request #209 from Deutscher-Tischfussballbund/sportsmanager2-issue208
Vereinszuordnung Spieler korrigiert.
This commit is contained in:
@@ -5365,6 +5365,19 @@ 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 ($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";
|
||||||
|
|||||||
@@ -2870,14 +2870,27 @@ 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)"
|
||||||
. "\n WHERE NOT ISNULL(aktueller_verein_id) AND #__sportsmanager_mitglied_von_verein.mitgliedsstatus IN (1,2)";
|
. "\n WHERE NOT ISNULL(aktueller_verein_id) AND #__sportsmanager_mitglied_von_verein.mitgliedsstatus IN (1,2)";
|
||||||
if (!empty($search))
|
if (!empty($search))
|
||||||
$query .= "\n AND (CONCAT_WS(', ', nachname, vorname) LIKE '$searchEscapedWildcards' OR CONCAT_WS(' ', vorname, nachname) LIKE '$searchEscapedWildcards' OR spielernr = '$searchEscaped' OR lizenznr = '$searchEscaped')";
|
$query .= "\n AND (CONCAT_WS(', ', nachname, vorname) LIKE '$searchEscapedWildcards' OR CONCAT_WS(' ', vorname, nachname) LIKE '$searchEscapedWildcards' OR spielernr = '$searchEscaped' OR lizenznr = '$searchEscaped')";
|
||||||
if ($einstufungid != 0)
|
if ($einstufungid != 0)
|
||||||
@@ -5585,8 +5598,14 @@ 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 SET aktueller_verein_id = mitgliedschaft.verein_id";
|
. "\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";
|
||||||
if ($spieler_id != 0)
|
if ($spieler_id != 0)
|
||||||
$query .= "\n WHERE spieler_id = $spieler_id";
|
$query .= "\n WHERE spieler_id = $spieler_id";
|
||||||
$db->setQuery($query);
|
$db->setQuery($query);
|
||||||
|
|||||||
Reference in New Issue
Block a user