/** * Booking form scripts */ public function scripts() { global $wp_locale; $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min'; $wc_bookings_booking_form_args = array('closeText' => __('Close', 'woocommerce-bookings'), 'currentText' => __('Today', 'woocommerce-bookings'), 'monthNames' => array_values($wp_locale->month), 'monthNamesShort' => array_values($wp_locale->month_abbrev), 'dayNames' => array_values($wp_locale->weekday), 'dayNamesShort' => array_values($wp_locale->weekday_abbrev), 'dayNamesMin' => array_values($wp_locale->weekday_initial), 'firstDay' => get_option('start_of_week'), 'current_time' => date('Ymd', current_time('timestamp')), 'check_availability_against' => $this->product->wc_booking_check_availability_against, 'duration_unit' => $this->product->wc_booking_duration_unit); if (in_array($this->product->wc_booking_duration_unit, array('minute', 'hour'))) { $wc_bookings_booking_form_args['booking_duration'] = 1; } else { $wc_bookings_booking_form_args['booking_duration'] = $this->product->wc_booking_duration; $wc_bookings_booking_form_args['booking_duration_type'] = $this->product->get_duration_type(); if ('customer' == $wc_bookings_booking_form_args['booking_duration_type']) { $wc_bookings_booking_form_args['booking_min_duration'] = $this->product->get_min_duration(); $wc_bookings_booking_form_args['booking_max_duration'] = $this->product->get_max_duration(); } else { $wc_bookings_booking_form_args['booking_min_duration'] = $wc_bookings_booking_form_args['booking_duration']; $wc_bookings_booking_form_args['booking_max_duration'] = $wc_bookings_booking_form_args['booking_duration']; } } wp_enqueue_script('wc-bookings-booking-form', WC_BOOKINGS_PLUGIN_URL . '/assets/js/booking-form' . $suffix . '.js', array('jquery', 'jquery-blockui'), WC_BOOKINGS_VERSION, true); wp_localize_script('wc-bookings-booking-form', 'wc_bookings_booking_form', $wc_bookings_booking_form_args); wp_register_script('wc-bookings-date-picker', WC_BOOKINGS_PLUGIN_URL . '/assets/js/date-picker' . $suffix . '.js', array('wc-bookings-booking-form', 'jquery-ui-datepicker'), WC_BOOKINGS_VERSION, true); wp_register_script('wc-bookings-month-picker', WC_BOOKINGS_PLUGIN_URL . '/assets/js/month-picker' . $suffix . '.js', array('wc-bookings-booking-form'), WC_BOOKINGS_VERSION, true); wp_register_script('wc-bookings-time-picker', WC_BOOKINGS_PLUGIN_URL . '/assets/js/time-picker' . $suffix . '.js', array('wc-bookings-booking-form'), WC_BOOKINGS_VERSION, true); // Variables for JS scripts $booking_form_params = array('ajax_url' => WC()->ajax_url(), 'i18n_date_unavailable' => __('This date is unavailable', 'woocommerce-bookings'), 'i18n_start_date' => __('Choose a Start Date', 'woocommerce-bookings'), 'i18n_end_date' => __('Choose an End Date', 'woocommerce-bookings'), 'i18n_dates' => __('Dates', 'woocommerce-bookings'), 'i18n_choose_options' => __('Please select the options for your booking above first', 'woocommerce-bookings')); wp_localize_script('wc-bookings-booking-form', 'booking_form_params', apply_filters('booking_form_params', $booking_form_params)); }