__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
<?php
/**
 * Cart token utility functions.
 */

declare(strict_types=1);

namespace Automattic\WooCommerce\StoreApi\Utilities;

use Automattic\WooCommerce\StoreApi\Authentication;
use Automattic\WooCommerce\StoreApi\Utilities\JsonWebToken;

/**
 * Cart token utility functions.
 */
class CartTokenUtils {
	/**
	 * Generate a cart token.
	 *
	 * @param string $customer_id The customer ID.
	 * @return string
	 */
	public static function get_cart_token( string $customer_id ): string {
		return JsonWebToken::create(
			array(
				'user_id' => $customer_id,
				'exp'     => self::get_cart_token_expiration(),
				'iss'     => 'store-api',
			),
			self::get_cart_token_secret()
		);
	}

	/**
	 * Validate the cart token.
	 *
	 * @param string $cart_token The cart token.
	 * @return bool
	 */
	public static function validate_cart_token( string $cart_token ): bool {
		return JsonWebToken::validate( $cart_token, self::get_cart_token_secret() );
	}

	/**
	 * Get the cart token payload.
	 *
	 * @param string $cart_token The cart token.
	 * @return array
	 */
	public static function get_cart_token_payload( string $cart_token ): array {
		$parts = JsonWebToken::get_parts( $cart_token )->payload;

		return array(
			'user_id' => $parts->user_id ?? '',
			'exp'     => $parts->exp ?? 0,
			'iss'     => $parts->iss ?? '',
		);
	}

	/**
	 * Get the cart token secret.
	 *
	 * @return string
	 */
	private static function get_cart_token_secret(): string {
		return '@' . wp_salt();
	}

	/**
	 * Gets the expiration of the cart token. Defaults to 48h.
	 *
	 * @return int
	 */
	private static function get_cart_token_expiration(): int {
		/**
		 * Filters the session expiration.
		 *
		 * @since 5.0.0
		 * @param int $expiration Expiration in seconds.
		 */
		return time() + intval( apply_filters( 'wc_session_expiration', DAY_IN_SECONDS * 2 ) );
	}
}

Filemanager

Name Type Size Permission Actions
AgenticCheckoutUtils.php File 16.45 KB 0664
ArrayUtils.php File 1.49 KB 0664
CartController.php File 49.83 KB 0664
CartTokenUtils.php File 1.81 KB 0664
CheckoutTrait.php File 10.82 KB 0664
DraftOrderTrait.php File 1.76 KB 0664
JsonWebToken.php File 5.45 KB 0664
LocalPickupUtils.php File 3.17 KB 0664
NoticeHandler.php File 2.02 KB 0664
OrderAuthorizationTrait.php File 3.29 KB 0664
OrderController.php File 31.7 KB 0664
Pagination.php File 2.05 KB 0664
PaymentUtils.php File 3.65 KB 0664
ProductItemTrait.php File 3.04 KB 0664
ProductQuery.php File 19.25 KB 0664
ProductQueryFilters.php File 9.25 KB 0664
QuantityLimits.php File 10.11 KB 0664
RateLimits.php File 6.14 KB 0664
SanitizationUtils.php File 794 B 0664
ValidationUtils.php File 1.73 KB 0664
Filemanager