Semi-stable version with old variable names

This commit is contained in:
Fabio Herzig
2026-07-16 18:43:30 +02:00
parent 3731183654
commit c8e7ce9174
165 changed files with 25654 additions and 9728 deletions
@@ -19,6 +19,16 @@ check_user_permission('wk_leitung');
verify_csrf();
$allowed_operations = ['overrite', 'add'];
if (!isset($_POST['operation']) || !in_array($_POST['operation'], $allowed_operations, true)) {
http_response_code(400);
echo 'Invalid operation.';
exit;
}
$operation = $_POST['operation'];
$type = 'wkl';
$dbconnection = require $baseDir . '/../scripts/db/db-verbindung-script.php';
@@ -32,43 +42,18 @@ require $baseDir . '/../scripts/db/db-functions.php';
require $baseDir . '/../scripts/db/db-tables.php';
$allGeraete = db_select($mysqli, $tableGeraete, "id, name, start_index", "", [], "start_index ASC");
$allAbt = db_select($mysqli, $tableAbt, "name, id", "", [], "name ASC");
$allAbt = db_select($mysqli, $tableAbt, "name, id, order_index", "", [], "order_index ASC");
$indexded_order_index_abt = array_column($allAbt, null, 'order_index');
$maxTurnerinnenGruppe = 8;
// $allGeraete[] = ['name' => 'null', 'id' => 'null'];
// $allAbt[] = ['name' => 'null', 'id' => 'null'];
/*$stmt = $mysqli->prepare("
SELECT
t.id,
t.programm,
t.verein,
GROUP_CONCAT(ta.id SEPARATOR ', ') AS abt_table_id
FROM $tableTurnerinnen t
LEFT JOIN $tableTurnerinnenAbt ta ON ta.turnerin_id = t.id
GROUP BY t.id, t.programm, t.verein
ORDER BY t.id DESC
");
$stmt->execute();
$result = $stmt->get_result();
$allTurnerinnen = $result->fetch_all(MYSQLI_ASSOC);
$stmt->close();
print_r($allTurnerinnen);*/
$allTurnerinnen = db_select($mysqli, $tableTurnerinnen, "id, programm, verein, name" , "", [], "programm ASC");
$allTurnerinnen = db_select($mysqli, $tableTeilnehmende, "id, programm, verein, name" , "", [], "programm ASC");
$grouped = [];
foreach ($allTurnerinnen as $t) {
$sanitasedprogramm = str_replace(['-kader'], '', strtolower($t['programm']));
$grouped[$sanitasedprogramm][$t['verein']][] = $t;
$grouped[strtolower($t['programm'])][$t['verein']][] = $t;
}
function getMinKey(array $array): string|int {
@@ -159,28 +144,35 @@ function arrayRiegeneiteilung($allturnerinnen, $maxTurnerinnenGruppe, $allGeraet
$arrayAutoRiegeneinteilung = arrayRiegeneiteilung($grouped, $maxTurnerinnenGruppe, $allGeraete);
if ($operation === 'overrite') {
$stmt = $mysqli->prepare("DELETE FROM $tableAbt");
$stmt->execute();
$stmt->close();
}
$stmt = $mysqli->prepare("DELETE FROM $tableTurnerinnenAbt");
$stmt = $mysqli->prepare("DELETE FROM $tableTeilnehmendeAbt");
$stmt->execute();
$stmt->close();
$stmt = $mysqli->prepare("DELETE FROM $tableAbt");
$stmt->execute();
$stmt->close();
foreach ($arrayAutoRiegeneinteilung as $indAbt => $abt) {
$stmt = $mysqli->prepare("INSERT INTO $tableAbt (name) VALUES (?)");
$stmt->bind_param("s", $indAbt);
$stmt->execute();
$idAbt = $stmt->insert_id;
$stmt->close();
if ($operation === 'overrite' || !isset($indexded_order_index_abt[$indAbt])) {
$var_name = "Abteilung $indAbt";
$stmt = $mysqli->prepare("INSERT INTO $tableAbt (`name`, `order_index`) VALUES (?, ?)");
$stmt->bind_param("si", $var_name, $indAbt);
$stmt->execute();
$idAbt = $stmt->insert_id;
$stmt->close();
} else {
$idAbt = $indexded_order_index_abt[$indAbt]['id'];
}
foreach ($abt as $indGeraet => $geraet) {
foreach ($geraet as $indTurnerin => $turnerin) {
$stmt = $mysqli->prepare("INSERT INTO $tableTurnerinnenAbt (turnerin_id, abteilung_id, geraet_id, turnerin_index) VALUES (?, ?, ?, ?)");
$stmt = $mysqli->prepare("INSERT INTO $tableTeilnehmendeAbt (turnerin_id, abteilung_id, geraet_id, turnerin_index) VALUES (?, ?, ?, ?)");
$stmt->bind_param("ssss", $turnerin['id'], $idAbt, $indGeraet, $turnerin['turnerin_index']);
$stmt->execute();
$stmt->close();
@@ -188,47 +180,4 @@ foreach ($arrayAutoRiegeneinteilung as $indAbt => $abt) {
}
}
return http_response_code(201);
/*foreach ($grouped as $ind => $g) {
echo $ind;
foreach ($g as $verein) {
foreach ($verein as $turnerin) {
echo '<div class="riegeneinteilung_turnerin_row" data-turnerin_id="' . $turnerin['id'] . '">';
echo '<div class="riegeneinteilung_turnerin_info">';
echo '<span class="riegeneinteilung_turnerin_name">' . htmlspecialchars($turnerin['name']) . '</span>';
echo '<span class="riegeneinteilung_turnerin_verein">(' . htmlspecialchars($turnerin['verein']) . ')</span>';
echo '<span class="riegeneinteilung_turnerin_verein">(' . htmlspecialchars($turnerin['abt']) . ')</span>';
echo '<span class="riegeneinteilung_turnerin_verein">(' . htmlspecialchars($turnerin['geraet_id']) . ')</span>';
echo '</div>';
echo '</div></div>';
}
}
echo '<br><br>';
}
foreach ($arrayAutoRiegeneinteilung as $ind => $abt) {
echo '<br>ABT:' . $ind;
foreach ($abt as $g) {
echo '<br>GERÄT';
foreach ($g as $turnerin) {
echo '<div class="riegeneinteilung_turnerin_row" data-turnerin_id="' . $turnerin['id'] . '">';
echo '<div class="riegeneinteilung_turnerin_info">';
echo '<span class="riegeneinteilung_turnerin_name">' . htmlspecialchars($turnerin['name']) . '</span>';
echo '<span class="riegeneinteilung_turnerin_verein">(' . htmlspecialchars($turnerin['verein']) . ')</span>';
echo '<span class="riegeneinteilung_turnerin_verein">(' . htmlspecialchars($turnerin['turnerin_index']) . ')</span>';
echo '<span class="riegeneinteilung_turnerin_verein">(' . htmlspecialchars($turnerin['programm']) . ')</span>';
echo '</div>';
echo '</div></div>';
}
}
echo '<br><br>';
}
print_r($arrayAutoRiegeneinteilung);*/
return http_response_code(200);