Importfunktion angepasst

This commit is contained in:
Jürgen Meyer
2026-01-27 18:27:28 +01:00
parent 70563bc8e4
commit 1479fc7e20
4 changed files with 62 additions and 9 deletions
@@ -2319,7 +2319,7 @@ function adminImportSpielerDetailsForm(): void
adminDeleteSpielerImport($session_id);
HTML_sportsmanager_admin::adminImportSpielerBericht($lizenzen_aktualisiert, array(), 0, array(), array(), array(), false, redirectSessionIdEmpty() ? null : redirectSessionIdSetzen());
HTML_sportsmanager_admin::adminImportSpielerBericht($lizenzen_aktualisiert, array(), array(), 0, array(), array(), array(), false, redirectSessionIdEmpty() ? null : redirectSessionIdSetzen());
return;
}
@@ -2757,6 +2757,8 @@ function adminImportSpieler(): void
}
$aktualisierungen = 0;
$index_nicht_akt_unt = 0;
$nicht_aktualisierter_unterschiede = array();
$spielerHinzugefuegt = array();
$vereineHinzugefuegt = 0;
$vereineManuell = array();
@@ -2806,17 +2808,20 @@ function adminImportSpieler(): void
// Spieler aktualisieren bzw. ergänzen
if ($spieler_id != null) { // Spieler aktualisieren
$query = "SELECT * FROM #__sportsmanager_spieler WHERE spieler_id = $spieler_id";
$spieler_buffer = loadObjectList($db, $query);
$query = "UPDATE #__sportsmanager_spieler"
. "\n SET vorname = '" . $db->escape($vorname) . "',"
. "\n nachname = '" . $db->escape($nachname) . "'";
//. "\n spielernr = '" . $db->escape($spielernr) . "'";
if (isset($spalten["lizenznr"]) && ($lizenznr_beibehalten == 0 || !empty($lizenznr)))
if (isset($spalten["lizenznr"]) && !empty($lizenznr) && empty($spieler_buffer[0]->lizenznr))
$query .= ",\n lizenznr = '" . $db->escape($lizenznr) . "'";
if (isset($spalten["pseudonym"]))
$query .= ",\n pseudonym = '" . $db->escape($pseudonym) . "'";
if (isset($spalten["geschlecht"]))
$query .= ",\n geschlecht = '" . $db->escape($geschlecht) . "'";
if ((isset($spalten["geburtsdatum"]) || isset($spalten["geburtsjahr"])) && $geburtsjahr != null)
if ((isset($spalten["geburtsdatum"]) || isset($spalten["geburtsjahr"])) && empty($spieler_buffer[0]->lizenznr) && $geburtsjahr != null)
$query .= ",\n geburtsjahr = " . ("'" . $db->escape($geburtsjahr) . "'");
if ($persoenliche_daten == 2) {
if (isset($spalten["strasse"]))
@@ -2839,7 +2844,24 @@ function adminImportSpieler(): void
if (!$db->execute()) {
die($db->stderr(true));
}
if (!empty($spieler_buffer[0]->lizenznr)){
if (isset($spalten["lizenznr"]) && !empty($lizenznr) && $lizenznr != $spieler_buffer[0]->lizenznr){
$nichtAktualisierteUnterschiede[$index_nicht_akt_unt] = new stdClass();
$nichtAktualisierteUnterschiede[$index_nicht_akt_unt]->spieler = $spieler_buffer[0]->nachname . " " . $spieler_buffer[0]->vorname;
$nichtAktualisierteUnterschiede[$index_nicht_akt_unt]->feld = "Linzenznr";
$nichtAktualisierteUnterschiede[$index_nicht_akt_unt]->db = $spieler_buffer[0]->lizenznr;
$nichtAktualisierteUnterschiede[$index_nicht_akt_unt]->csv = $lizenznr;
$index_nicht_akt_unt++;
}
if (isset($spalten["geburtsjahr"]) && !empty($geburtsjahr) && $geburtsjahr != $spieler_buffer[0]->geburtsjahr){
$nichtAktualisierteUnterschiede[$index_nicht_akt_unt] = new stdClass();
$nichtAktualisierteUnterschiede[$index_nicht_akt_unt]->spieler = $spieler_buffer[0]->nachname . " " . $spieler_buffer[0]->vorname;
$nichtAktualisierteUnterschiede[$index_nicht_akt_unt]->feld = "Geburtsjahr";
$nichtAktualisierteUnterschiede[$index_nicht_akt_unt]->db = $spieler_buffer[0]->geburtsjahr;
$nichtAktualisierteUnterschiede[$index_nicht_akt_unt]->csv = $geburtsjahr;
$index_nicht_akt_unt++;
}
}
$aktualisierungen++;
} else { // Spieler ergänzen
// Neuen Spieler anlegen
@@ -3061,7 +3083,7 @@ function adminImportSpieler(): void
einstufungAktualisieren();
}
HTML_sportsmanager_admin::adminImportSpielerBericht($aktualisierungen, $spielerHinzugefuegt, $vereineHinzugefuegt, $spieler_import, $vereineManuell, $ausgetreteneVereineMitAktivenMitgliedern, $kategorie_potentiell_geaendert, redirectSessionIdEmpty() ? null : redirectSessionIdSetzen());
HTML_sportsmanager_admin::adminImportSpielerBericht($aktualisierungen, $spielerHinzugefuegt, $nichtAktualisierteUnterschiede, $vereineHinzugefuegt, $spieler_import, $vereineManuell, $ausgetreteneVereineMitAktivenMitgliedern, $kategorie_potentiell_geaendert, redirectSessionIdEmpty() ? null : redirectSessionIdSetzen());
}
function adminExportSpielerInternationalForm(): void
@@ -2657,7 +2657,7 @@ class HTML_sportsmanager_admin
<?php
}
static function adminImportSpielerBericht($aktualisierungen, $spielerHinzugefuegt, $vereineHinzugefuegt, $spieler_import, $vereineManuell, $ausgetreteneVereineMitAktivenMitgliedern, $kategorie_potentiell_geaendert, $rsession_id): void
static function adminImportSpielerBericht($aktualisierungen, $spielerHinzugefuegt, $nichtAktualisierteUnterschiede, $vereineHinzugefuegt, $spieler_import, $vereineManuell, $ausgetreteneVereineMitAktivenMitgliedern, $kategorie_potentiell_geaendert, $rsession_id): void
{
global $params;
@@ -2889,6 +2889,35 @@ class HTML_sportsmanager_admin
<span class="article_seperator<?php echo $params->get('pageclass_sfx'); ?>">&nbsp;</span>
<?php
}
if (!empty($nichtAktualisierteUnterschiede)){
?>
<table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<tr>
<th nowrap class="contentheading<?php echo $params->get('pageclass_sfx'); ?>"
style="width: 100%"><?php echo Text::_('COM_SPORTSMANAGER_NOT_ACTUALIZED_DATA'); ?></th>
</tr>
</table>
<table class="contentpaneopen<?php echo $params->get('pageclass_sfx'); ?>">
<?php
$k = 0;
foreach ($nichtAktualisierteUnterschiede as $s) {
?>
<tr class="sectiontableentry<?php echo $k + 1;
$k = ($k + 1) % 2; ?><?php echo $params->get('pageclass_sfx'); ?>">
<td nowrap style="width: 250px;"><?php echo htmlentities_utf8($s->spieler); ?></td>
<td nowrap style="width: 150px;"><?php echo htmlentities_utf8($s->feld); ?></td>
<td nowrap style="width: 120px;"><?php echo htmlentities_utf8($s->db); ?></td>
<td nowrap style="width: 120px;"><?php echo htmlentities_utf8($s->csv); ?></td>
</tr>
<?php
}
?>
</table>
<span class="article_seperator<?php echo $params->get('pageclass_sfx'); ?>">&nbsp;</span>
<?php
}
}
static function adminVerteiler($verteiler, $organisationen, $organisationen_mailverteiler, $veranstaltungen, $veranstaltungen_mailverteiler, $saisons, $filter_saison_id, $moderator_zugriff): void
@@ -1070,3 +1070,4 @@ 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"
@@ -1070,3 +1070,4 @@ 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="Not actualized data"