Semi-stable version with old variable names
This commit is contained in:
@@ -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);
|
||||
Reference in New Issue
Block a user