$_SESSION['admin_username'] ?? "unknown", "order_id" => $_POST['order_id'] ?? "", "item_index" => $_POST['item_index'] ?? -1, ]); } } } if ($_SERVER['REQUEST_METHOD'] === "POST" && isset($_POST['cancel_order'])) { // Validate CSRF token if (!validateCsrfToken($_POST['csrf_token'] ?? "")) { $message = "Ungültiges Token. Bitte versuchen Sie es erneut."; $messageType = "error"; } else { $adminUsername = $_SESSION['admin_username'] ?? ""; $result = cancelOrder( $_POST['order_id'] ?? "", $adminUsername, $_POST['cancellation_reason'] ?? "", ); $message = $result["success"] ? "Bestellung wurde storniert." : $result["message"]; $messageType = $result["success"] ? "success" : "error"; if ($result["success"]) { logAccess("Admin cancelled order", [ "admin" => $adminUsername, "order_id" => $_POST['order_id'] ?? "", ]); } } } $orders = getOrders(); usort($orders, function ($left, $right) { return strcmp($right["created_at"], $left["created_at"]); }); $filter = trim((string) ($_GET['filter'] ?? "all")); $searchOrderId = trim((string) ($_GET['order_id'] ?? "")); $selectedOrderId = trim((string) ($_GET['details'] ?? $searchOrderId)); if ($searchOrderId !== "") { $orders = array_values( array_filter($orders, function ($order) use ($searchOrderId) { return stripos($order["id"], $searchOrderId) !== false; }), ); } if ($filter !== "all") { $orders = array_values( array_filter($orders, function ($order) use ($filter) { switch ($filter) { case "unconfirmed": return $order["confirmation_status"] === "pending"; case "expired": return $order["confirmation_status"] === "expired"; case "open": return $order["confirmation_status"] !== "pending" && $order["status"] === "open"; case "partial": return $order["status"] === "partial"; case "processed": return $order["status"] === "processed"; case "cancelled": return $order["status"] === "cancelled"; } return true; }), ); } $selectedOrder = $selectedOrderId !== "" ? getOrderById($selectedOrderId) : null; $bodyClass = "admin-page"; include __DIR__ . "/../includes/header.php"; ?>

Bestellungen

Zurück zum Dashboard
Zurücksetzen

Keine Bestellungen gefunden.

Bestellnummer Name Organisation Artikel Erstellt Status Aktionen
" class="btn btn-small">Details

Bestellung

Status:

Name:

E-Mail:

Organisation:

Erstellt:

Bestätigt:

Bestätigung offen bis:

Intern weitergeleitet:

Kommentar:

Storniert am:

Storniert durch:

Stornogrund:

Positionen

$item ): ?>
Artikel Größe Lieferhinweis Bearbeitet Aktion
">
">
-

Bestellung stornieren

">