PluginProbe
Formidable Forms – WordPress Form Builder for Contact Forms, Calculators, Quizzes & More / 3.06.06
Formidable Forms – WordPress Form Builder for Contact Forms, Calculators, Quizzes & More v3.06.06
6.35 6.34 6.33.1 6.33 6.32.1 6.32 6.31 6.25 6.25.1 6.26 6.26.1 6.27 6.28 6.29 6.3 6.3.1 6.3.2 6.30 6.4 6.4.1 6.4.2 6.5 6.5.1 6.5.2 6.5.3 All 141 releases
← All changes | classes/models/fields/FrmFieldUserID.php +16 -56 6.263.06.06 View file →
@@ -1,8 +1,5 @@
1 1 <?php
2 -if ( ! defined( 'ABSPATH' ) ) {
3 - die( 'You are not allowed to call this page directly.' );
4 -}
5 2
6 3 /**
7 4 * @since 3.0
8 5 */
@@ -9,9 +6,8 @@
9 6 class FrmFieldUserID extends FrmFieldType {
10 7
11 8 /**
12 9 * @var string
13 - *
14 10 * @since 3.0
15 11 */
16 12 protected $type = 'user_id';
17 13
@@ -16,9 +12,8 @@
16 12 protected $type = 'user_id';
17 13
18 14 /**
19 15 * @var bool
20 - *
21 16 * @since 3.0
22 17 */
23 18 protected $has_input = false;
24 19
@@ -23,9 +18,8 @@
23 18 protected $has_input = false;
24 19
25 20 /**
26 21 * @var bool
27 - *
28 22 * @since 3.0
29 23 */
30 24 protected $has_html = false;
31 25
@@ -30,19 +24,13 @@
30 24 protected $has_html = false;
31 25
32 26 /**
33 27 * @var bool
34 - *
35 28 * @since 3.0
36 29 */
37 30 protected $holds_email_values = true;
38 31
39 32 /**
40 - * @var bool
41 - */
42 - protected $array_allowed = false;
43 -
44 - /**
45 33 * @return string
46 34 */
47 35 protected function include_form_builder_file() {
48 36 return FrmAppHelper::plugin_path() . '/classes/views/frm-fields/back-end/field-user-id.php';
@@ -48,42 +36,31 @@
48 36 return FrmAppHelper::plugin_path() . '/classes/views/frm-fields/back-end/field-user-id.php';
49 37 }
50 38
51 39 public function prepare_field_html( $args ) {
52 - $args = $this->fill_display_field_values( $args );
53 - $value = $this->get_field_value( $args );
40 + $args = $this->fill_display_field_values( $args );
54 41
42 + $user_ID = get_current_user_id();
43 + $user_ID = ( $user_ID ? $user_ID : '' );
44 + $posted_value = ( FrmAppHelper::is_admin() && $_POST && isset( $_POST['item_meta'][ $this->field['id'] ] ) ); // WPCS: CSRF ok.
45 + $updating = ( isset( $args['action'] ) && $args['action'] == 'update' );
46 + $value = ( is_numeric( $this->field['value'] ) || $posted_value || $updating ) ? $this->field['value'] : $user_ID;
47 +
55 48 echo '<input type="hidden" name="' . esc_attr( $args['field_name'] ) . '" id="' . esc_attr( $args['html_id'] ) . '" value="' . esc_attr( $value ) . '" data-frmval="' . esc_attr( $value ) . '"/>' . "\n";
56 49 }
57 50
58 - /**
59 - * @since 4.03.06
60 - *
61 - * @param array $args Field display arguments.
62 - *
63 - * @return int|string
64 - */
65 - protected function get_field_value( $args ) {
66 - $user_ID = get_current_user_id();
67 - $user_ID = ( $user_ID ? $user_ID : '' );
68 - $posted_value = ( FrmAppHelper::is_admin() && $_POST && isset( $_POST['item_meta'][ $this->field['id'] ] ) ); // phpcs:ignore WordPress.Security.NonceVerification.Missing
69 - $action = ( $args['action'] ?? $args['form_action'] ?? '' );
70 - $updating = $action === 'update';
71 - return is_numeric( $this->field['value'] ) || $posted_value || $updating ? $this->field['value'] : $user_ID;
72 - }
73 -
74 51 public function validate( $args ) {
75 52 if ( '' == $args['value'] ) {
76 53 return array();
77 54 }
78 55
79 - // Make sure we have a user ID.
56 + // make sure we have a user ID
80 57 if ( ! is_numeric( $args['value'] ) ) {
81 58 $args['value'] = FrmAppHelper::get_user_id_param( $args['value'] );
82 59 FrmEntriesHelper::set_posted_value( $this->field, $args['value'], $args );
83 60 }
84 61
85 - // Add user id to post variables to be saved with entry.
62 + //add user id to post variables to be saved with entry
86 63 $_POST['frm_user_id'] = $args['value'];
87 64
88 65 return array();
89 66 }
@@ -88,16 +65,15 @@
88 65 return array();
89 66 }
90 67
91 68 /**
92 - * @param array|string $value
93 - * @param array $atts
69 + * @param $value
70 + * @param $atts array
94 71 *
95 - * @return array|string A string is returned, but the return signature should match FrmFieldType.
72 + * @return false|mixed|string
96 73 */
97 74 protected function prepare_display_value( $value, $atts ) {
98 75 $user_info = $this->prepare_user_info_attribute( $atts );
99 -
100 76 return FrmFieldsHelper::get_user_display_name( $value, $user_info, $atts );
101 77 }
102 78
103 79 /**
@@ -105,11 +81,10 @@
105 81 * a value from the user ID
106 82 * From the get_display_name() function
107 83 *
108 84 * @since 3.0
85 + * @param $atts
109 86 *
110 - * @param array $atts
111 - *
112 87 * @return string
113 88 */
114 89 private function prepare_user_info_attribute( $atts ) {
115 90 if ( isset( $atts['show'] ) ) {
@@ -118,9 +93,9 @@
118 93 } else {
119 94 $user_info = $atts['show'];
120 95 }
121 96 } else {
122 - $user_info = apply_filters( 'frm_user_id_display', 'display_name' );
97 + $user_info = 'display_name';
123 98 }
124 99
125 100 return $user_info;
126 101 }
@@ -125,28 +100,13 @@
125 100 return $user_info;
126 101 }
127 102
128 103 /**
129 - * @param string $value
130 - * @param array $atts
104 + * @param $value
105 + * @param $atts
131 106 *
132 107 * @return int
133 108 */
134 109 protected function prepare_import_value( $value, $atts ) {
135 110 return FrmAppHelper::get_user_id_param( trim( $value ) );
136 - }
137 -
138 - /**
139 - * @since 4.0.04
140 - *
141 - * @param mixed $value Field value passed by reference.
142 - *
143 - * @return void
144 - */
145 - public function sanitize_value( &$value ) {
146 - if ( '' === $value ) {
147 - // Allow for an empty User ID. Return early to prevent it from getting set to 0.
148 - return;
149 - }
150 - FrmAppHelper::sanitize_value( 'intval', $value );
151 111 }
152 112 }