/** * Returns listing nav menu Items. * * When WP Admin -> * Geodirectory -> * Design -> * Navigation -> * Show add listing navigation in menu and/or Show listings navigation in menu * checked this function returns listing and add listing links. * * @since 1.0.0 * @package GeoDirectory * @return string The Menu HTML. */ function geodir_add_nav_menu_items() { $items = ''; // apply filter to add more navigations // -Filter-Location-Manager if (get_option('geodir_show_listing_nav')) { $menu_class = ''; if (geodir_is_page('listing')) { $menu_class = 'current-menu-item'; } //SHOW LISTING OF POST TYPE IN MAIN NAVIGATION $post_types = geodir_get_posttypes('object'); $show_post_type_main_nav = get_option('geodir_add_posttype_in_main_nav'); if (!empty($post_types)) { foreach ($post_types as $post_type => $args) { if (!empty($show_post_type_main_nav)) { if (in_array($post_type, $show_post_type_main_nav)) { if (get_post_type_archive_link($post_type)) { $menu_class = ''; if (geodir_get_current_posttype() == $post_type && geodir_is_page('listing')) { $menu_class = 'current-menu-item'; } /** * Filter the menu li class. * * @since 1.0.0 * @param string $menu_class The menu HTML class. */ $li_class = apply_filters('geodir_menu_li_class', 'menu-item ' . $menu_class); /** * Filter the menu a class. * * @since 1.0.0 */ $a_class = apply_filters('geodir_menu_a_class', ''); $items .= '<li class="' . $li_class . '"> <a href="' . get_post_type_archive_link($post_type) . '" class="' . $a_class . '"> ' . __(ucfirst($args->labels->name)) . ' </a> </li>'; } } } } } //END LISTING OF POST TYPE IN MAIN NAVIGATION $view_posttype_listing = get_option('geodir_add_posttype_in_listing_nav'); $is_listing_sub_meny_exists = !empty($view_posttype_listing) ? true : false; if ($is_listing_sub_meny_exists) { /** * Filter the menu li class. * * @since 1.0.0 * @param string $menu_class The menu HTML class. */ $li_class = apply_filters('geodir_menu_li_class', 'menu-item menu-item-has-children menu-gd-listings ' . $menu_class); /** * Filter the sub menu li class. * * @since 1.0.0 * @param string $menu_class The menu HTML class. */ $sub_li_class = apply_filters('geodir_sub_menu_li_class', 'menu-item ' . $menu_class); /** * Filter the sub menu ul class. * * @since 1.0.0 */ $sub_ul_class = apply_filters('geodir_sub_menu_ul_class', 'sub-menu'); /** * Filter the menu a class. * * @since 1.0.0 */ $a_class = apply_filters('geodir_menu_a_class', ''); /** * Filter the sub menu a class. * * @since 1.0.0 */ $sub_a_class = apply_filters('geodir_sub_menu_a_class', ''); $items .= '<li class="' . $li_class . '"> <a href="#" class="' . $a_class . '">' . __('Listing', 'geodirectory') . '</a> <ul class="' . $sub_ul_class . '">'; $post_types = geodir_get_posttypes('object'); $show_listing_post_types = get_option('geodir_add_posttype_in_listing_nav'); if (!empty($post_types)) { global $geodir_add_location_url; $geodir_add_location_url = true; foreach ($post_types as $post_type => $args) { if (!empty($show_listing_post_types)) { if (in_array($post_type, $show_listing_post_types)) { if (get_post_type_archive_link($post_type)) { $menu_class = ''; if (geodir_get_current_posttype() == $post_type && geodir_is_page('listing')) { $menu_class = 'current-menu-item'; } $items .= '<li class="' . $sub_li_class . '"> <a href="' . get_post_type_archive_link($post_type) . '" class="' . $sub_a_class . '"> ' . __(ucfirst($args->labels->name)) . ' </a> </li>'; } } } } $geodir_add_location_url = NULL; } $items .= ' </ul> </li>'; } } if (get_option('geodir_show_addlisting_nav')) { $menu_class = ''; if (geodir_is_page('add-listing')) { $menu_class = 'current-menu-item'; } //SHOW ADD LISTING POST TYPE IN MAIN NAVIGATION $post_types = geodir_get_posttypes('object'); $show_add_listing_post_types_main_nav = get_option('geodir_add_listing_link_main_nav'); $geodir_allow_posttype_frontend = get_option('geodir_allow_posttype_frontend'); if (!empty($post_types)) { foreach ($post_types as $post_type => $args) { if (!empty($geodir_allow_posttype_frontend)) { if (in_array($post_type, $geodir_allow_posttype_frontend)) { if (!empty($show_add_listing_post_types_main_nav)) { if (in_array($post_type, $show_add_listing_post_types_main_nav)) { if (geodir_get_addlisting_link($post_type)) { $menu_class = ''; if (geodir_get_current_posttype() == $post_type && geodir_is_page('add-listing')) { $menu_class = 'current-menu-item'; } /** * Filter the menu li class. * * @since 1.0.0 * @param string $menu_class The menu HTML class. */ $li_class = apply_filters('geodir_menu_li_class', 'menu-item ' . $menu_class); /** * Filter the menu a class. * * @since 1.0.0 */ $a_class = apply_filters('geodir_menu_a_class', ''); $cpt_name = __($args->labels->singular_name, 'geodirectory'); $items .= '<li class="' . $li_class . '"> <a href="' . geodir_get_addlisting_link($post_type) . '" class="' . $a_class . '"> ' . sprintf(__('Add %s', 'geodirectory'), $cpt_name) . ' </a> </li>'; } } } } } } } //END SHOW ADD LISTING POST TYPE IN MAIN NAVIGATION } $view_add_posttype_listing = get_option('geodir_add_listing_link_add_listing_nav'); $is_add_listing_sub_meny_exists = !empty($view_add_posttype_listing) ? true : false; if ($is_add_listing_sub_meny_exists) { if (get_option('geodir_show_addlisting_nav')) { /** * Filter the menu li class. * * @since 1.0.0 * @param string $menu_class The menu HTML class. */ $li_class = apply_filters('geodir_menu_li_class', 'menu-item menu-item-has-children menu-gd-add-listing ' . $menu_class); /** * Filter the sub menu li class. * * @since 1.0.0 * @param string $menu_class The menu HTML class. */ $sub_li_class = apply_filters('geodir_sub_menu_li_class', 'menu-item ' . $menu_class); /** * Filter the sub menu ul class. * * @since 1.0.0 */ $sub_ul_class = apply_filters('geodir_sub_menu_ul_class', 'sub-menu'); /** * Filter the menu a class. * * @since 1.0.0 */ $a_class = apply_filters('geodir_menu_a_class', ''); /** * Filter the sub menu a class. * * @since 1.0.0 */ $sub_a_class = apply_filters('geodir_sub_menu_a_class', ''); $items .= '<li class="' . $li_class . '"> <a href="#" class="' . $a_class . '">' . __('Add Listing', 'geodirectory') . '</a> <ul class="' . $sub_ul_class . '">'; $post_types = geodir_get_posttypes('object'); $show_add_listing_post_types = get_option('geodir_add_listing_link_add_listing_nav'); if (!empty($post_types)) { foreach ($post_types as $post_type => $args) { if (!empty($geodir_allow_posttype_frontend)) { if (in_array($post_type, $geodir_allow_posttype_frontend)) { if (!empty($show_add_listing_post_types)) { if (in_array($post_type, $show_add_listing_post_types)) { if (geodir_get_addlisting_link($post_type)) { $menu_class = ''; if (geodir_get_current_posttype() == $post_type && geodir_is_page('add-listing')) { $menu_class = 'current-menu-item'; } /** * Filter the menu li class. * * @since 1.0.0 * @param string $menu_class The menu HTML class. */ $li_class = apply_filters('geodir_menu_li_class', 'menu-item ' . $menu_class); $cpt_name = __($args->labels->singular_name, 'geodirectory'); $items .= '<li class="' . $li_class . '"> <a href="' . geodir_get_addlisting_link($post_type) . '" class="' . $sub_a_class . '"> ' . sprintf(__('Add %s', 'geodirectory'), $cpt_name) . ' </a> </li>'; } } } } } } } $items .= ' </ul> </li>'; } } // apply filter to add more navigations // -Filter-Location-Manager return $items; }
/** * Generates login box HTML. * * @since 1.0.0 * @package GeoDirectory * @global object $current_user Current user object. * @param array|string $args Display arguments including before_title, after_title, before_widget, and after_widget. * @param array|string $instance The settings for the particular instance of the widget. */ function geodir_loginwidget_output($args = '', $instance = '') { //print_r($args); //print_r($instance); // prints the widget extract($args, EXTR_SKIP); /** This filter is documented in geodirectory_widgets.php */ $title = empty($instance['title']) ? __('My Dashboard', 'geodirectory') : apply_filters('widget_title', __($instance['title'], 'geodirectory')); echo $before_widget; echo $before_title . $title . $after_title; if (is_user_logged_in()) { global $current_user; $login_url = geodir_getlink(home_url(), array('geodir_signup' => 'true'), false); $add_listurl = get_permalink(geodir_add_listing_page_id()); $add_listurl = geodir_getlink($add_listurl, array('listing_type' => 'gd_place')); $author_link = get_author_posts_url($current_user->data->ID); $author_link = geodir_getlink($author_link, array('geodir_dashbord' => 'true'), false); echo '<ul class="geodir-loginbox-list">'; ob_start(); ?> <li><a class="signin" href="<?php echo wp_logout_url(home_url()); ?> "><?php _e('Logout', 'geodirectory'); ?> </a></li> <?php $post_types = geodir_get_posttypes('object'); $show_add_listing_post_types_main_nav = get_option('geodir_add_listing_link_user_dashboard'); $geodir_allow_posttype_frontend = get_option('geodir_allow_posttype_frontend'); if (!empty($show_add_listing_post_types_main_nav)) { $addlisting_links = ''; foreach ($post_types as $key => $postobj) { if (in_array($key, $show_add_listing_post_types_main_nav)) { if ($add_link = geodir_get_addlisting_link($key)) { $name = $postobj->labels->name; $selected = ''; if (geodir_get_current_posttype() == $key && geodir_is_page('add-listing')) { $selected = 'selected="selected"'; } /** * Filter add listing link. * * @since 1.0.0 * @param string $add_link Add listing link. * @param string $key Add listing array key. * @param int $current_user->ID Current user ID. */ $add_link = apply_filters('geodir_dashboard_link_add_listing', $add_link, $key, $current_user->ID); $addlisting_links .= '<option ' . $selected . ' value="' . $add_link . '">' . __(ucfirst($name), 'geodirectory') . '</option>'; } } } if ($addlisting_links != '') { ?> <li><select id="geodir_add_listing" class="chosen_select" onchange="window.location.href=this.value" option-autoredirect="1" name="geodir_add_listing" option-ajaxchosen="false" data-placeholder="<?php echo esc_attr(__('Add Listing', 'geodirectory')); ?> "> <option value="" disabled="disabled" selected="selected" style='display:none;'><?php echo esc_attr(__('Add Listing', 'geodirectory')); ?> </option> <?php echo $addlisting_links; ?> </select></li> <?php } } // My Favourites in Dashboard $show_favorite_link_user_dashboard = get_option('geodir_favorite_link_user_dashboard'); $user_favourite = geodir_user_favourite_listing_count(); if (!empty($show_favorite_link_user_dashboard) && !empty($user_favourite)) { $favourite_links = ''; foreach ($post_types as $key => $postobj) { if (in_array($key, $show_favorite_link_user_dashboard) && array_key_exists($key, $user_favourite)) { $name = $postobj->labels->name; $post_type_link = geodir_getlink($author_link, array('stype' => $key, 'list' => 'favourite'), false); $selected = ''; if (isset($_REQUEST['list']) && $_REQUEST['list'] == 'favourite' && isset($_REQUEST['stype']) && $_REQUEST['stype'] == $key && isset($_REQUEST['geodir_dashbord'])) { $selected = 'selected="selected"'; } /** * Filter favorite listing link. * * @since 1.0.0 * @param string $post_type_link Favorite listing link. * @param string $key Favorite listing array key. * @param int $current_user->ID Current user ID. */ $post_type_link = apply_filters('geodir_dashboard_link_favorite_listing', $post_type_link, $key, $current_user->ID); $favourite_links .= '<option ' . $selected . ' value="' . $post_type_link . '">' . __(ucfirst($name), 'geodirectory') . '</option>'; } } if ($favourite_links != '') { ?> <li> <select id="geodir_my_favourites" class="chosen_select" onchange="window.location.href=this.value" option-autoredirect="1" name="geodir_my_favourites" option-ajaxchosen="false" data-placeholder="<?php echo esc_attr(__('My Favorites', 'geodirectory')); ?> "> <option value="" disabled="disabled" selected="selected" style='display:none;'><?php echo esc_attr(__('My Favorites', 'geodirectory')); ?> </option> <?php echo $favourite_links; ?> </select> </li> <?php } } $show_listing_link_user_dashboard = get_option('geodir_listing_link_user_dashboard'); $user_listing = geodir_user_post_listing_count(); if (!empty($show_listing_link_user_dashboard) && !empty($user_listing)) { $listing_links = ''; foreach ($post_types as $key => $postobj) { if (in_array($key, $show_listing_link_user_dashboard) && array_key_exists($key, $user_listing)) { $name = $postobj->labels->name; $listing_link = geodir_getlink($author_link, array('stype' => $key), false); $selected = ''; if (!isset($_REQUEST['list']) && isset($_REQUEST['geodir_dashbord']) && isset($_REQUEST['stype']) && $_REQUEST['stype'] == $key) { $selected = 'selected="selected"'; } /** * Filter my listing link. * * @since 1.0.0 * @param string $listing_link My listing link. * @param string $key My listing array key. * @param int $current_user->ID Current user ID. */ $listing_link = apply_filters('geodir_dashboard_link_my_listing', $listing_link, $key, $current_user->ID); $listing_links .= '<option ' . $selected . ' value="' . $listing_link . '">' . __(ucfirst($name), 'geodirectory') . '</option>'; } } if ($listing_links != '') { ?> <li> <select id="geodir_my_listings" class="chosen_select" onchange="window.location.href=this.value" option-autoredirect="1" name="geodir_my_listings" option-ajaxchosen="false" data-placeholder="<?php echo esc_attr(__('My Listings', 'geodirectory')); ?> "> <option value="" disabled="disabled" selected="selected" style='display:none;'><?php echo esc_attr(__('My Listings', 'geodirectory')); ?> </option> <?php echo $listing_links; ?> </select> </li> <?php } } $dashboard_link = ob_get_clean(); /** * Filter dashboard links HTML. * * @since 1.0.0 * @param string $dashboard_link Dashboard links HTML. */ echo apply_filters('geodir_dashboard_links', $dashboard_link); echo '</ul>'; } else { ?> <?php /** * Filter signup form action link. * * @since 1.0.0 */ ?> <form name="loginform" class="loginform1" action="<?php echo apply_filters('geodir_signup_reg_submit_link', home_url() . '/index.php?geodir_signup=true'); ?> " method="post"> <div class="geodir_form_row"><input placeholder="<?php _e('Email', 'geodirectory'); ?> " name="log" type="text" class="textfield user_login1"/> <span class="user_loginInfo"></span></div> <div class="geodir_form_row"><input placeholder="<?php _e('Password', 'geodirectory'); ?> " name="pwd" type="password" class="textfield user_pass1 input-text"/><span class="user_passInfo"></span></div> <input type="hidden" name="redirect_to" value="<?php echo htmlspecialchars(geodir_curPageURL()); ?> "/> <input type="hidden" name="testcookie" value="1"/> <div class="geodir_form_row clearfix"><input type="submit" name="submit" value="<?php echo SIGN_IN_BUTTON; ?> " class="b_signin"/> <p class="geodir-new-forgot-link"> <?php /** * Filter signup page register form link. * * @since 1.0.0 */ ?> <a href="<?php echo apply_filters('geodir_signup_reg_form_link', home_url() . '/?geodir_signup=true&page1=sign_up'); ?> " class="goedir-newuser-link"><?php echo NEW_USER_TEXT; ?> </a> <?php /** * Filter signup page forgot password form link. * * @since 1.0.0 */ ?> <a href="<?php echo apply_filters('geodir_signup_forgot_form_link', home_url() . '/?geodir_signup=true&page1=sign_in'); ?> " class="goedir-forgot-link"><?php echo FORGOT_PW_TEXT; ?> </a></p></div> </form> <?php } echo $after_widget; }