PluginProbe ʕ •ᴥ•ʔ
JetFormBuilder — Dynamic Blocks Form Builder / 3.3.0
JetFormBuilder — Dynamic Blocks Form Builder v3.3.0
3.6.3.1 3.6.3 3.6.2.2 3.6.2.1 3.6.2 3.6.1.1 3.6.1 3.6.0.1 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.1.0 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 1.3.0 1.3.1 1.3.2 1.3.3 1.4.0 1.4.1 1.4.2 1.4.3 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.1.0 2.1.1 2.1.10 2.1.11 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 3.0.0 3.0.0.1 3.0.0.2 3.0.0.3 3.0.1 3.0.1.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.0.1 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.2 3.2.3 3.3.0 3.3.1 3.3.2 3.3.3 3.3.3.1 3.3.4 3.3.4.1 3.3.4.2 3.4.0 3.4.1 3.4.2 3.4.3 3.4.4 3.4.5 3.4.5.1 3.4.5.2 3.4.6 3.4.7 3.4.7.1 3.5.0 3.5.1 3.5.1.1 3.5.1.2 3.5.2 3.5.2.1 3.5.3 3.5.4 3.5.5 3.5.6 3.5.6.1 3.5.6.2 3.5.6.3 3.6.0
jetformbuilder / includes / actions / methods / update-user / user-meta-property.php
jetformbuilder / includes / actions / methods / update-user Last commit date
description-property.php 2 years ago display-name-property.php 2 years ago first-name-property.php 2 years ago last-name-property.php 2 years ago nick-name-property.php 2 years ago update-action.php 2 years ago user-confirm-password-property.php 2 years ago user-email-property.php 2 years ago user-id-property.php 2 years ago user-meta-property.php 2 years ago user-modifier.php 2 years ago user-nicename-property.php 2 years ago user-password-property.php 2 years ago user-role-property.php 2 years ago user-url-property.php 2 years ago
user-meta-property.php
81 lines
1 <?php
2
3
4 namespace Jet_Form_Builder\Actions\Methods\Update_User;
5
6 use Jet_Form_Builder\Actions\Methods\Abstract_Modifier;
7 use Jet_Form_Builder\Actions\Methods\Base_Object_Property;
8 use Jet_Form_Builder\Actions\Methods\Object_Dynamic_Property;
9 use Jet_Form_Builder\Classes\Tools;
10
11 // If this file is called directly, abort.
12 if ( ! defined( 'WPINC' ) ) {
13 die;
14 }
15
16 class User_Meta_Property extends Base_Object_Property implements Object_Dynamic_Property {
17
18 private static $restricted_meta;
19
20 /**
21 * @since 3.1.6
22 */
23 const RESTRICT_META_KEYS = array(
24 'use_ssl',
25 'wp_capabilities',
26 'wp_user_level',
27 'dismissed_wp_pointers',
28 'session_tokens',
29 'wp_user-settings',
30 'wp_user-settings-time',
31 'wp_dashboard_quick_press_last_post_id',
32 );
33
34 protected $meta = array();
35
36 public function get_id(): string {
37 return 'user_meta';
38 }
39
40 public function get_label(): string {
41 return __( 'User Meta', 'jet-form-builder' );
42 }
43
44 public function is_supported( string $key, $value ): bool {
45 return ! in_array( $key, self::get_restricted_keys(), true );
46 }
47
48 public function do_before( string $key, $value, Abstract_Modifier $modifier ) {
49 if ( ! Tools::is_repeater_val( $value ) ) {
50 $this->meta[ $key ] = $value;
51
52 return;
53 }
54
55 $this->meta[ $key ] = Tools::prepare_repeater_value( $value, $modifier->fields_map );
56 }
57
58 public function do_after( Abstract_Modifier $modifier ) {
59 foreach ( $this->meta as $key => $value ) {
60 update_user_meta( $modifier->source_arr['ID'], $key, $value );
61 }
62 }
63
64 /**
65 * @since 3.1.6
66 */
67 public static function get_restricted_keys(): array {
68 if ( is_array( self::$restricted_meta ) ) {
69 return self::$restricted_meta;
70 }
71
72 self::$restricted_meta = apply_filters(
73 'jet-form-builder/user-modifier/restricted-meta-keys',
74 self::RESTRICT_META_KEYS
75 );
76
77 return self::$restricted_meta;
78 }
79
80 }
81