Files
HotelRaxa/wp-content/plugins/elementor/assets/js/49d9a23b08ff2c138b03.bundle.min.js

3 lines
41 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
/*! elementor - v3.24.0 - 15-10-2024 */
/*! For license information please see 49d9a23b08ff2c138b03.bundle.min.js.LICENSE.txt */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[1656],{55839:(r,n,o)=>{"use strict";var a=o(12097),i={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},c={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},l={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},u={};function getStatics(r){return a.isMemo(r)?l:u[r.$$typeof]||i}u[a.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},u[a.Memo]=l;var p=Object.defineProperty,S=Object.getOwnPropertyNames,x=Object.getOwnPropertySymbols,w=Object.getOwnPropertyDescriptor,k=Object.getPrototypeOf,C=Object.prototype;r.exports=function hoistNonReactStatics(r,n,o){if("string"!=typeof n){if(C){var a=k(n);a&&a!==C&&hoistNonReactStatics(r,a,o)}var i=S(n);x&&(i=i.concat(x(n)));for(var l=getStatics(r),u=getStatics(n),O=0;O<i.length;++O){var I=i[O];if(!(c[I]||o&&o[I]||u&&u[I]||l&&l[I])){var R=w(n,I);try{p(r,I,R)}catch(r){}}}}return r}},14173:(r,n)=>{"use strict";var o="function"==typeof Symbol&&Symbol.for,a=o?Symbol.for("react.element"):60103,i=o?Symbol.for("react.portal"):60106,c=o?Symbol.for("react.fragment"):60107,l=o?Symbol.for("react.strict_mode"):60108,u=o?Symbol.for("react.profiler"):60114,p=o?Symbol.for("react.provider"):60109,S=o?Symbol.for("react.context"):60110,x=o?Symbol.for("react.async_mode"):60111,w=o?Symbol.for("react.concurrent_mode"):60111,k=o?Symbol.for("react.forward_ref"):60112,C=o?Symbol.for("react.suspense"):60113,O=o?Symbol.for("react.suspense_list"):60120,I=o?Symbol.for("react.memo"):60115,R=o?Symbol.for("react.lazy"):60116,j=o?Symbol.for("react.block"):60121,$=o?Symbol.for("react.fundamental"):60117,N=o?Symbol.for("react.responder"):60118,W=o?Symbol.for("react.scope"):60119;function z(r){if("object"==typeof r&&null!==r){var n=r.$$typeof;switch(n){case a:switch(r=r.type){case x:case w:case c:case u:case l:case C:return r;default:switch(r=r&&r.$$typeof){case S:case k:case R:case I:case p:return r;default:return n}}case i:return n}}}function A(r){return z(r)===w}n.AsyncMode=x,n.ConcurrentMode=w,n.ContextConsumer=S,n.ContextProvider=p,n.Element=a,n.ForwardRef=k,n.Fragment=c,n.Lazy=R,n.Memo=I,n.Portal=i,n.Profiler=u,n.StrictMode=l,n.Suspense=C,n.isAsyncMode=function(r){return A(r)||z(r)===x},n.isConcurrentMode=A,n.isContextConsumer=function(r){return z(r)===S},n.isContextProvider=function(r){return z(r)===p},n.isElement=function(r){return"object"==typeof r&&null!==r&&r.$$typeof===a},n.isForwardRef=function(r){return z(r)===k},n.isFragment=function(r){return z(r)===c},n.isLazy=function(r){return z(r)===R},n.isMemo=function(r){return z(r)===I},n.isPortal=function(r){return z(r)===i},n.isProfiler=function(r){return z(r)===u},n.isStrictMode=function(r){return z(r)===l},n.isSuspense=function(r){return z(r)===C},n.isValidElementType=function(r){return"string"==typeof r||"function"==typeof r||r===c||r===w||r===u||r===l||r===C||r===O||"object"==typeof r&&null!==r&&(r.$$typeof===R||r.$$typeof===I||r.$$typeof===p||r.$$typeof===S||r.$$typeof===k||r.$$typeof===$||r.$$typeof===N||r.$$typeof===W||r.$$typeof===j)},n.typeOf=z},12097:(r,n,o)=>{"use strict";r.exports=o(14173)},58772:(r,n,o)=>{"use strict";var a=o(90331);function emptyFunction(){}function emptyFunctionWithReset(){}emptyFunctionWithReset.resetWarningCache=emptyFunction,r.exports=function(){function shim(r,n,o,i,c,l){if(l!==a){var u=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw u.name="Invariant Violation",u}}function getShim(){return shim}shim.isRequired=shim;var r={array:shim,bigint:shim,bool:shim,func:shim,number:shim,object:shim,string:shim,symbol:shim,any:shim,arrayOf:getShim,element:shim,elementType:shim,instanceOf:getShim,node:shim,objectOf:getShim,oneOf:getShim,oneOfType:getShim,shape:getShim,exact:getShim,checkPropTypes:emptyFunctionWithRe