PluginProbe
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP / 1.0.10
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP v1.0.10
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.10, at includes/helpers/forms.php

179 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 $table_name = uwp_get_table_prefix() . 'uwp_form_fields';
77 $include_admin_use = apply_filters('uwp_account_include_admin_use_only_fields', false);
78 if ($include_admin_use) {
79 $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', $extra_where)));
80 } else {
81 $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', $extra_where)));
82 }
83 return $fields;
84 }
85
86 /**
87 * Returns the change password form fields.
88 *
89 * @since 1.0.0
90 * @package userswp
91 *
92 * @return array Form fields.
93 */
94 function get_change_form_fields() {
95 global $wpdb;
96 $table_name = uwp_get_table_prefix() . 'uwp_form_fields';
97 $enable_old_password = uwp_get_option('change_enable_old_password', false);
98 if ($enable_old_password == '1') {
99 $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')));
100 } else {
101 $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')));
102 }
103 return $fields;
104 }
105
106 /**
107 * Validates the submitted form data.
108 *
109 * @since 1.0.0
110 * @package userswp
111 *
112 * @param array $data Submitted form data
113 * @param string $type Form type.
114 * @param array|bool $fields Fields applicable for validation.
115 *
116 * @return array|mixed|void|WP_Error Validated form data.
117 */
118 function uwp_validate_fields($data, $type, $fields = false) {
119 $validation = new UsersWP_Validation();
120 return $validation->validate_fields($data, $type, $fields);
121 }
122
123 /**
124 * Returns form field label. If empty returns the field title.
125 *
126 * @since 1.0.0
127 * @package userswp
128 *
129 * @param object $field Field info.
130 *
131 * @return string Label.
132 */
133 function uwp_get_form_label($field) {
134 if (isset($field->form_label) && !empty($field->form_label)) {
135 $label = __($field->form_label, 'userswp');
136 } else {
137 $label = __($field->site_title, 'userswp');
138 }
139 return $label;
140 }
141
142 /**
143 * Displays admin settings form.
144 *
145 * @since 1.0.0
146 * @package userswp
147 *
148 * @return string Form html.
149 */
150 function uwp_display_form() {
151
152 $page = isset( $_GET['page'] ) ? $_GET['page'] : 'userswp';
153 $settings_array = uwp_get_settings_tabs();
154
155 $active_tab = isset( $_GET['tab'] ) && array_key_exists( $_GET['tab'], $settings_array[$page] ) ? $_GET['tab'] : 'main';
156 ob_start();
157 ?>
158 <form method="post" action="options.php">
159 <?php
160 $title = apply_filters('uwp_display_form_title', false, $page, $active_tab);
161 if ($title) { ?>
162 <h2 class="title"><?php echo $title; ?></h2>
163 <?php } ?>
164
165 <table class="uwp-form-table">
166 <?php
167 settings_fields( 'uwp_settings' );
168 do_settings_fields( 'uwp_settings_' . $page .'_'.$active_tab, 'uwp_settings_' . $page .'_'.$active_tab );
169 ?>
170 </table>
171 <?php submit_button(); ?>
172 </form>
173
174 <?php
175 $output = ob_get_contents();
176 ob_end_clean();
177
178 return $output;
179 }