PluginProbe
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP / 1.2.74
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP v1.2.74
1.2.74 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 All 174 releases
← All changes | admin/menus/class-menus.php +92 -20 1.0.151.2.74 View file →
@@ -24,9 +24,9 @@
24 24 * @since 1.0.0
25 25 * @return void
26 26 */
27 27 public function users_wp_admin_menu_metabox() {
28 - add_meta_box( 'add-users-wp-nav-menu', esc_html__( 'Users WP', 'userswp' ), array($this, 'users_wp_admin_do_wp_nav_menu_metabox'), 'nav-menus', 'side', 'default' );
28 + add_meta_box( 'add-users-wp-nav-menu', esc_html__( 'UsersWP Endpoints', 'userswp' ), array($this, 'users_wp_admin_do_wp_nav_menu_metabox'), 'nav-menus', 'side', 'default' );
29 29 add_action( 'admin_print_footer_scripts', array($this, 'users_wp_admin_wp_nav_menu_restrict_items') );
30 30 }
31 31
32 32 /**
@@ -56,13 +56,13 @@
56 56 $tabs['loggedout']['pages'] = $this->users_wp_nav_menu_get_loggedout_pages();
57 57
58 58 ?>
59 59
60 - <div id="users-wp-menu" class="posttypediv">
60 + <div id="users-wp-endpoints" class="posttypediv">
61 61 <h4><?php esc_html_e( 'Common', 'userswp' ) ?></h4>
62 62 <p><?php esc_html_e( 'Common links are visible to everyone.', 'userswp' ) ?></p>
63 63
64 - <div id="tabs-panel-posttype-<?php echo $post_type_name; ?>-common" class="tabs-panel tabs-panel-active">
64 + <div id="tabs-panel-posttype-<?php echo esc_attr( $post_type_name ); ?>-common" class="tabs-panel tabs-panel-active">
65 65 <ul id="users_wp-menu-checklist-common" class="categorychecklist form-no-clear">
66 66 <?php
67 67 if ($tabs['common']['pages']) {
68 68 echo walk_nav_menu_tree( array_map( 'wp_setup_nav_menu_item', $tabs['common']['pages'] ), 0, (object) $args );
@@ -72,9 +72,9 @@
72 72 </div>
73 73 <h4><?php esc_html_e( 'Logged-In', 'userswp' ) ?></h4>
74 74 <p><?php esc_html_e( 'Logged-In links are not visible to visitors who are not logged in.', 'userswp' ) ?></p>
75 75
76 - <div id="tabs-panel-posttype-<?php echo $post_type_name; ?>-loggedin" class="tabs-panel tabs-panel-active">
76 + <div id="tabs-panel-posttype-<?php echo esc_attr( $post_type_name ); ?>-loggedin" class="tabs-panel tabs-panel-active">
77 77 <ul id="users_wp-menu-checklist-loggedin" class="categorychecklist form-no-clear">
78 78 <?php
79 79 if ($tabs['loggedin']['pages']) {
80 80 echo walk_nav_menu_tree( array_map( 'wp_setup_nav_menu_item', $tabs['loggedin']['pages'] ), 0, (object) $args );
@@ -85,9 +85,9 @@
85 85
86 86 <h4><?php esc_html_e( 'Logged-Out', 'userswp' ) ?></h4>
87 87 <p><?php esc_html_e( 'Logged-Out links are not visible to users who are logged in.', 'userswp' ) ?></p>
88 88
89 - <div id="tabs-panel-posttype-<?php echo $post_type_name; ?>-loggedin" class="tabs-panel tabs-panel-active">
89 + <div id="tabs-panel-posttype-<?php echo esc_attr( $post_type_name ); ?>-loggedin" class="tabs-panel tabs-panel-active">
90 90 <ul id="users_wp-menu-checklist-loggedin" class="categorychecklist form-no-clear">
91 91 <?php
92 92 if ($tabs['loggedout']['pages']) {
93 93 echo walk_nav_menu_tree( array_map( 'wp_setup_nav_menu_item', $tabs['loggedout']['pages'] ), 0, (object) $args );
@@ -95,13 +95,18 @@
95 95 ?>
96 96 </ul>
97 97 </div>
98 98
99 - <p class="button-controls">
100 - <span class="add-to-menu">
101 - <input type="submit"<?php if ( function_exists( 'wp_nav_menu_disabled_check' ) ) : wp_nav_menu_disabled_check( $nav_menu_selected_id ); endif; ?> class="button-secondary submit-add-to-menu right" value="<?php esc_attr_e( 'Add to Menu', 'userswp' ); ?>" name="add-custom-menu-item" id="submit-users-wp-menu" />
102 - <span class="spinner"></span>
103 - </span>
99 + <p class="button-controls wp-clearfix" data-items-type="users-wp-endpoints">
100 + <span class="list-controls hide-if-no-js">
101 + <input type="checkbox" id="users-wp-endpoints-tab" class="select-all">
102 + <label for="users-wp-endpoints-tab"><?php esc_html_e( 'Select all', 'userswp' ); ?></label>
103 + </span>
104 +
105 + <span class="add-to-menu">
106 + <input type="submit" class="button submit-add-to-menu right" value="<?php esc_attr_e( 'Add to menu', 'userswp' ); ?>" name="add-users-wp-endpoints-item" id="submit-users-wp-endpoints">
107 + <span class="spinner"></span>
108 + </span>
104 109 </p>
105 110 </div><!-- /#users_wp-menu -->
106 111
107 112 <?php
@@ -123,9 +128,9 @@
123 128 $users_wp_menu_items = array();
124 129
125 130
126 131 if (!empty($users_page_data)) {
127 - $users_wp_menu_items[] = $users_page_data;
132 + $users_wp_menu_items['users'] = $users_page_data;
128 133 }
129 134
130 135
131 136 $users_wp_menu_items = apply_filters( 'users_wp_nav_menu_get_common_pages', $users_wp_menu_items );
@@ -152,20 +157,20 @@
152 157
153 158 $users_wp_menu_items = array();
154 159
155 160 if (!empty($account_page_data)) {
156 - $users_wp_menu_items[] = $account_page_data;
161 + $users_wp_menu_items['account'] = $account_page_data;
157 162 }
158 163
159 164 if (!empty($change_page_data)) {
160 - $users_wp_menu_items[] = $change_page_data;
165 + $users_wp_menu_items['change'] = $change_page_data;
161 166 }
162 167
163 168 if (!empty($profile_page_data)) {
164 - $users_wp_menu_items[] = $profile_page_data;
169 + $users_wp_menu_items['profile'] = $profile_page_data;
165 170 }
166 171
167 - $users_wp_menu_items[] = array(
172 + $users_wp_menu_items['logout'] = array(
168 173 'name' => __( 'Log out', 'userswp' ),
169 174 'slug' => 'logout',
170 175 'link' => wp_login_url(),
171 176 );
@@ -194,17 +199,17 @@
194 199
195 200 $users_wp_menu_items = array();
196 201
197 202 if (!empty($register_page_data)) {
198 - $users_wp_menu_items[] = $register_page_data;
203 + $users_wp_menu_items['register'] = $register_page_data;
199 204 }
200 205
201 206 if (!empty($login_page_data)) {
202 - $users_wp_menu_items[] = $login_page_data;
207 + $users_wp_menu_items['login'] = $login_page_data;
203 208 }
204 209
205 210 if (!empty($forgot_page_data)) {
206 - $users_wp_menu_items[] = $forgot_page_data;
211 + $users_wp_menu_items['forgot'] = $forgot_page_data;
207 212 }
208 213
209 214
210 215 $users_wp_menu_items = apply_filters( 'users_wp_nav_menu_get_loggedout_pages', $users_wp_menu_items );
@@ -236,8 +241,14 @@
236 241 </script>
237 242 <?php
238 243 }
239 244
245 + /**
246 + * Prepare items for nav menu page arguments
247 + *
248 + * @since 1.0.0
249 + * @return mixed
250 + */
240 251 public function users_wp_admin_wp_nav_menu_page_args($users_wp_menu_items) {
241 252 // If there's nothing to show, we're done
242 253 if ( count( $users_wp_menu_items ) < 1 ) {
243 254 return false;
@@ -242,11 +253,13 @@
242 253 if ( count( $users_wp_menu_items ) < 1 ) {
243 254 return false;
244 255 }
245 256
257 +// print_r($users_wp_menu_items);
258 +
246 259 $page_args = array();
247 260
248 - foreach ( $users_wp_menu_items as $users_wp_item ) {
261 + foreach ( $users_wp_menu_items as $type => $users_wp_item ) {
249 262 $page_args[ $users_wp_item['slug'] ] = (object) array(
250 263 'ID' => -1,
251 264 'post_title' => $users_wp_item['name'],
252 265 'post_author' => 0,
@@ -254,11 +267,70 @@
254 267 'post_excerpt' => $users_wp_item['slug'],
255 268 'post_type' => 'page',
256 269 'post_status' => 'publish',
257 270 'comment_status' => 'closed',
258 - 'guid' => $users_wp_item['link']
271 + 'guid' => $users_wp_item['link'],
272 + 'lightbox_class' => "users-wp-$type-nav",
259 273 );
274 +
260 275 }
261 276
262 277 return $page_args;
263 278 }
279 +
280 + /**
281 + * Add UsersWP setting page link to the WP admin bar.
282 + *
283 + * @since 1.1.2
284 + * @return void
285 + */
286 + public function admin_bar_menu($wp_admin_bar){
287 + if ( !is_admin() && current_user_can( 'manage_options' ) ) {
288 + $wp_admin_bar->add_node( array(
289 + 'parent' => 'appearance',
290 + 'id' => 'userswp',
291 + 'title' => __( 'UsersWP', 'userswp' ),
292 + 'href' => admin_url( 'admin.php?page=userswp' )
293 + ) );
294 + }
295 + }
296 +
297 + /**
298 + * Returns endpoints for UWP menu in setup wizard.
299 + *
300 + * @since 1.2.0.13
301 + * @return array
302 + */
303 + public function get_endpoints() {
304 + $items = array();
305 + $items['pages'] = array();
306 + $loop_index = 999;
307 + $uwp_pages = array('users_page','profile_page','register_page','login_page','account_page','forgot_page','logout');
308 + if( !empty( $uwp_pages) ) {
309 + foreach ( $uwp_pages as $page ) {
310 + if( !empty( $page ) && 'logout' != $page ) {
311 + $page_data = uwp_get_page_url_data($page, 'array');
312 + } else{
313 + $page_data = array(
314 + 'name' => __( 'Log out', 'userswp' ),
315 + 'slug' => 'logout',
316 + 'link' => wp_login_url(),
317 + );
318 + }
319 + $page_class = !empty( $page ) ? str_replace('_page','',$page) : '';
320 + $item = new stdClass();
321 + $item->object = 'custom';
322 + $item->menu_item_parent = 0;
323 + $item->type = 'custom';
324 + $item->title = $page_data['name'];
325 + $item->url = $page_data['link'];
326 + $item->target = '';
327 + $item->attr_title = '';
328 + $item->classes = array("users-wp-menu users-wp-$page_class-nav");
329 + $item->xfn = '';
330 + $items['pages'][] = $item;
331 + }
332 + }
333 +
334 + return apply_filters( 'uwp_menu_items', $items,$loop_index );
335 + }
264 336 }