Automattic\WooCommerce\Internal\OrderWithdrawal

OrderWithdrawalFormProcessor::validate_form_data │ private │ WC 1.0

Validate the form data.

Метод класса: OrderWithdrawalFormProcessor{}

Хуков нет.

Возвращает

array<string,string>.

Использование

// private - только в коде основоного (родительского) класса
$result = $this->validate_form_data( $data ): array;
$data(array<string,string>) (обязательный)
Form data.

Код OrderWithdrawalFormProcessor::validate_form_data() WC 11.2.2

private function validate_form_data( array $data ): array {
	$errors = array();

	if ( '' === $data[ self::FIELD_FIRST_NAME ] ) {
		$errors[ self::FIELD_FIRST_NAME ] = __( 'First name is a required field.', 'woocommerce' );
	}

	if ( '' === $data[ self::FIELD_LAST_NAME ] ) {
		$errors[ self::FIELD_LAST_NAME ] = __( 'Last name is a required field.', 'woocommerce' );
	}

	if ( '' === $data[ self::FIELD_EMAIL ] || ! is_email( $data[ self::FIELD_EMAIL ] ) ) {
		$errors[ self::FIELD_EMAIL ] = __( 'Enter a valid email address.', 'woocommerce' );
	}

	if ( '' === $data[ self::FIELD_EMAIL_CONFIRMATION ] ) {
		$errors[ self::FIELD_EMAIL_CONFIRMATION ] = __( 'Confirm email address is a required field.', 'woocommerce' );
	} elseif ( 0 !== strcasecmp( $data[ self::FIELD_EMAIL ], $data[ self::FIELD_EMAIL_CONFIRMATION ] ) ) {
		$errors[ self::FIELD_EMAIL_CONFIRMATION ] = __( 'Email addresses do not match.', 'woocommerce' );
	}

	if ( '' === $data[ self::FIELD_ORDER_NUMBER ] ) {
		$errors[ self::FIELD_ORDER_NUMBER ] = __( 'Order number is a required field.', 'woocommerce' );
	}

	if ( ! in_array( $data[ self::FIELD_WITHDRAWAL_TYPE ], array( self::WITHDRAWAL_TYPE_FULL, self::WITHDRAWAL_TYPE_SPECIFIC ), true ) ) {
		$errors[ self::FIELD_WITHDRAWAL_TYPE ] = __( 'Choose what you want to withdraw.', 'woocommerce' );
	}

	if ( self::WITHDRAWAL_TYPE_SPECIFIC === $data[ self::FIELD_WITHDRAWAL_TYPE ] && '' === $data[ self::FIELD_ADDITIONAL_DETAILS ] ) {
		$errors[ self::FIELD_ADDITIONAL_DETAILS ] = __( 'List the specific items you want to withdraw.', 'woocommerce' );
	}

	return $errors;
}