PluginProbe
Product Labels, Quick View, Buy Now, Pre-Orders, Frequently Bought Together & More for WooCommerce – Merchant / 2.2.8
Product Labels, Quick View, Buy Now, Pre-Orders, Frequently Bought Together & More for WooCommerce – Merchant v2.2.8
2.3.2 2.3.1 2.3.0 2.2.8 2.2.7 trunk 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.10.5 1.11.0 1.11.1 1.11.2 1.6 1.7 1.8 1.8.1 1.8.2 1.8.3 1.9.0 1.9.1 1.9.10 1.9.11 All 60 releases
merchant / admin / classes / admin-options / fields / responsive-dimensions / class-merchant-field-responsive-dimensions.php

class-merchant-field-responsive-dimensions.php in Product Labels, Quick View, Buy Now, Pre-Orders, Frequently Bought Together & More for WooCommerce – Merchant 2.2.8, at admin/classes/admin-options/fields/responsive-dimensions/class-merchant-field-responsive-dimensions.php

62 lines 1.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Merchant Field: Responsive Dimensions
4 *
5 * @package Merchant
6 * @since 2.2.5
7 */
8
9 if ( ! defined( 'ABSPATH' ) ) {
10 exit;
11 }
12
13 /**
14 * Merchant_Field_Responsive_Dimensions
15 *
16 * Renders responsive dimension inputs for desktop/tablet/mobile.
17 *
18 * @since 2.2.5
19 */
20 class Merchant_Field_Responsive_Dimensions extends Merchant_Abstract_Field {
21
22 /**
23 * Render the responsive-dimensions field HTML output.
24 *
25 * @since 2.2.5
26 *
27 * @return void
28 */
29 public function render() {
30 $this->get_template_part();
31 }
32
33 /**
34 * Type-specific sanitization for the responsive-dimensions field.
35 *
36 * @since 2.2.5
37 *
38 * @param mixed $value The raw submitted value.
39 *
40 * @return mixed The sanitized value.
41 */
42 protected function sanitize_value( $value ) {
43 if ( ! is_array( $value ) ) {
44 return array();
45 }
46
47 $sanitized = array();
48 foreach ( $value as $device => $dims ) {
49 $sanitized[ sanitize_key( $device ) ] = array(
50 'unit' => sanitize_key( $dims['unit'] ?? 'px' ),
51 );
52 foreach ( array( 'top', 'right', 'bottom', 'left' ) as $dim ) {
53 if ( isset( $dims[ $dim ] ) ) {
54 $sanitized[ sanitize_key( $device ) ][ $dim ] = floatval( $dims[ $dim ] );
55 }
56 }
57 }
58
59 return $sanitized;
60 }
61 }
62