- HTML
- CSS
- JavaScript
- jQuery
- Micromodal.js (for modal functionality)
- Python
- Tornado Web Framework
- Oracle Database
User Authentication:
- Users can log in to their accounts.
- Logout functionality is available.
Navigation:
Users can navigate through different sections such as "Today," "Tomorrow," and "Booking History."
Movie Listing:
- Movies are categorized by genres like Action, Comedy, and Drama.
- Users can view available movies with their details.
Seat Selection:
- Users can select seats for a specific showtime.
- The seat selection is visualized with different seat states (available, selected, occupied).
Booking Confirmation:
- Users can confirm their seat selection and choose a payment method.
- Real-time updates on the selected seats count and total price.
Modal Interface:
- Modal dialogs are used for various interactions, enhancing the user experience.
- Micromodal.js is employed for modal functionality.
Booking History:
- Users can view their booking history, showing past reservations.
- The Oracle Database is used for storing user information, booking details, and other relevant data.
The database schema includes the following tables:
Database Connection: The database is initialized using the oracledb module, and a connection is established with the following credentials:
- Username: project
- Password: project
- DSN: localhost/xe
The Tornado web framework handles HTTP requests and serves the web application. Various endpoints are defined for functionalities such as user authentication, booking, and user history.
User authentication is implemented using secure cookies. The user's session details are stored in a secure cookie upon successful login.
User passwords are hashed using the MD5 hashing algorithm before storing them in the database, enhancing security.
- Ensure that Oracle Database is installed and running.
- Initialize the Oracle Database with the provided schema and credentials.
- Install the required Python packages: pip install tornado oracledb
- Run the Python script containing the Tornado application
- Access the web server at http://localhost:8888.
Mention any planned enhancements or features that could be added in the future.