Submit
Path:
~
/
/
usr
/
local
/
sitepad
/
editor
/
site-data
/
plugins
/
kkart-pro
/
packages
/
kkart-blocks
/
src
/
StoreApi
/
Routes
/
File Content:
CartRemoveCoupon.php
<?php namespace Automattic\Kkart\Blocks\StoreApi\Routes; use Automattic\Kkart\Blocks\StoreApi\Utilities\CartController; /** * CartRemoveCoupon class. * * @internal This API is used internally by Blocks--it is still in flux and may be subject to revisions. */ class CartRemoveCoupon extends AbstractCartRoute { /** * Get the path of this REST route. * * @return string */ public function get_path() { return '/cart/remove-coupon'; } /** * Get method arguments for this REST route. * * @return array An array of endpoints. */ public function get_args() { return [ [ 'methods' => \WP_REST_Server::CREATABLE, 'callback' => [ $this, 'get_response' ], 'permission_callback' => '__return_true', 'args' => [ 'code' => [ 'description' => __( 'Unique identifier for the coupon within the cart.', 'kkart' ), 'type' => 'string', ], ], ], 'schema' => [ $this->schema, 'get_public_item_schema' ], ]; } /** * Handle the request and return a valid response for this endpoint. * * @throws RouteException On error. * @param \WP_REST_Request $request Request object. * @return \WP_REST_Response */ protected function get_route_post_response( \WP_REST_Request $request ) { if ( ! kkart_coupons_enabled() ) { throw new RouteException( 'kkart_rest_cart_coupon_disabled', __( 'Coupons are disabled.', 'kkart' ), 404 ); } $controller = new CartController(); $cart = $controller->get_cart_instance(); $coupon_code = kkart_format_coupon_code( $request['code'] ); $coupon = new \KKART_Coupon( $coupon_code ); if ( $coupon->get_code() !== $coupon_code || ! $coupon->is_valid() ) { throw new RouteException( 'kkart_rest_cart_coupon_error', __( 'Invalid coupon code.', 'kkart' ), 400 ); } if ( ! $controller->has_coupon( $coupon_code ) ) { throw new RouteException( 'kkart_rest_cart_coupon_invalid_code', __( 'Coupon cannot be removed because it is not already applied to the cart.', 'kkart' ), 409 ); } $cart = $controller->get_cart_instance(); $cart->remove_coupon( $coupon_code ); $cart->calculate_totals(); return rest_ensure_response( $this->schema->get_item_response( $cart ) ); } }
Submit
FILE
FOLDER
Name
Size
Permission
Action
AbstractCartRoute.php
2379 bytes
0644
AbstractRoute.php
8333 bytes
0644
AbstractTermsRoute.php
4776 bytes
0644
Cart.php
1347 bytes
0644
CartAddItem.php
2948 bytes
0644
CartApplyCoupon.php
1882 bytes
0644
CartCoupons.php
3823 bytes
0644
CartCouponsByCode.php
2469 bytes
0644
CartItems.php
3699 bytes
0644
CartItemsByKey.php
3903 bytes
0644
CartRemoveCoupon.php
2261 bytes
0644
CartRemoveItem.php
1721 bytes
0644
CartSelectShippingRate.php
2487 bytes
0644
CartUpdateItem.php
1739 bytes
0644
CartUpdateShipping.php
7330 bytes
0644
Checkout.php
17224 bytes
0644
ProductAttributeTerms.php
1607 bytes
0644
ProductAttributes.php
1390 bytes
0644
ProductAttributesById.php
1679 bytes
0644
ProductCategories.php
1136 bytes
0644
ProductCategoriesById.php
1651 bytes
0644
ProductCollectionData.php
5548 bytes
0644
ProductReviews.php
6618 bytes
0644
ProductTags.php
1118 bytes
0644
Products.php
12968 bytes
0644
ProductsById.php
1593 bytes
0644
RouteException.php
1393 bytes
0644
RouteInterface.php
551 bytes
0644
N4ST4R_ID | Naxtarrr