REDROOM
PHP 8.2.31
Path:
Logout
Edit File
Size: 2.80 KB
Close
//home/nshryvcy/radiantskinclinics.org/wp-content/plugins/woocommerce/src/Api/Utils/Coupons/CouponMapper.php
Text
Base64
<?php declare(strict_types=1); namespace Automattic\WooCommerce\Api\Utils\Coupons; use Automattic\WooCommerce\Api\Enums\Coupons\CouponStatus; use Automattic\WooCommerce\Api\Enums\Coupons\DiscountType; use Automattic\WooCommerce\Api\Types\Coupons\Coupon; /** * Maps a WC_Coupon to the Coupon DTO. */ class CouponMapper { /** * Map a WC_Coupon to the Coupon DTO. * * @param \WC_Coupon $wc_coupon The WooCommerce coupon object. * @return Coupon */ public static function from_wc_coupon( \WC_Coupon $wc_coupon ): Coupon { $coupon = new Coupon(); $raw_discount_type = (string) $wc_coupon->get_discount_type(); $raw_status = (string) $wc_coupon->get_status(); $coupon->id = $wc_coupon->get_id(); $coupon->code = $wc_coupon->get_code(); $coupon->description = $wc_coupon->get_description(); $coupon->discount_type = DiscountType::tryFrom( $raw_discount_type ) ?? DiscountType::Other; $coupon->raw_discount_type = $raw_discount_type; $coupon->amount = (float) $wc_coupon->get_amount(); $coupon->status = '' === $raw_status ? CouponStatus::Draft : ( CouponStatus::tryFrom( $raw_status ) ?? CouponStatus::Other ); $coupon->raw_status = $raw_status; $coupon->date_created = $wc_coupon->get_date_created()?->format( \DateTimeInterface::ATOM ); $coupon->date_modified = $wc_coupon->get_date_modified()?->format( \DateTimeInterface::ATOM ); $coupon->date_expires = $wc_coupon->get_date_expires()?->format( \DateTimeInterface::ATOM ); $coupon->usage_count = $wc_coupon->get_usage_count(); $coupon->individual_use = $wc_coupon->get_individual_use(); $coupon->product_ids = $wc_coupon->get_product_ids(); $coupon->excluded_product_ids = $wc_coupon->get_excluded_product_ids(); $coupon->usage_limit = $wc_coupon->get_usage_limit(); $coupon->usage_limit_per_user = $wc_coupon->get_usage_limit_per_user(); $coupon->limit_usage_to_x_items = $wc_coupon->get_limit_usage_to_x_items(); $coupon->free_shipping = $wc_coupon->get_free_shipping(); $coupon->product_categories = $wc_coupon->get_product_categories(); $coupon->excluded_product_categories = $wc_coupon->get_excluded_product_categories(); $coupon->exclude_sale_items = $wc_coupon->get_exclude_sale_items(); $coupon->minimum_amount = (float) $wc_coupon->get_minimum_amount(); $coupon->maximum_amount = (float) $wc_coupon->get_maximum_amount(); $coupon->email_restrictions = $wc_coupon->get_email_restrictions(); $coupon->used_by = $wc_coupon->get_used_by(); return $coupon; } }
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 0 × Files: 1
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
CouponMapper.php
2.80 KB
lrw-r--r--
2026-05-05 14:26:50
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).