main.html

8.72 KB
05/11/2024 10:40
HTML
<!DOCTYPE html>
<html lang="th">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>ร้านขนมปังสังขยา</title>
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css">
  <link rel="stylesheet" href="css/styles.css">
</head>

<body>
  <!-- Header -->
  <header class="site-header glass">
    <div class="container">
      <div class="logo">
        <img src="assets/images/logo.svg" alt="ขนมปังสังขยา" id="siteLogo">
      </div>

      <nav class="nav-buttons">
        <button class="nav-btn" data-action="show-profile">
          <i class="fas fa-user"></i>
          <span class="button-text">โปรไฟล์</span>
        </button>
        <button class="nav-btn" data-action="show-orders">
          <i class="fas fa-history"></i>
          <span class="button-text">ประวัติสั่งซื้อ</span>
        </button>
        <button class="nav-btn" data-action="show-login">
          <i class="fas fa-sign-in-alt"></i>
          <span class="button-text">เข้าสู่ระบบ</span>
        </button>
      </nav>
    </div>
  </header>

  <!-- Main Content -->
  <main role="main">
    <!-- Hero Section -->
    <section class="hero section">
      <div class="hero-content glass">
        <h1 id="heroTitle" class="title">ขนมปังสังขยา</h1>
        <p class="subtitle">อร่อยทุกคำ หอมหวานทุกชิ้น</p>
        <a href="#menu" class="cta-button">
          <i class="fas fa-utensils"></i>
          ดูเมนู
        </a>
      </div>
    </section>

    <!-- Menu Section -->
    <section id="menu" class="section menu-section">
      <div class="container">
        <h2 class="section-title">เมนูของเรา</h2>

        <!-- Category Filters -->
        <div id="categoryFilters" class="category-filters"></div>

        <!-- Search Bar -->
        <div class="search-bar">
          <div class="search-input-wrapper">
            <i class="fas fa-search"></i>
            <input type="text" id="searchInput" placeholder="ค้นหาเมนู...">
          </div>
        </div>

        <!-- Products Grid -->
        <div id="productGrid" class="products-grid"></div>
      </div>
    </section>
  </main>

  <!-- Cart Button -->
  <button id="cartBtn" class="cart-button" aria-label="ตะกร้าสินค้า">
    <i class="fas fa-shopping-cart"></i>
    <span class="cart-count">0</span>
  </button>

  <!-- Cart Modal -->
  <div id="cartModal" class="modal">
    <div class="modal-content glass">
      <div class="modal-header">
        <h2>
          <i class="fas fa-shopping-cart"></i>
          ตะกร้าสินค้า
        </h2>
        <button class="modal-close" aria-label="ปิด">&times;</button>
      </div>

      <div id="cartItems" class="cart-items"></div>

      <div class="cart-summary">
        <div class="cart-subtotal">
          <span>ยอดรวม:</span>
          <span id="subtotal">0 บาท</span>
        </div>
        <div class="cart-delivery">
          <span>ค่าจัดส่ง:</span>
          <span id="deliveryFee">0 บาท</span>
        </div>
        <div class="cart-total">
          <span>รวมทั้งสิ้น:</span>
          <span id="total">0 บาท</span>
        </div>
        <div id="minimumOrderWarning" class="minimum-warning"></div>
        <button id="checkoutBtn" class="checkout-btn" disabled>
          <i class="fas fa-shopping-cart"></i>
          สั่งซื้อ
        </button>
      </div>
    </div>
  </div>

  <!-- Checkout Modal -->
  <div id="checkoutModal" class="modal">
    <div class="modal-content glass">
      <div class="modal-header">
        <h2>
          <i class="fas fa-shopping-basket"></i>
          ข้อมูลการสั่งซื้อ
        </h2>
        <button class="modal-close" aria-label="ปิด">&times;</button>
      </div>

      <form id="checkoutForm">
        <!-- Customer Information -->
        <div class="form-section">
          <h3>
            <i class="fas fa-user"></i>
            ข้อมูลผู้สั่งซื้อ
          </h3>
          <div class="form-group">
            <label for="name">ชื่อ-นามสกุล</label>
            <input type="text" id="name" name="name" required>
          </div>
          <div class="form-group">
            <label for="phone">เบอร์โทรศัพท์</label>
            <input type="tel" id="phone" name="phone" pattern="[0-9]{10}" required>
          </div>
          <div class="form-group">
            <label for="address">ที่อยู่จัดส่ง</label>
            <textarea id="address" name="address" required></textarea>
          </div>
        </div>

        <!-- Payment Methods -->
        <div class="form-section">
          <h3>
            <i class="fas fa-credit-card"></i>
            วิธีการชำระเงิน
          </h3>
          <div class="payment-methods">
            <label class="payment-method-option">
              <input type="radio" name="payment" value="promptpay" checked>
              <i class="fab fa-cc-jcb"></i>
              พร้อมเพย์
            </label>
            <label class="payment-method-option">
              <input type="radio" name="payment" value="banking">
              <i class="fas fa-university"></i>
              โอนผ่านธนาคาร
            </label>
            <label class="payment-method-option">
              <input type="radio" name="payment" value="cod">
              <i class="fas fa-money-bill-wave"></i>
              เก็บเงินปลายทาง
            </label>
          </div>
        </div>

        <button type="submit" class="submit-btn">
          <i class="fas fa-check"></i>
          ยืนยันการสั่งซื้อ
        </button>
      </form>
    </div>
  </div>

  <!-- Profile Modal -->
  <div id="profileModal" class="modal"></div>

  <!-- Login Modal -->
  <div id="loginModal" class="modal">
    <div class="modal-content glass">
      <div class="modal-header">
        <h2>
          <i class="fas fa-sign-in-alt"></i>
          เข้าสู่ระบบ
        </h2>
        <button class="modal-close" aria-label="ปิด">&times;</button>
      </div>

      <form id="loginForm">
        <div class="form-group">
          <label for="username">ชื่อผู้ใช้</label>
          <input type="text" id="username" name="username" required>
        </div>
        <div class="form-group">
          <label for="password">รหัสผ่าน</label>
          <input type="password" id="password" name="password" required>
        </div>
        <button type="submit" class="submit-btn">
          <i class="fas fa-sign-in-alt"></i>
          เข้าสู่ระบบ
        </button>
      </form>
    </div>
  </div>

  <!-- Notifications -->
  <div id="notificationContainer" class="notification-container"></div>

  <!-- Loading Spinner -->
  <div id="loadingSpinner" class="loading-spinner">
    <div class="spinner"></div>
  </div>

  <!-- Templates -->
  <template id="cartItemTemplate">
    <div class="cart-item">
      <div class="cart-item-image">
        <img src="" alt="">
      </div>
      <div class="cart-item-content">
        <div class="cart-item-header">
          <h4 class="cart-item-title"></h4>
          <button class="remove-btn" data-action="remove">
            <i class="fas fa-trash"></i>
          </button>
        </div>
        <div class="cart-item-details">
          <div class="cart-item-price">
            <span class="price-value"></span>
          </div>
          <div class="cart-item-controls">
            <button class="quantity-btn" data-action="decrease">
              <i class="fas fa-minus"></i>
            </button>
            <span class="quantity"></span>
            <button class="quantity-btn" data-action="increase">
              <i class="fas fa-plus"></i>
            </button>
          </div>
        </div>
      </div>
    </div>
  </template>

  <!-- Scripts -->
  <script src="js/config.js"></script>
  <script src="js/utils.js"></script>
  <script src="js/state.js"></script>
  <script src="js/storage.js"></script>
  <script src="js/notification-manager.js"></script>
  <script src="js/customer-manager.js"></script>
  <script src="js/product-manager.js"></script>
  <script src="js/cart-manager.js"></script>
  <script src="js/payment-manager.js"></script>
  <script src="js/notification-service.js"></script>
  <script src="js/app.js"></script>
</body>

</html>