/** * Output pagination * * @param type $max_num_pages The total of pages * @param type $current_page The current pages * @param string $session_id The session ID of current view * * @return type */ static function pagination_output($max_num_pages, $current_page, $session_id) { $dargs = PT_CV_Functions::get_global_variable('dargs'); if (!$max_num_pages || (int) $max_num_pages === 1) { return ''; } $pagination_btn = ''; $type = isset($dargs['pagination-settings']['type']) ? $dargs['pagination-settings']['type'] : 'ajax'; $style = isset($dargs['pagination-settings']['style']) ? $dargs['pagination-settings']['style'] : 'regular'; if ($type == 'normal' || $style == 'regular') { $pagination_btn = sprintf('<ul class="%s" data-totalpages="%s" data-sid="%s">%s</ul>', PT_CV_PREFIX . 'pagination' . ' ' . PT_CV_PREFIX . $type . ' pagination', esc_attr($max_num_pages), esc_attr($session_id), PT_CV_Functions::pagination($max_num_pages, $current_page)); } else { $pagination_btn = apply_filters(PT_CV_PREFIX_ . 'btn_more_html', $pagination_btn, $max_num_pages, $session_id); } // Add loading icon $pagination_btn .= self::html_loading_img(12, PT_CV_PREFIX . 'spinner'); $wrapper_class = apply_filters(PT_CV_PREFIX_ . 'pagination_class', ''); $output = apply_filters(PT_CV_PREFIX_ . 'pagination_output', sprintf('<div class="%s">%s</div>', $wrapper_class . ' ' . PT_CV_PREFIX . 'pagination-wrapper', $pagination_btn)); return $output; }