PluginProbe
Image Optimizer – Compress Images and Convert to WebP or AVIF / trunk
Image Optimizer – Compress Images and Convert to WebP or AVIF vtrunk
1.7.7 1.7.6 1.7.5 1.7.4 trunk 1.0.0 1.0.1 1.0.2 1.1.0 1.2.0 1.2.1 1.3.0 1.4.0 1.4.1 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 All 33 releases
← All changes | modules/core/components/pointers.php +14 -2 1.1.0 → trunk View file →
@@ -13,14 +13,18 @@
13 13 if ( empty( $_POST['nonce'] ) || ! wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['nonce'] ) ), 'image-optimization-pointer-dismissed' ) ) {
14 14 wp_send_json_error( [ 'message' => 'Invalid nonce' ] );
15 15 }
16 16
17 - $pointer = sanitize_text_field( $_POST['data']['pointer'] ) ?? null;
17 + $pointer = isset( $_POST['data']['pointer'] ) ?
18 + sanitize_text_field( wp_unslash( $_POST['data']['pointer'] ) ) :
19 + null;
18 20
19 21 if ( empty( $pointer ) ) {
20 22 wp_send_json_error( [ 'message' => 'The pointer id must be provided' ] );
21 23 }
22 24
25 + $pointer = explode( ',', $pointer );
26 +
23 27 $user_dismissed_meta = get_user_meta( get_current_user_id(), self::DISMISSED_POINTERS_META_KEY, true );
24 28
25 29 if ( ! $user_dismissed_meta ) {
26 30 $user_dismissed_meta = [];
@@ -25,13 +29,21 @@
25 29 if ( ! $user_dismissed_meta ) {
26 30 $user_dismissed_meta = [];
27 31 }
28 32
29 - $user_dismissed_meta[ $pointer ] = true;
33 + foreach ( $pointer as $item ) {
34 + $user_dismissed_meta[ $item ] = true;
35 + }
30 36
31 37 update_user_meta( get_current_user_id(), self::DISMISSED_POINTERS_META_KEY, $user_dismissed_meta );
32 38
33 39 wp_send_json_success( [] );
40 + }
41 +
42 + public static function is_dismissed( string $slug ): bool {
43 + $meta = (array) get_user_meta( get_current_user_id(), self::DISMISSED_POINTERS_META_KEY, true );
44 +
45 + return key_exists( $slug, $meta );
34 46 }
35 47
36 48 public function __construct() {
37 49 add_action( 'wp_ajax_image_optimizer_pointer_dismissed', [ $this, 'dismiss_pointers' ] );