PluginProbe
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP / 1.0.17
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP v1.0.17
1.2.73 1.2.72 1.2.71 1.2.70 1.2.69 1.2.68 1.2.67 1.2.66 1.2.65 1.2.64 1.2.63 trunk 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.15 1.0.16 1.0.17 1.0.18 1.0.19 1.0.20 1.0.21 1.0.22 All 173 releases
userswp / includes / helpers / forms.php

forms.php in UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP 1.0.17, at includes/helpers/forms.php

180 lines 7.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Returns the register form fields.
4 *
5 * @since 1.0.0
6 * @package userswp
7 *
8 * @return array Form fields.
9 */
10 function get_register_form_fields() {
11 global $wpdb;
12 $table_name = uwp_get_table_prefix() . 'uwp_form_fields';
13 $extras_table_name = uwp_get_table_prefix() . 'uwp_form_extras';
14 $fields = $wpdb->get_results($wpdb->prepare("SELECT fields.* FROM " . $table_name . " fields JOIN " . $extras_table_name . " extras ON extras.site_htmlvar_name = fields.htmlvar_name WHERE fields.form_type = %s AND fields.is_active = '1' AND fields.for_admin_use != '1' AND fields.is_register_field = '1' AND extras.form_type = 'register' ORDER BY extras.sort_order ASC", array('account')));
15 $fields = apply_filters('uwp_get_register_form_fields', $fields);
16 return $fields;
17 }
18
19 /**
20 * Returns the register form validate-able fields.
21 *
22 * @since 1.0.0
23 * @package userswp
24 *
25 * @param int $role_id Role ID from role addons. Default 0.
26 *
27 * @return array Validate-able fields.
28 */
29 function get_register_validate_form_fields($role_id) {
30 global $wpdb;
31 $table_name = uwp_get_table_prefix() . 'uwp_form_fields';
32 $extras_table_name = uwp_get_table_prefix() . 'uwp_form_extras';
33 if ($role_id == 0) {
34 $fields = $wpdb->get_results($wpdb->prepare("SELECT fields.* FROM " . $table_name . " fields JOIN " . $extras_table_name . " extras ON extras.site_htmlvar_name = fields.htmlvar_name WHERE fields.form_type = %s AND fields.field_type != 'fieldset' AND fields.field_type != 'file' AND fields.is_active = '1' AND fields.for_admin_use != '1' AND fields.is_register_field = '1' ORDER BY extras.sort_order ASC", array('account')));
35 } else {
36 $slug = get_post_field( 'post_name', $role_id );
37 $fields = $wpdb->get_results($wpdb->prepare("SELECT fields.* FROM " . $table_name . " fields JOIN " . $extras_table_name . " extras ON extras.site_htmlvar_name = fields.htmlvar_name WHERE fields.form_type = %s AND fields.field_type != 'fieldset' AND fields.field_type != 'file' AND fields.is_active = '1' AND fields.for_admin_use != '1' AND fields.is_register_field = '1' AND FIND_IN_SET(%s, fields.user_roles) ORDER BY extras.sort_order ASC", array('account', $slug)));
38 }
39
40 $fields = apply_filters('uwp_get_register_validate_form_fields', $fields, $role_id);
41 return $fields;
42 }
43
44 /**
45 * Returns the change password form validate-able fields.
46 *
47 * @since 1.0.0
48 * @package userswp
49 *
50 * @return array Validate-able fields
51 */
52 function get_change_validate_form_fields() {
53 global $wpdb;
54 $table_name = uwp_get_table_prefix() . 'uwp_form_fields';
55 $enable_old_password = uwp_get_option('change_enable_old_password', false);
56 if ($enable_old_password == '1') {
57 $fields = $wpdb->get_results($wpdb->prepare("SELECT * FROM " . $table_name . " WHERE form_type = %s AND field_type != 'fieldset' AND field_type != 'file' AND is_active = '1' AND for_admin_use != '1' ORDER BY sort_order ASC", array('change')));
58 } else {
59 $fields = $wpdb->get_results($wpdb->prepare("SELECT * FROM " . $table_name . " WHERE form_type = %s AND field_type != 'fieldset' AND field_type != 'file' AND is_active = '1' AND for_admin_use != '1' AND htmlvar_name != 'uwp_change_old_password' ORDER BY sort_order ASC", array('change')));
60 }
61 return $fields;
62 }
63
64 /**
65 * Returns the account form fields.
66 *
67 * @since 1.0.0
68 * @package userswp
69 *
70 * @param string $extra_where Extra where query.
71 *
72 * @return array Form fields.
73 */
74 function get_account_form_fields($extra_where = '') {
75 global $wpdb;
76
77 $table_name = uwp_get_table_prefix() . 'uwp_form_fields';
78 $include_admin_use = apply_filters('uwp_account_include_admin_use_only_fields', false);
79 if ($include_admin_use) {
80 $fields = $wpdb->get_results($wpdb->prepare("SELECT * FROM " . $table_name . " WHERE form_type = %s AND is_active = '1' AND is_register_only_field = '0' " . $extra_where . " ORDER BY sort_order ASC", array('account')));
81 } else {
82 $fields = $wpdb->get_results($wpdb->prepare("SELECT * FROM " . $table_name . " WHERE form_type = %s AND is_active = '1' AND for_admin_use != '1' AND is_register_only_field = '0' " . $extra_where . " ORDER BY sort_order ASC", array('account')));
83 }
84 return $fields;
85 }
86
87 /**
88 * Returns the change password form fields.
89 *
90 * @since 1.0.0
91 * @package userswp
92 *
93 * @return array Form fields.
94 */
95 function get_change_form_fields() {
96 global $wpdb;
97 $table_name = uwp_get_table_prefix() . 'uwp_form_fields';
98 $enable_old_password = uwp_get_option('change_enable_old_password', false);
99 if ($enable_old_password == '1') {
100 $fields = $wpdb->get_results($wpdb->prepare("SELECT * FROM " . $table_name . " WHERE form_type = %s AND is_active = '1' AND for_admin_use != '1' ORDER BY sort_order ASC", array('change')));
101 } else {
102 $fields = $wpdb->get_results($wpdb->prepare("SELECT * FROM " . $table_name . " WHERE form_type = %s AND is_active = '1' AND for_admin_use != '1' AND htmlvar_name != 'uwp_change_old_password' ORDER BY sort_order ASC", array('change')));
103 }
104 return $fields;
105 }
106
107 /**
108 * Validates the submitted form data.
109 *
110 * @since 1.0.0
111 * @package userswp
112 *
113 * @param array $data Submitted form data
114 * @param string $type Form type.
115 * @param array|bool $fields Fields applicable for validation.
116 *
117 * @return array|mixed|void|WP_Error Validated form data.
118 */
119 function uwp_validate_fields($data, $type, $fields = false) {
120 $validation = new UsersWP_Validation();
121 return $validation->validate_fields($data, $type, $fields);
122 }
123
124 /**
125 * Returns form field label. If empty returns the field title.
126 *
127 * @since 1.0.0
128 * @package userswp
129 *
130 * @param object $field Field info.
131 *
132 * @return string Label.
133 */
134 function uwp_get_form_label($field) {
135 if (isset($field->form_label) && !empty($field->form_label)) {
136 $label = __($field->form_label, 'userswp');
137 } else {
138 $label = __($field->site_title, 'userswp');
139 }
140 return $label;
141 }
142
143 /**
144 * Displays admin settings form.
145 *
146 * @since 1.0.0
147 * @package userswp
148 *
149 * @return string Form html.
150 */
151 function uwp_display_form() {
152
153 $page = isset( $_GET['page'] ) ? $_GET['page'] : 'userswp';
154 $settings_array = uwp_get_settings_tabs();
155
156 $active_tab = isset( $_GET['tab'] ) && array_key_exists( $_GET['tab'], $settings_array[$page] ) ? $_GET['tab'] : 'main';
157 ob_start();
158 ?>
159 <form method="post" action="options.php">
160 <?php
161 $title = apply_filters('uwp_display_form_title', false, $page, $active_tab);
162 if ($title) { ?>
163 <h2 class="title"><?php echo $title; ?></h2>
164 <?php } ?>
165
166 <table class="uwp-form-table">
167 <?php
168 settings_fields( 'uwp_settings' );
169 do_settings_fields( 'uwp_settings_' . $page .'_'.$active_tab, 'uwp_settings_' . $page .'_'.$active_tab );
170 ?>
171 </table>
172 <?php submit_button(); ?>
173 </form>
174
175 <?php
176 $output = ob_get_contents();
177 ob_end_clean();
178
179 return $output;
180 }