Kleine Änderungen

This commit is contained in:
Borgal
2025-10-13 17:44:43 +02:00
parent 1a568d75a7
commit 94aa765186
8 changed files with 838 additions and 701 deletions

View File

@@ -5,18 +5,43 @@ include('inc/helpers.php');
// PHP-Logik für die Löschfunktion
if (isset($_GET['action']) && $_GET['action'] == 'delete' && isset($_GET['id'])) {
$id = $_GET['id'];
$stmt = mysqli_prepare($conn, "DELETE FROM meetings WHERE id = ?");
mysqli_stmt_bind_param($stmt, "i", $id);
if (mysqli_stmt_execute($stmt)) {
// Erfolgreiche Weiterleitung
$id = intval($_GET['id']);
// 🔥 Zuerst abhängige Tabellen bereinigen in der richtigen Reihenfolge!
// 1. Abstimmungen zu Vorschlägen löschen
$stmt1 = mysqli_prepare($conn, "DELETE FROM meeting_reschedule_votes WHERE proposal_id IN (SELECT id FROM meeting_reschedule_proposals WHERE meeting_id = ?)");
if ($stmt1) {
mysqli_stmt_bind_param($stmt1, "i", $id);
mysqli_stmt_execute($stmt1);
mysqli_stmt_close($stmt1);
}
// 2. Verschiebungsvorschläge löschen
$stmt2 = mysqli_prepare($conn, "DELETE FROM meeting_reschedule_proposals WHERE meeting_id = ?");
if ($stmt2) {
mysqli_stmt_bind_param($stmt2, "i", $id);
mysqli_stmt_execute($stmt2);
mysqli_stmt_close($stmt2);
}
// 3. Teilnehmerdaten löschen
$stmt3 = mysqli_prepare($conn, "DELETE FROM meeting_teilnehmer WHERE meeting_id = ?");
if ($stmt3) {
mysqli_stmt_bind_param($stmt3, "i", $id);
mysqli_stmt_execute($stmt3);
mysqli_stmt_close($stmt3);
}
// 4. Jetzt den Termin selbst löschen
$stmt4 = mysqli_prepare($conn, "DELETE FROM meetings WHERE id = ?");
mysqli_stmt_bind_param($stmt4, "i", $id);
if (mysqli_stmt_execute($stmt4)) {
header("Location: history.php?status=deleted");
exit;
} else {
// Fehler-Meldung, falls etwas schiefgeht
$error_message = "Fehler beim Löschen des Termins.";
}
mysqli_stmt_close($stmt);
mysqli_stmt_close($stmt4);
}
// Funktion zum Abrufen aller Meeting-Details
@@ -104,7 +129,6 @@ $colors = mysqli_fetch_all($colors_result, MYSQLI_ASSOC);
$all_meetings = get_all_meeting_details($conn);
include('inc/header.php');
?>
<div class="container mt-5">
@@ -113,6 +137,13 @@ include('inc/header.php');
<h2>Termin-History</h2>
</div>
<?php if (isset($error_message)): ?>
<div class="alert alert-danger alert-dismissible fade show" role="alert">
<?= htmlspecialchars($error_message) ?>
<button type="button" class="btn-close" data-bs-dismiss="alert"></button>
</div>
<?php endif; ?>
<?php if (empty($all_meetings)): ?>
<div class="alert alert-info text-center" role="alert">
Bisher wurden keine Treffen erfasst.
@@ -127,7 +158,6 @@ include('inc/header.php');
<?php
if ($_SESSION['role'] == 'admin') {
?>
<div>
<a href="admin/participant.php?id=<?= $meeting_id ?>&source=history" style="text-decoration: none; border: none; outline: none;">
<span class="material-symbols-outlined text-dark">edit_calendar</span>