Files

1 line
12 KiB
CSS
Raw Permalink Normal View History

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
:root{--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,161;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px;--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color)}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}@media (min-width:782px){.edit-post-fullscreen-mode-close.components-button{align-items:center;align-self:stretch;background:#1e1e1e;border:none;border-radius:0;color:#fff;display:flex;height:60px;position:relative;width:60px}.edit-post-fullscreen-mode-close.components-button:active{color:#fff}.edit-post-fullscreen-mode-close.components-button:focus{box-shadow:none}.edit-post-fullscreen-mode-close.components-button:before{border-radius:4px;bottom:10px;box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #1e1e1e;content:"";display:block;left:9px;position:absolute;right:9px;top:9px}}@media (min-width:782px) and (not (prefers-reduced-motion)){.edit-post-fullscreen-mode-close.components-button:before{transition:box-shadow .1s ease}}@media (min-width:782px){.edit-post-fullscreen-mode-close.components-button:hover:before{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #757575}.edit-post-fullscreen-mode-close.components-button.has-icon:hover:before{box-shadow:none}.edit-post-fullscreen-mode-close.components-button:focus:before{box-shadow:inset 0 0 0 var(--wp-admin-border-width-focus) #ffffff1a,inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color)}}.edit-post-fullscreen-mode-close.components-button .edit-post-fullscreen-mode-close_site-icon{border-radius:2px;height:36px;margin-top:-1px;object-fit:cover;width:36px}.show-icon-labels .editor-header .edit-post-fullscreen-mode-close.has-icon{width:60px}.show-icon-labels .editor-header .edit-post-fullscreen-mode-close.has-icon svg{display:block}.show-icon-labels .editor-header .edit-post-fullscreen-mode-close.has-icon:after{content:none}.edit-post-meta-boxes-main{background-color:#fff;display:flex;filter:drop-shadow(0 -1px rgba(0,0,0,.133));flex-direction:column;outline:1px solid #0000;overflow:hidden}.edit-post-meta-boxes-main.is-resizable{padding-block-start:24px}.edit-post-meta-boxes-main__presenter{box-shadow:0 1px #ddd;display:flex;outline:1px solid #0000;position:relative;z-index:1}.is-resizable.edit-post-meta-boxes-main .edit-post-meta-boxes-main__presenter>button,.is-toggle-only>.edit-post-meta-boxes-main__presenter{appearance:none;background-color:initial;border:none;outline:none;padding:0}.is-toggle-only>.edit-post-meta-boxes-main__presenter{align-items:center;cursor:pointer;flex-shrink:0;height:32px;justify-content:space-between;padding-inline:24px 12px}.is-toggle-only>.edit-post-meta-boxes-main__presenter:is(:hover,:focus-visible){color:var(--wp-admin-theme-color)}.is-toggle-only>.edit-post-meta-boxes-main__presenter:focus-visible:after{box-shadow:0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);content:"";inset:var(--wp-admin-border-width-focus);outline:2px solid #0000;position:absolute}.is-toggle-only>.edit-post-meta-boxes-main__presenter>svg{fill:currentColor}.is-resizable.edit-post-meta-boxes-main .edit-post-meta-boxes-main__presenter{inset:0 0 auto}.is-resizable.edit-post-meta-boxes-main .edit-post-meta-boxes-main__presenter>button{cursor:inherit;height:24px;margin:auto;width:64px}.is-resizable.edit-post-meta-boxes-main .edit-post-meta-boxes-main__presenter>button:before{background-color:#ddd;border-radius:2px;content:"";height:4px;inset-block:calc(50% - 2px) auto;outline:2px solid #0000;outline-offset:-2px;position:absolute;transform:translateX(-50%);width:inherit}@media not (prefers-reduced-motion){.is-resizable.edit-post-meta-boxes-main .edit-post-meta-boxes-main__presenter>button:before{transition:width .3s ease-out}}.is-resizable.edit-post-meta-boxes-main .edit-post-meta-boxes-main__presenter:is(:hover,:focus-within)>button:before{ba