Files

1 line
78 KiB
JavaScript
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
!function(){"use strict";if(window.SR7??={},window._tpt??={},SR7.F??={},SR7.D??={},SR7.E??={},SR7.LIB??={},void 0!==SR7.migrate)return;SR7.migrate??={},SR7.migrate.stgTrans={random:"random",edge:"edges",edges:"edges",edgetomiddle:"edges",forward:"start",start:"start",end:"end",backward:"end",center:"center",middletoedge:"center"},SR7.migrate.actrans={action:"a",action_speed:"s",action_easing:"e",action_delay:"d",action_repeats:"rd",gotoframe:"sc",gotoframeM:"scm",gotoframeN:"scn",scrollto_id:"target_a",openmodal:"target_b",slide:"target_c",jump_to_slide:"target_c",layer_target:"target_e",link_open_in:"target_f",actioncallback:"target_g",menu_link:"link",image_link:"link",menu_anchor:"anchor",scrollunder_offset:"offset",modalslide:"msl",toggle_layer_type:"atst",link_follow:"flw",link_help_in:"http",link_type:"ltype",tooltip_event:"evt",updateChildren:"rec",toggle_class:"class",pinterest_link:"link",pinterest_image:"image",pinterest_link_description:"description",twitter_link:"link",twitter_text:"text",facebook_link:"link",linkedin_link:"link",linkedin_link_title:"title",linkedin_link_summary:"sum"},SR7.migrate.actnames={share_pinterest:"link",share_twitter:"link",share_facebook:"link",share_linkedin:"link",toggle_frames:"toggleScenes",toggle_layer:"toggleScenes",start_frame:"playScene",jumpto:"callSlide",toggle_class:"toggleClass",simulate_click:"simulate",start_in:"playScene",start_out:"playScene",toggle_slider:"togglePrg",scroll_under:"scrollbelow",scrollto:"scroll",lottie_play:"lottiePlay",lottie_pause:"lottiePause",lottie_resume:"lottieResume"},SR7.migrate.actused={default:["a","evt","d","rd"],lottie_play:["target_e","d"],lottie_pause:["target_e","d"],lottie_resume:["target_e","d"],share_pinterest:["link","image","description"],share_twitter:["link","text"],share_facebook:["link"],share_linked:["link","title","sum"],menu_link:["target_f","link","ltype","flw","anchor","offset","s","e","http"],menu:["target_f","link","ltype","flw","anchor","offset","s","e","http"],mtrap_follow:["target_e"],link:["target_f","link","ltype","flw","http"],jumpto:["target_c"],open_modal:["target_b","msl"],next:[],prev:[],pause:[],resume:[],callback:["target_g"],scroll_under:["offset","s","e"],scrollto:["target_a","offset","s","e"],start_in:["target_e","rec"],start_out:["target_e","rec"],next_frame:["target_e","rec"],prev_frame:["target_e","rec"],start_frame:["target_e","rec","sc"],toggle_frames:["target_e","rec","scn","scm","atst"],toggle_layer:["target_e","rec","atst"],getAccelerationPermission:[],start_video:["target_e"],stop_video:["target_e"],mute_video:["target_e"],unmute_video:["target_e"],toggle_video:["target_e"],toggle_mute_video:["target_e"],simulate_click:["target_e"],toggle_class:["target_e","class"]},SR7.migrate.jsCODE=function(e){let t=/\(function\(\)\s*{([\s\S]*?)\}\)\(\);/g;e=(e=(e=(e=(e=(e=(e=(e=(e=(e=(e=(e=(e=SR7.migrate.replaceTextSR6Ids(e)).replaceAll("revolution.slide.onloaded","sr.module.ready")).replaceAll("revolution.layeraction","sr.layer.action")).replaceAll("revolution.slide.onbeforeswap","sr.slide.beforeChange")).replaceAll("revolution.slide.onpause","sr.slide.pause")).replaceAll("revolution.slide.onresume","sr.slide.resume")).replaceAll("revolution.slide.onafterswap","sr.slide.afterChange")).replaceAll("revolution.slide.onchange","sr.slide.afterChange")).replaceAll("rs-sbg-wrap","sr7-bg")).replaceAll(".rs-layer",".sr7-layer")).replaceAll("jQuery.fn.revolution.document.on","document.addEventListener")).replaceAll("jQuery('body').cryptoUpdateInside({container:data.nextslide});","jQuery('body').cryptoUpdateInside({container:jQuery(e.current.slide)});")).replace(t,"(function() { try {$1} catch(e) {console.error('Error in function block:', e);} })();");return t=/jQuery\('body'\)\.on\('click',\s*'\.itm',\s*function\(\)\s*\{\s*window\.location\.hash\s*=\s*'\?' \+ this\.id;\s*return\s*false;\s*\}\);/g,(e=(e=(e=(e=e.replace(/revapi\d+\.bind\("sr\.slide\.beforeChange",/g,"document.addEventListener('sr.slide.beforeChange',")).replaceAll(t,"let itms = document.getElementsByClassName('itm');\nfor (let i = 0; i < itms.length;