$_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

">