Submit
Path:
~
/
home
/
getwphos
/
public_html
/
ppine
/
wp-content
/
plugins
/
ti-woocommerce-wishlist
/
integrations
/
File Content:
woocommerce-bookings.php
<?php /** * TI WooCommerce Wishlist integration with: * * @name WooCommerce Bookings * * @version 1.15.5 * * @slug woocommerce-bookings * * @url https://woocommerce.com/products/woocommerce-bookings/ * */ // If this file is called directly, abort. if (!defined('ABSPATH')) { exit; } // Load integration depends on current settings. global $tinvwl_integrations; $slug = "woocommerce-bookings"; $name = "WooCommerce Bookings"; $available = class_exists('WC_Bookings'); $tinvwl_integrations = is_array( $tinvwl_integrations ) ? $tinvwl_integrations : []; $tinvwl_integrations[$slug] = array( 'name' => $name, 'available' => $available, ); if (!tinv_get_option('integrations', $slug)) { return; } if (!$available) { return; } if (class_exists('WC_Bookings')) { if (!function_exists('tinv_wishlist_metasupport_woocommerce_bookings')) { /** * Set description for meta WooCommerce Bookings * * @param array $meta Meta array. * @param integer $product_id Priduct ID. * @param integer $variation_id Variation Product ID. * * @return array */ function tinv_wishlist_metasupport_woocommerce_bookings($meta, $product_id, $variation_id) { if (!class_exists('WC_Booking_Form') || !function_exists('is_wc_booking_product')) { return $meta; } $product = wc_get_product($variation_id ? $variation_id : $product_id); if (is_wc_booking_product($product)) { $booking_form = (version_compare(WC_BOOKINGS_VERSION, '1.15.0', '<')) ? new WC_Booking_Form($product) : new WC_Bookings_Cost_Calculation(); $post_data = array(); foreach ($meta as $data) { $post_data[$data['key']] = $data['display']; } $booking_data = (version_compare(WC_BOOKINGS_VERSION, '1.15.0', '<')) ? $booking_form->get_posted_data($post_data) : wc_bookings_get_posted_data($post_data, $product); $meta = array(); foreach ($booking_data as $key => $value) { if (!preg_match('/^_/', $key)) { $meta[$key] = array( 'key' => get_wc_booking_data_label($key, $product), 'display' => $value, ); } } } return $meta; } add_filter('tinvwl_wishlist_item_meta_post', 'tinv_wishlist_metasupport_woocommerce_bookings', 10, 3); } // End if(). if (!function_exists('tinvwl_item_price_woocommerce_bookings')) { /** * Modify price for WooCommerce Bookings * * @param string $price Returned price. * @param array $wl_product Wishlist Product. * @param \WC_Product $product Woocommerce Product. * * @return string */ function tinvwl_item_price_woocommerce_bookings($price, $wl_product, $product) { if (!class_exists('WC_Booking_Form') || !function_exists('is_wc_booking_product')) { return $price; } if (is_wc_booking_product($product) && array_key_exists('meta', $wl_product)) { $booking_form = (version_compare(WC_BOOKINGS_VERSION, '1.15.0', '<')) ? new WC_Booking_Form($product) : new WC_Bookings_Cost_Calculation(); $cost = (version_compare(WC_BOOKINGS_VERSION, '1.15.0', '<')) ? $booking_form->calculate_booking_cost($wl_product['meta']) : $booking_form->calculate_booking_cost(wc_bookings_get_posted_data($wl_product['meta'], $product), $product); if (is_wp_error($cost)) { return $price; } if ('incl' === get_option('woocommerce_tax_display_shop')) { if (function_exists('wc_get_price_excluding_tax')) { $display_price = wc_get_price_including_tax($product, array('price' => $cost)); } else { $display_price = $product->get_price_including_tax(1, $cost); } } else { if (function_exists('wc_get_price_excluding_tax')) { $display_price = wc_get_price_excluding_tax($product, array('price' => $cost)); } else { $display_price = $product->get_price_excluding_tax(1, $cost); } } if (version_compare(WC_VERSION, '2.4.0', '>=')) { $price_suffix = $product->get_price_suffix($cost, 1); } else { $price_suffix = $product->get_price_suffix(); } $price = wc_price($display_price) . $price_suffix; } return $price; } add_filter('tinvwl_wishlist_item_price', 'tinvwl_item_price_woocommerce_bookings', 10, 3); } // End if(). if (!function_exists('tinvwl_item_status_woocommerce_bookings')) { /** * Modify availability for WooCommerce Bookings * * @param string $status Status availability. * @param string $availability Default availability. * @param array $wl_product Wishlist Product. * @param \WC_Product $product Woocommerce Product. * * @return type */ function tinvwl_item_status_woocommerce_bookings($status, $availability, $wl_product, $product) { if (!class_exists('WC_Booking_Form') || !function_exists('is_wc_booking_product')) { return $status; } if (is_wc_booking_product($product) && array_key_exists('meta', $wl_product)) { $booking_form = (version_compare(WC_BOOKINGS_VERSION, '1.15.0', '<')) ? new WC_Booking_Form($product) : new WC_Bookings_Cost_Calculation(); $cost = (version_compare(WC_BOOKINGS_VERSION, '1.15.0', '<')) ? $booking_form->calculate_booking_cost($wl_product['meta']) : $booking_form->calculate_booking_cost(wc_bookings_get_posted_data($wl_product['meta'], $product), $product); if (is_wp_error($cost)) { return '<p class="stock out-of-stock"><span><i class="ftinvwl ftinvwl-times"></i></span><span>' . $cost->get_error_message() . '</span></p>'; } } return $status; } add_filter('tinvwl_wishlist_item_status', 'tinvwl_item_status_woocommerce_bookings', 10, 4); } add_filter('woocommerce_product_object_query_args', 'tinvwl_item_product_type_woocommerce_bookings'); function tinvwl_item_product_type_woocommerce_bookings($args) { if (!is_array($args['type'])) { $args['type'] = [$args['type']]; } $args['type'][] = 'booking'; return $args; } }
Edit
Rename
Chmod
Delete
FILE
FOLDER
Name
Size
Permission
Action
automatewoo
---
0755
advanced-product-fields-for-woocommerce-pro.php
6928 bytes
0644
advanced-product-fields-for-woocommerce.php
8536 bytes
0644
automatewoo.php
3463 bytes
0644
buy-now-button-for-woocommerce.php
1454 bytes
0644
check-pincodezipcode-for-shipping-woocommerce.php
1539 bytes
0644
cleantalk-spam-protect.php
1618 bytes
0644
clever-swatches.php
2543 bytes
0644
comet-cache.php
1552 bytes
0644
duracelltomi-google-tag-manager.php
1613 bytes
0644
elex-woocommerce-catalog-mode.php
2410 bytes
0644
gift-cards-for-woocommerce.php
4936 bytes
0644
hide-price-add-to-cart-button.php
14710 bytes
0644
improved-variable-product-attributes.php
5226 bytes
0644
ione360-configurator.php
4486 bytes
0644
litespeed-cache.php
2489 bytes
0644
mycred.php
11264 bytes
0644
nasa-core.php
1500 bytes
0644
product-extras-for-woocommerce.php
13123 bytes
0644
product-quantity-for-woocommerce.php
2165 bytes
0644
pw-woocommerce-gift-cards.php
3634 bytes
0644
shopengine.php
4763 bytes
0644
show-single-variations.php
1209 bytes
0644
sitepress-multilingual-cms.php
2549 bytes
0644
theme-divi.php
1571 bytes
0644
theme-flatsome.php
10579 bytes
0644
theme-kallyas.php
1191 bytes
0644
theme-oceanwp.php
1319 bytes
0644
wc-fields-factory.php
12629 bytes
0644
woo-advanced-qty.php
2585 bytes
0644
woo-payment-gateway.php
1715 bytes
0644
woo-variation-swatches-pro.php
2040 bytes
0644
woo-variations-table-grid.php
2796 bytes
0644
woocommerce-booking.php
3308 bytes
0644
woocommerce-bookings.php
6014 bytes
0644
woocommerce-composite-products.php
17755 bytes
0644
woocommerce-custom-fields.php
4953 bytes
0644
woocommerce-fast-cart.php
1690 bytes
0644
woocommerce-gravityforms-product-addons.php
14869 bytes
0644
woocommerce-mix-and-match-products.php
7322 bytes
0644
woocommerce-multilingual.php
9075 bytes
0644
woocommerce-rental-and-booking.php
9858 bytes
0644
woocommerce-square.php
1429 bytes
0644
woocommerce-tm-extra-product-options.php
14660 bytes
0644
woocommerce-waitlist.php
1561 bytes
0644
wp-fastest-cache.php
2948 bytes
0644
wp-grid-builder.php
2812 bytes
0644
wp-multilang.php
1865 bytes
0644
wp-rocket.php
4972 bytes
0644
wpc-variations-radio-buttons.php
1570 bytes
0644
yith-woocommerce-product-bundles.php
6780 bytes
0644
yith-woocommerce-quick-view.php
1395 bytes
0644
N4ST4R_ID | Naxtarrr