index.php 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. require_once __DIR__ . '/config.php';
  3. require_once __DIR__ . '/includes/functions.php';
  4. $pageTitle = 'Startseite';
  5. $products = getProducts();
  6. // Filter by category if provided
  7. $category = isset($_GET['category']) ? sanitize($_GET['category']) : '';
  8. if ($category) {
  9. $products = array_filter($products, function($product) use ($category) {
  10. return $product['category'] === $category;
  11. });
  12. }
  13. include __DIR__ . '/includes/header.php';
  14. ?>
  15. <h2>Unsere Produkte</h2>
  16. <div style="margin: 1.5rem 0;">
  17. <a href="?category=" class="btn btn-small <?php echo $category === '' ? '' : 'btn-secondary'; ?>">Alle</a>
  18. <a href="?category=apparel" class="btn btn-small <?php echo $category === 'apparel' ? '' : 'btn-secondary'; ?>">Bekleidung</a>
  19. <a href="?category=merch" class="btn btn-small <?php echo $category === 'merch' ? '' : 'btn-secondary'; ?>">Merchandise</a>
  20. </div>
  21. <?php if (empty($products)): ?>
  22. <div class="alert alert-info">
  23. <p>Keine Produkte gefunden.</p>
  24. </div>
  25. <?php else: ?>
  26. <div class="products-grid">
  27. <?php foreach ($products as $product): ?>
  28. <div class="product-card">
  29. <a href="product.php?id=<?php echo $product['id']; ?>">
  30. <?php if (!empty($product['image']) && file_exists(__DIR__ . '/assets/images/' . $product['image'])): ?>
  31. <img src="<?php echo SITE_URL; ?>/assets/images/<?php echo htmlspecialchars($product['image']); ?>" alt="<?php echo htmlspecialchars($product['name']); ?>">
  32. <?php else: ?>
  33. <img src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='250' height='200'%3E%3Crect fill='%23e9ecef' width='250' height='200'/%3E%3Ctext x='50%25' y='50%25' text-anchor='middle' dy='.3em' fill='%236c757d'%3EKein Bild%3C/text%3E%3C/svg%3E" alt="Kein Bild">
  34. <?php endif; ?>
  35. </a>
  36. <div class="product-card-content">
  37. <h3><a href="product.php?id=<?php echo $product['id']; ?>" style="text-decoration: none; color: inherit;"><?php echo htmlspecialchars($product['name']); ?></a></h3>
  38. <div class="price"><?php echo formatPrice($product['price']); ?></div>
  39. <?php
  40. $totalStock = getTotalStock($product);
  41. ?>
  42. <div class="stock <?php echo $totalStock > 0 ? 'in-stock' : 'out-of-stock'; ?>">
  43. <?php if ($totalStock > 0): ?>
  44. Verfügbar (<?php echo $totalStock; ?> Stück)
  45. <?php else: ?>
  46. Ausverkauft - Nachbestellung möglich
  47. <?php endif; ?>
  48. </div>
  49. <a href="product.php?id=<?php echo $product['id']; ?>" class="btn" style="width: 100%; text-align: center; margin-top: 1rem;">Details ansehen</a>
  50. </div>
  51. </div>
  52. <?php endforeach; ?>
  53. </div>
  54. <?php endif; ?>
  55. <?php include __DIR__ . '/includes/footer.php'; ?>