HEX
Server: Apache
System: Linux p3plzcpnl506847.prod.phx3.secureserver.net 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
User: slfopp7cb1df (5698090)
PHP: 8.1.34
Disabled: NONE
Upload Files
File: //proc/self/cwd/wp-content/plugins/kadence-blocks/includes/resources/Traits/Rest/Image_Trait.php
<?php declare( strict_types=1 );

namespace KadenceWP\KadenceBlocks\Traits\Rest;

/**
 * Shared image related functionality for REST controllers.
 *
 * @mixin \WP_REST_Controller
 */
trait Image_Trait {

	/**
	 * Sanitizes an array of Pexels image sizes.
	 *
	 * @param mixed|array<int, array{id: int, width: int, height: int, crop: bool}> $sizes One or more size arrays.
	 *
	 * @return array|array<int, array{id: int, width: int, height: int, crop: bool}>
	 */
	public function sanitize_image_sizes_array( $sizes ): array {
		$new_sizes = [];

		if ( ! empty( $sizes ) || ! is_array( $sizes ) ) {
			foreach ( $sizes as $value ) {
				$new_sizes[] = [
					'id'     => sanitize_text_field( $value['id'] ),
					'width'  => absint( $value['width'] ),
					'height' => absint( $value['height'] ),
					'crop'   => filter_var( $value['crop'], FILTER_VALIDATE_BOOLEAN ),
				];
			}
		}

		return $new_sizes;
	}

}