Commit Graph

16 Commits

Author SHA1 Message Date
624ff820da Add PDF ticket generation and download feature
Introduces PDF ticket generation using html2canvas and jsPDF, including a new PdfTicketComponent for ticket rendering and a PdfService for PDF creation. Updates purchase success flow to allow users to download tickets as PDFs, adds progress feedback, and includes a test route and component for development. Also refactors order form with a fake fill helper and improves UI details.
2025-11-26 11:54:42 +01:00
a7dacb2831 Merge branch 'main' of git.infinimotion.de:infinimotion/frontend 2025-11-21 15:55:48 +01:00
ade5479a74 Add functionality to cancel tickets
Introduces a cancel order confirmation dialog and integrates it into the order flow. Refactors error and success components to support singular/plural seat messaging and retry actions. Updates navigation and button behaviors for better user experience. Fixes minor UI and logic issues in reservation, purchase, and conversion flows.
2025-11-21 15:53:42 +01:00
3bc5b9cd3a Add cancellation and conversion error/success flows
Introduces new components for cancellation and conversion error/success states, updates routing and UI to support resuming and cancelling orders, and refactors seat selection and order handling logic to accommodate these new flows. Also improves seat selection feedback and error handling throughout the checkout process.
2025-11-20 23:19:16 +01:00
711ad39dd6 Add selection conflict info component and handle seat conflicts
Introduces SelectionConflictInfoComponent to display seat selection conflicts when a seat is removed due to external booking. Removes ShoppingCartComponent and its references. Updates SelectedSeatsService to track conflict state and modifies TheaterOverlayComponent to detect and handle seat conflicts, updating the UI accordingly.
2025-11-19 19:53:13 +01:00
Marcel-Anker
26f2dd2165 removed redundant ; 2025-11-19 11:03:29 +01:00
b619d744c1 Add inactivity timeout and polling control to seat overlay
Introduces user inactivity tracking and timeout for seat polling in TheaterOverlayComponent. Polling is paused after 2 minutes of inactivity or when the user advances past step 1, with a snackbar notification and resume option. Refactors polling logic, adds step change event to OrderComponent, and updates custom theme for snackbar styling.
2025-11-19 10:59:34 +01:00
fba895a3bb Add transactional order creation API integration
Introduces saveAddOrder method in HttpService to POST orders and tickets transactionally. Refactors OrderComponent to use the new API for submitting orders and tickets in a single transaction, improving data consistency.
2025-11-17 23:06:42 +01:00
e5707709bf Refactor order process to fix flicker bug 2025-11-15 01:53:13 +01:00
4ec3795697 Styling 2025-11-15 00:41:18 +01:00
50cac8ac24 Add reservation and purchase functionality
Introduces ReservationSuccess, ReservationFailed, PurchaseSuccess, PurchaseFailed, TicketSmall, and TicketList components for handling and displaying reservation and purchase outcomes. Updates order flow logic in OrderComponent to support reservation and purchase states, disables/enables form inputs during submission, and integrates new UI feedback. Also adds angularx-qrcode dependency and updates @infinimotion/model-frontend version.
2025-11-14 17:56:33 +01:00
41c9d85e9b Add payment form and improve order stepper UI
Introduces a payment step with card input masking using ngx-mask, refactors the order stepper to include address and payment forms with validation, and enhances UI/UX with new styles and layout adjustments. Also updates dependencies and module imports to support ngx-mask and Material Checkbox.
2025-11-13 22:36:09 +01:00
cb065c8e39 Make total ticket price dynamic
Refactored price display logic to use computed total price and formatted output in order and seat selection components. Disabled reservation and booking buttons when no seats are selected. Improved clarity by renaming totalPrice to totalCategoryPrice in seat selection.
2025-11-13 09:03:32 +01:00
31108859da Display dynamic seat count and total price per category
Updated seat-selection component to show the actual number of selected seats and calculate the total price per seat category. Integrated SelectedSeatsService and replaced hardcoded values with computed properties for better accuracy and maintainability.
2025-11-13 02:14:40 +01:00
db0322d443 Add seat selection and no seats components
Introduces SeatSelectionComponent and NoSeatsInHallComponent for improved seat category display and handling cases with no available seats. Updates order flow to show seat categories, loading spinner, and total price. Refactors TheaterOverlayComponent to provide seat categories, and updates styles and dependencies.
2025-11-13 01:48:28 +01:00
f489073118 Add order and performance info components to ticket overlay
Introduces OrderComponent, PerformanceInfoComponent, and ShoppingCartComponent for the ticket purchase flow. Updates theater-overlay to display seat selection alongside order details and performance info. Refactors seat and performance data loading, improves UI structure, and enhances movie info display components for consistency.
2025-11-12 10:33:34 +01:00