Skip to content

allyelvis/reservation-manage-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Reservation Manager Overview

Functionality:

  • Users can input their name, date, and time for the reservation.
  • Users can view a list of their current reservations.
  • Users can modify or cancel existing reservations.

Structure

Here’s a simple structure for the Reservation Manager application, including HTML, embedded CSS, and JavaScript.

1. HTML Structure

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Reservation Manager</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            background-color: #f4f4f4;
            margin: 0;
            padding: 20px;
        }
        .container {
            max-width: 600px;
            margin: auto;
            background: white;
            padding: 20px;
            border-radius: 5px;
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
        }
        h1 {
            text-align: center;
        }
        .reservation-form {
            margin-bottom: 20px;
        }
        label {
            display: block;
            margin-bottom: 5px;
        }
        input, button {
            width: 100%;
            padding: 10px;
            margin-bottom: 10px;
        }
        .reservation-list {
            margin-top: 20px;
        }
        .reservation-item {
            display: flex;
            justify-content: space-between;
            padding: 10px;
            background: #eee;
            margin-bottom: 5px;
            border-radius: 3px;
        }
        .remove-button {
            background: red;
            color: white;
            border: none;
            cursor: pointer;
        }
    </style>
</head>
<body>
    <div class="container">
        <h1>Reservation Manager</h1>
        <form class="reservation-form" id="reservationForm">
            <label for="name">Name:</label>
            <input type="text" id="name" required>
            <label for="date">Date:</label>
            <input type="date" id="date" required>
            <label for="time">Time:</label>
            <input type="time" id="time" required>
            <button type="submit">Add Reservation</button>
        </form>
        <div class="reservation-list" id="reservationList"></div>
    </div>

    <script>
        document.getElementById('reservationForm').addEventListener('submit', function(e) {
            e.preventDefault();
            const name = document.getElementById('name').value;
            const date = document.getElementById('date').value;
            const time = document.getElementById('time').value;
            
            addReservation(name, date, time);
            this.reset();
        });

        function addReservation(name, date, time) {
            const reservationList = document.getElementById('reservationList');
            const reservationItem = document.createElement('div');
            reservationItem.className = 'reservation-item';
            reservationItem.innerHTML = `
                <span>${name} - ${date} at ${time}</span>
                <button class="remove-button" onclick="removeReservation(this)">Remove</button>`;
            reservationList.appendChild(reservationItem);
        }

        function removeReservation(button) {
            const reservationItem = button.parentElement;
            reservationItem.remove();
        }
    </script>
</body>
</html>

Explanation:

  1. HTML Layout: The layout consists of a form for users to input their reservation data (name, date, time), and an area to display a list of reservations.

  2. CSS: Embedded CSS provides basic styling for a clean, minimal appearance.

  3. JavaScript:

    • The form uses an event listener to capture submission.
    • On submission, it adds a new reservation to the list.
    • Each reservation has a button for removal.

Next Steps:

  • Testing and Sharing: Once you've set this up, you can test it in your browser. This is a simple SPA and should work on various devices and browsers.

  • Storage Options: If you want the reservations to persist (e.g., after a page reload), we could explore using local storage or adding a backend service for data handling.

  • Additional Features: After testing, consider improvements like validation messages, user authentication, or database integration for more robust functionality.

Would you like to proceed with any additional features or move on to the next app in the suite? Additionally, are you considering any particular hosting needs?

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages