ILIAS  release_8 Revision v8.24
many_pages_dropdown.php
Go to the documentation of this file.
1<?php
2
3declare(strict_types=1);
4
6
8{
9 global $DIC;
10 $factory = $DIC->ui()->factory();
11 $renderer = $DIC->ui()->renderer();
12 $url = $DIC->http()->request()->getRequestTarget();
13 $refinery = $DIC->refinery();
14 $request_wrapper = $DIC->http()->wrapper()->query();
15
16 $parameter_name = 'page3';
17 $current_page = 0;
18 if ($request_wrapper->has($parameter_name)) {
19 $current_page = $request_wrapper->retrieve($parameter_name, $refinery->kindlyTo()->int());
20 }
21
22 $pagination = $factory->viewControl()->pagination()
23 ->withTargetURL($url, $parameter_name)
24 ->withTotalEntries(102)
25 ->withPageSize(10)
26 ->withDropdownAt(5)
27 ->withCurrentPage($current_page);
28
29 $custom_pagination = $pagination
30 ->withDropdownLabel('current page is %1$d (of %2$d pages in total)');
31
32 list($range_offset, $range_length) = $pagination->getRange()->unpack();
33 $result = "Show $range_length entries starting at $range_offset";
34
35 return $renderer->render([$pagination, $custom_pagination])
36 . '<hr>'
37 . $result;
38}
global $DIC
Definition: feed.php:28
$factory
Definition: metadata.php:75
Refinery Factory $refinery
$url