| Server IP : 192.241.186.36 / Your IP : 216.73.216.199 Web Server : Apache/2.4.29 (Ubuntu) System : Linux webserver7 4.15.0-194-generic #205-Ubuntu SMP Fri Sep 16 19:49:27 UTC 2022 x86_64 User : root ( 0) PHP Version : 7.4.32 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/html/adsonicdigital/wp-content/plugins/woocommerce/includes/ |
Upload File : |
<?php
/**
* WooCommerce Coupons Functions
*
* Functions for coupon specific things.
*
* @package WooCommerce\Functions
* @version 3.0.0
*/
defined( 'ABSPATH' ) || exit;
/**
* Get coupon types.
*
* @return array
*/
function wc_get_coupon_types() {
return (array) apply_filters(
'woocommerce_coupon_discount_types',
array(
'percent' => __( 'Percentage discount', 'woocommerce' ),
'fixed_cart' => __( 'Fixed cart discount', 'woocommerce' ),
'fixed_product' => __( 'Fixed product discount', 'woocommerce' ),
)
);
}
/**
* Get a coupon type's name.
*
* @param string $type Coupon type.
* @return string
*/
function wc_get_coupon_type( $type = '' ) {
$types = wc_get_coupon_types();
return isset( $types[ $type ] ) ? $types[ $type ] : '';
}
/**
* Coupon types that apply to individual products. Controls which validation rules will apply.
*
* @since 2.5.0
* @return array
*/
function wc_get_product_coupon_types() {
return (array) apply_filters( 'woocommerce_product_coupon_types', array( 'fixed_product', 'percent' ) );
}
/**
* Coupon types that apply to the cart as a whole. Controls which validation rules will apply.
*
* @since 2.5.0
* @return array
*/
function wc_get_cart_coupon_types() {
return (array) apply_filters( 'woocommerce_cart_coupon_types', array( 'fixed_cart' ) );
}
/**
* Check if coupons are enabled.
* Filterable.
*
* @since 2.5.0
*
* @return bool
*/
function wc_coupons_enabled() {
return apply_filters( 'woocommerce_coupons_enabled', 'yes' === get_option( 'woocommerce_enable_coupons' ) );
}
/**
* Get coupon code by ID.
*
* @since 3.0.0
* @param int $id Coupon ID.
* @return string
*/
function wc_get_coupon_code_by_id( $id ) {
$data_store = WC_Data_Store::load( 'coupon' );
return empty( $id ) ? '' : (string) $data_store->get_code_by_id( $id );
}
/**
* Get coupon ID by code.
*
* @since 3.0.0
* @param string $code Coupon code.
* @param int $exclude Used to exclude an ID from the check if you're checking existence.
* @return int
*/
function wc_get_coupon_id_by_code( $code, $exclude = 0 ) {
if ( empty( $code ) ) {
return 0;
}
$data_store = WC_Data_Store::load( 'coupon' );
$ids = wp_cache_get( WC_Cache_Helper::get_cache_prefix( 'coupons' ) . 'coupon_id_from_code_' . $code, 'coupons' );
if ( false === $ids ) {
$ids = $data_store->get_ids_by_code( $code );
if ( $ids ) {
wp_cache_set( WC_Cache_Helper::get_cache_prefix( 'coupons' ) . 'coupon_id_from_code_' . $code, $ids, 'coupons' );
}
}
$ids = array_diff( array_filter( array_map( 'absint', (array) $ids ) ), array( $exclude ) );
return apply_filters( 'woocommerce_get_coupon_id_from_code', absint( current( $ids ) ), $code, $exclude );
}