/**
  * Pagination handler.
  *
  * @param int    $current_page     Current page number.
  * @param int    $total_results    Total results.
  * @param int    $per_page         Results per page.
  * @param string $current_url      Optional; the current URL where pagination links are displayed.
  * @param int    $pagination_limit Optional; pagination link limit.
  *
  * @return array An array of pagination links, indexed by page number.
  */
 protected static function paginate($current_page, $total_results, $per_page, $current_url = '', $pagination_limit = 10)
 {
     $current_page = max(1, (int) $current_page);
     $total_results = max(0, (int) $total_results);
     $per_page = max(1, (int) $per_page);
     $total_pages = ceil($total_results / $per_page);
     if (!$current_url) {
         $current_url = is_ssl() ? 'https://' : 'http://';
         $current_url .= $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
     }
     $p_var = c_ws_plugin__s2member_pro_sc_member_list_in::p_var();
     $current_url = remove_query_arg($p_var, $current_url);
     $pagination = array();
     // Pagination links.
     $pagination_limit = max(1, (int) $pagination_limit);
     for ($_i = 1, $_show_dots = false; $_i <= $total_pages; ++$_i) {
         if ($_i === 1 || $_i === $total_pages || $_i >= $current_page - $pagination_limit || $_i <= $current_page + $pagination_limit) {
             if ($_i === $current_page) {
                 $pagination[$_i]['url'] = '';
                 $pagination[$_i]['text'] = (string) $_i;
                 $pagination[$_i]['link'] = (string) $_i;
             } else {
                 $pagination[$_i]['text'] = (string) $_i;
                 $pagination[$_i]['url'] = add_query_arg($p_var, $_i, $current_url);
                 $pagination[$_i]['link'] = '<a href="' . esc_attr(add_query_arg($p_var, $_i, $current_url)) . '">' . (string) $_i . '</a>';
             }
             $_show_dots = true;
         } elseif ($_show_dots) {
             $pagination[$_i]['url'] = '';
             $pagination[$_i]['text'] = '...';
             $pagination[$_i]['link'] = '...';
             $_show_dots = false;
         }
     }
     // unset($_i, $_show_dots);
     return $pagination;
 }
 /**
  * `[s2Member-List-Search-Box /]` Shortcode.
  *
  * @package s2Member\Shortcodes
  * @since 140504
  *
  * @attaches-to ``add_shortcode("s2Member-List-Search-Box");``
  *
  * @param array  $attr An array of Attributes.
  * @param string $content Content inside the Shortcode.
  * @param string $shortcode The actual Shortcode name itself.
  *
  * @return mixed Return-value of inner routine.
  */
 public static function s_box_shortcode($attr = array(), $content = "", $shortcode = "")
 {
     return c_ws_plugin__s2member_pro_sc_member_list_in::s_box_shortcode($attr, $content, $shortcode);
 }
Esempio n. 3
0
							<?php 
        }
        ?>

							<?php 
        if ($attr["show_display_name"] && $_user->display_name) {
            ?>
								<div class="ws-plugin--s2member-list-user-display-name">
									<?php 
            if ($_display_name_link = c_ws_plugin__s2member_pro_sc_member_list_in::parse_replacement_codes($attr["link_display_name"], $_user)) {
                ?>
										<a href="<?php 
                echo esc_attr($_display_name_link);
                ?>
"<?php 
                echo c_ws_plugin__s2member_pro_sc_member_list_in::link_attributes($_display_name_link);
                ?>
><?php 
                echo esc_html($_user->display_name);
                ?>
</a>
									<?php 
            } else {
                echo esc_html($_user->display_name);
            }
            ?>
								</div>
							<?php 
        }
        ?>