Hotel Raxa Dev 5b1e2453c7 Hotel Raxa - Advanced Booking System Implementation
🏨 Hotel Booking Enhancements:
- Implemented Eagle Booking Advanced Pricing add-on
- Added Booking.com-style rate management system
- Created professional calendar interface for pricing
- Integrated deals and discounts functionality

💰 Advanced Pricing Features:
- Dynamic pricing models (per room, per person, per adult)
- Base rates, adult rates, and child rates management
- Length of stay discounts and early bird deals
- Mobile rates and secret deals implementation
- Seasonal promotions and flash sales

📅 Availability Management:
- Real-time availability tracking
- Stop sell and restriction controls
- Closed to arrival/departure functionality
- Minimum/maximum stay requirements
- Automatic sold-out management

💳 Payment Integration:
- Maintained Redsys payment gateway integration
- Seamless integration with existing Eagle Booking
- No modifications to core Eagle Booking plugin

🛠️ Technical Implementation:
- Custom database tables for advanced pricing
- WordPress hooks and filters integration
- AJAX-powered admin interface
- Data migration from existing Eagle Booking
- Professional calendar view for revenue management

📊 Admin Interface:
- Booking.com-style management dashboard
- Visual rate and availability calendar
- Bulk operations for date ranges
- Statistics and analytics dashboard
- Modal dialogs for quick editing

🔧 Code Quality:
- WordPress coding standards compliance
- Secure database operations with prepared statements
- Proper input validation and sanitization
- Error handling and logging
- Responsive admin interface

🤖 Generated with Claude Code (https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-11 07:43:22 +02:00

1 line
3.7 KiB
CSS

#e-announcements-root{position:fixed;display:flex;top:0;left:0;width:100%;height:100%;align-items:center;justify-content:center;color:var(--e-a-color-txt);font-family:Roboto,Arial,Helvetica,sans-serif;z-index:9998}#e-announcements-root .announcements-container{width:640px;max-width:100%;background-color:var(--e-a-bg-default);border-radius:var(--e-a-border-radius);z-index:9998}#e-announcements-root .announcements-container .announcements-heading-container{display:flex;align-items:center;padding:16px 32px;border-block-end:var(--e-a-border)}#e-announcements-root .announcements-container .announcements-heading-container .eicon-elementor{color:var(--e-a-color-logo);background-color:var(--e-a-bg-logo);border-radius:50%;padding:8px}#e-announcements-root .announcements-container .announcements-heading-container .heading-title{margin-inline-start:12px;text-transform:uppercase;font-weight:700;color:var(--e-a-color-txt-active)}#e-announcements-root .announcements-container .announcements-heading-container .close-button{margin-inline-start:auto;background:none;color:inherit;border:none;padding:0;font:inherit;cursor:pointer;outline:inherit}#e-announcements-root .announcements-container .announcements-heading-container .close-button:hover{color:var(--e-a-color-txt-hover)}#e-announcements-root .announcements-container .announcement-body-container .announcement-body-media img{width:100%;max-height:360px;-o-object-fit:contain;object-fit:contain}#e-announcements-root .announcements-container .announcement-body-container .announcement-body-content{padding:30px}#e-announcements-root .announcements-container .announcement-body-container .announcement-body-content .announcement-body-title{font-size:18px;font-weight:700;color:var(--e-a-color-txt-accent);padding-block-end:15px}#e-announcements-root .announcements-container .announcement-body-container .announcement-body-content .announcement-body-description{font-size:16px;line-height:24px;font-weight:400;color:var(--e-a-color-txt)}#e-announcements-root .announcements-container .announcement-body-container .announcement-body-content p{margin-block-end:15px}#e-announcements-root .announcements-container .announcement-body-container .announcement-body-content ul{margin-inline-start:20px;margin-block-end:15px}#e-announcements-root .announcements-container .announcement-body-container .announcement-body-content li{list-style:disc;margin-block-end:5px}#e-announcements-root .announcements-container .announcement-footer-container{display:flex;flex-direction:row-reverse;padding:12px 32px 32px}#e-announcements-root .announcements-container .announcement-footer-container .button-item{margin-inline-start:12px;padding:8px 16px;outline:none;border:none;border-radius:var(--e-a-border-radius);transition:var(--e-a-transition-hover);background:transparent;color:var(--e-a-color-txt);cursor:pointer}#e-announcements-root .announcements-container .announcement-footer-container .button-item:hover{background:var(--e-a-bg-hover);color:var(--e-a-color-txt-hover)}#e-announcements-root .announcements-container .announcement-footer-container .button-item:disabled{background:transparent;color:var(--e-a-color-txt-disabled)}#e-announcements-root .announcements-container .announcement-footer-container .button-item.primary{background-color:var(--e-a-btn-bg-accent);color:var(--e-a-btn-color-invert)}#e-announcements-root .announcements-container .announcement-footer-container .button-item.primary:hover{background-color:var(--e-a-btn-bg-accent-hover)}#e-announcements-root .announcements-container .announcement-footer-container .button-item.primary:active{background-color:var(--e-a-btn-bg-accent-active)}#e-announcements-root .announcements-screen-overlay{position:fixed;width:100%;height:100%;background-color:rgba(0,0,0,.6)}