MCPcopy Create free account
hub / github.com/EqualifyEverything/equalify / the_pagination

Function the_pagination

models/view_components.php:204–311  ·  view source on GitHub ↗

* The Pagination * Inspired by https://www.myprogrammingtutorials.com/create-pagination-with-php-and-mysql.html */

($total_pages)

Source from the content-addressed store, hash-verified

202 * Inspired by https://www.myprogrammingtutorials.com/create-pagination-with-php-and-mysql.html
203 */
204function the_pagination($total_pages){
205
206 // Define page number.
207 $current_page_number = get_current_page_number();
208
209 // Define current view.
210 if(!empty($_GET['view'])){
211 $view_parameters = '?view='.$_GET['view'];
212 }else{
213 $view_parameters = '?view='.get_default_view();
214 }
215
216 // Define report.
217 if(!empty($_GET['report'])){
218 $report_parameters = '&report='.$_GET['report'];
219 }else{
220 $report_parameters = '';
221 }
222
223 // Define preset.
224 if(!empty($_GET['preset'])){
225 $preset_parameters = '&preset='.$_GET['preset'];
226 }else{
227 $preset_parameters = '';
228 }
229
230
231 // Set active state as function, so we don't have to keep
232 // writing this condition.
233 function get_active_state(
234 $current_page_number, $item_number
235 ){
236 if($current_page_number == $item_number){
237 return 'active';
238 }else{
239 return null;
240 }
241 }
242
243 function create_pagination_element( $view_parameters, $report_parameters, $preset_parameters, $item_number ) {
244 echo
245 '<li class="page-item ' . get_active_state(get_current_page_number(), $item_number) . '">' .
246 '<a class="page-link" href="' .
247 $view_parameters.$report_parameters.$preset_parameters .
248 '&current_page_number=' . $item_number . '">' . $item_number . '</a>' . '</li>';
249 }
250
251 function create_ellipses_element() {
252 echo '<li class="page-item disabled"><a class="page-link" href="">...</a></li>';
253 }
254
255 // Only show pagination for more than one page
256 if($total_pages > 1):
257
258?>
259
260<nav aria-label="Page Navigation">
261 <ul class="pagination justify-content-center">

Callers 2

sites.phpFile · 0.85
reports.phpFile · 0.85

Calls 5

get_current_page_numberFunction · 0.85
get_default_viewFunction · 0.85
get_active_stateFunction · 0.85
create_ellipses_elementFunction · 0.85

Tested by

no test coverage detected