diff --git a/src/packing_list_detail.php b/src/packing_list_detail.php index 1ec7c56..2ed1356 100644 --- a/src/packing_list_detail.php +++ b/src/packing_list_detail.php @@ -10,11 +10,9 @@ if (!isset($_SESSION['user_id'])) { exit; } require_once 'db_connect.php'; -require_once 'header.php'; $current_user_id = $_SESSION['user_id']; $packing_list_id = isset($_GET['id']) ? intval($_GET['id']) : 0; -$packing_list = null; // Handle Todo Toggle if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['toggle_todo_item'])) { @@ -28,6 +26,10 @@ if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['toggle_todo_item'])) { header("Location: packing_list_detail.php?id=" . $packing_list_id); exit; } + +require_once 'header.php'; + +$packing_list = null; $total_weight_grams = 0; $total_consumable_weight = 0; $weight_by_category = []; @@ -88,6 +90,13 @@ if (!empty($packing_list['todo_list_id'])) { $stmt_td->close(); } +// Check for items on the table +$stmt_table = $conn->prepare("SELECT COUNT(*) as table_count FROM packing_list_items WHERE packing_list_id = ? AND carrier_user_id IS NULL AND backpack_id IS NULL AND backpack_compartment_id IS NULL AND parent_packing_list_item_id IS NULL"); +$stmt_table->bind_param("i", $packing_list_id); +$stmt_table->execute(); +$table_items_count = $stmt_table->get_result()->fetch_assoc()['table_count']; +$stmt_table->close(); + $page_title = "Packliste: " . htmlspecialchars($packing_list['name']); // FIX: Join Categories also for Backpacks @@ -110,6 +119,7 @@ $sql = "SELECT LEFT JOIN manufacturers AS m ON a.manufacturer_id = m.id LEFT JOIN users AS u ON pli.carrier_user_id = u.id WHERE pli.packing_list_id = ? + AND NOT (pli.carrier_user_id IS NULL AND pli.backpack_id IS NULL AND pli.backpack_compartment_id IS NULL AND pli.parent_packing_list_item_id IS NULL) ORDER BY pli.order_index ASC"; $stmt = $conn->prepare($sql); @@ -365,8 +375,8 @@ function render_item_row($item, $level, $items_by_parent) {