Файловый менеджер - Редактировать - /home/harasnat/www/horse/wp-content/plugins/google-listings-and-ads/src/Google/InvalidCouponEntry.php
Назад
<?php declare(strict_types = 1); namespace Automattic\WooCommerce\GoogleListingsAndAds\Google; use JsonSerializable; use Symfony\Component\Validator\ConstraintViolationListInterface; defined( 'ABSPATH' ) || exit(); /** * Class InvalidCouponEntry * * @package Automattic\WooCommerce\GoogleListingsAndAds\Google */ class InvalidCouponEntry implements JsonSerializable { /** * * @var int WooCommerce coupon ID. */ protected $wc_coupon_id; /** * * @var string target country of the promotion. */ protected $target_country; /** * * @var string|null Google promotion ID. */ protected $google_promotion_id; /** * * @var string[] */ protected $errors; /** * InvalidCouponEntry constructor. * * @param int $wc_coupon_id * @param string[] $errors * @param string|null $target_country * @param string|null $google_promotion_id */ public function __construct( int $wc_coupon_id, array $errors = [], ?string $target_country = null, ?string $google_promotion_id = null ) { $this->wc_coupon_id = $wc_coupon_id; $this->target_country = $target_country; $this->google_promotion_id = $google_promotion_id; $this->errors = $errors; } /** * * @return int */ public function get_wc_coupon_id(): int { return $this->wc_coupon_id; } /** * * @return string|null */ public function get_google_promotion_id(): ?string { return $this->google_promotion_id; } /** * * @return string|null */ public function get_target_country(): ?string { return $this->target_country; } /** * * @return string[] */ public function get_errors(): array { return $this->errors; } /** * * @param int $error_code * * @return bool */ public function has_error( int $error_code ): bool { return ! empty( $this->errors[ $error_code ] ); } /** * * @param ConstraintViolationListInterface $violations * * @return InvalidCouponEntry */ public function map_validation_violations( ConstraintViolationListInterface $violations ): InvalidCouponEntry { $validation_errors = []; foreach ( $violations as $violation ) { array_push( $validation_errors, sprintf( '[%s] %s', $violation->getPropertyPath(), $violation->getMessage() ) ); } $this->errors = $validation_errors; return $this; } /** * * @return array */ public function jsonSerialize(): array { $data = [ 'woocommerce_id' => $this->get_wc_coupon_id(), 'errors' => $this->get_errors(), ]; if ( null !== $this->get_google_promotion_id() ) { $data['google_id'] = $this->get_google_promotion_id(); } if ( null !== $this->get_target_country() ) { $data['google_target_country'] = $this->get_target_country(); } return $data; } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.33 | Генерация страницы: 0.01 |
proxy
|
phpinfo
|
Настройка