🏨 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>
1 line
2.6 KiB
Plaintext
1 line
2.6 KiB
Plaintext
{"version":3,"sources":["redux-dimensions.scss","redux-dimensions.css"],"names":[],"mappings":"AAAA,kFCGQ,sBAAsB,EDUvB,WAAY,EAAA;;AAbnB,sDCQQ,kBAAkB,EAClB,kBAAkB,EAAA;;AAI1B,uCACI,4DAGY,gCAAgC,EAChC,uBAAuB,EAAA;CAJnC,8DAQY,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAAA;CAV5B,8CAeQ,eAAe,EAAA,EAClB;;AAtBT,i2BAAi2B","file":"redux-dimensions.css","sourcesContent":[".redux-dimensions-container {\r\n select,\r\n .select_wrapper {\r\n width: 80px !important;\r\n float: left;\r\n }\r\n\r\n .field-dimensions-input {\r\n margin-right: 10px;\r\n margin-bottom: 7px;\r\n }\r\n}\r\n\r\n@media screen and (max-width: 782px) {\r\n .redux-dimensions-container {\r\n .field-dimensions-input {\r\n input {\r\n display: inline-block !important;\r\n width: 100px !important;\r\n }\r\n\r\n .add-on {\r\n padding: 7px 4px;\r\n font-size: 16px;\r\n line-height: 1.5;\r\n }\r\n }\r\n\r\n .select_wrapper {\r\n margin-top: 6px;\r\n }\r\n }\r\n}\r\n\r\n",".redux-dimensions-container select, .redux-dimensions-container .select_wrapper { width: 80px !important; float: left; }\n\n.redux-dimensions-container .field-dimensions-input { margin-right: 10px; margin-bottom: 7px; }\n\n@media screen and (max-width: 782px) { .redux-dimensions-container .field-dimensions-input input { display: inline-block !important; width: 100px !important; }\n\t.redux-dimensions-container .field-dimensions-input .add-on { padding: 7px 4px; font-size: 16px; line-height: 1.5; }\n\t.redux-dimensions-container .select_wrapper { margin-top: 6px; } }\n\n/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkdXgtZGltZW5zaW9ucy5jc3MiLCJzb3VyY2VzIjpbInJlZHV4LWRpbWVuc2lvbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxBQUNJLDJCQUR1QixDQUN2QixNQUFNLEVBRFYsMkJBQTJCLENBRXZCLGVBQWUsQ0FBQyxFQUNaLEtBQUssRUFBRSxlQUFlLEVBQ3RCLEtBQUssRUFBRSxJQUFJLEdBQ2Q7O0FBTEwsQUFPSSwyQkFQdUIsQ0FPdkIsdUJBQXVCLENBQUMsRUFDcEIsWUFBWSxFQUFFLElBQUksRUFDbEIsYUFBYSxFQUFFLEdBQUcsR0FDckI7O0FBR0wsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxJQUMvQixBQUVRLDJCQUZtQixDQUN2Qix1QkFBdUIsQ0FDbkIsS0FBSyxDQUFDLEVBQ0YsT0FBTyxFQUFFLHVCQUF1QixFQUNoQyxLQUFLLEVBQUUsZ0JBQWdCLEdBQzFCO0NBTFQsQUFPUSwyQkFQbUIsQ0FDdkIsdUJBQXVCLENBTW5CLE9BQU8sQ0FBQyxFQUNKLE9BQU8sRUFBRSxPQUFPLEVBQ2hCLFNBQVMsRUFBRSxJQUFJLEVBQ2YsV0FBVyxFQUFFLEdBQUcsR0FDbkI7Q0FYVCxBQWNJLDJCQWR1QixDQWN2QixlQUFlLENBQUMsRUFDWixVQUFVLEVBQUUsR0FBRyxHQUNsQiJ9 */\n\n/*# sourceMappingURL=redux-dimensions.css.map */\n"]} |