Pager componentAvailable since EcoComposer 2.2
Classical pager example :
Test1 | Test2 | Test3 | Test4 | Test5 |
---|---|---|---|---|
Value 0 | Value 1 | Value 2 | Value 3 | Value 4 |
Value 5 | Value 6 | Value 7 | Value 8 | Value 9 |
Value 10 | Value 11 | Value 12 | Value 13 | Value 14 |
Value 15 | Value 16 | Value 17 | Value 18 | Value 19 |
Value 20 | Value 21 | Value 22 | Value 23 | Value 24 |
Value 25 | Value 26 | Value 27 | Value 28 | Value 29 |
Value 30 | Value 31 | Value 32 | Value 33 | Value 34 |
Value 35 | Value 36 | Value 37 | Value 38 | Value 39 |
Value 40 | Value 41 | Value 42 | Value 43 | Value 44 |
Value 45 | Value 46 | Value 47 | Value 48 | Value 49 |
Value 50 | Value 51 | Value 52 | Value 53 | Value 54 |
Value 55 | Value 56 | Value 57 | Value 58 | Value 59 |
Value 60 | Value 61 | Value 62 | Value 63 | Value 64 |
Value 65 | Value 66 | Value 67 | Value 68 | Value 69 |
Value 70 | Value 71 | Value 72 | Value 73 | Value 74 |
Value 75 | Value 76 | Value 77 | Value 78 | Value 79 |
Value 80 | Value 81 | Value 82 | Value 83 | Value 84 |
Value 85 | Value 86 | Value 87 | Value 88 | Value 89 |
Value 90 | Value 91 | Value 92 | Value 93 | Value 94 |
Value 95 | Value 96 | Value 97 | Value 98 | Value 99 |
Value 100 | Value 101 | Value 102 | Value 103 | Value 104 |
Value 105 | Value 106 | Value 107 | Value 108 | Value 109 |
Value 110 | Value 111 | Value 112 | Value 113 | Value 114 |
Value 115 | Value 116 | Value 117 | Value 118 | Value 119 |
Value 120 | Value 121 | Value 122 | Value 123 | Value 124 |
Value 125 | Value 126 | Value 127 | Value 128 | Value 129 |
Value 130 | Value 131 | Value 132 | Value 133 | Value 134 |
Value 135 | Value 136 | Value 137 | Value 138 | Value 139 |
Value 140 | Value 141 | Value 142 | Value 143 | Value 144 |
Value 145 | Value 146 | Value 147 | Value 148 | Value 149 |
Value 150 | Value 151 | Value 152 | Value 153 | Value 154 |
Value 155 | Value 156 | Value 157 | Value 158 | Value 159 |
Value 160 | Value 161 | Value 162 | Value 163 | Value 164 |
Value 165 | Value 166 | Value 167 | Value 168 | Value 169 |
Value 170 | Value 171 | Value 172 | Value 173 | Value 174 |
Value 175 | Value 176 | Value 177 | Value 178 | Value 179 |
Value 180 | Value 181 | Value 182 | Value 183 | Value 184 |
Value 185 | Value 186 | Value 187 | Value 188 | Value 189 |
Value 190 | Value 191 | Value 192 | Value 193 | Value 194 |
Value 195 | Value 196 | Value 197 | Value 198 | Value 199 |
Value 200 | Value 201 | Value 202 | Value 203 | Value 204 |
Value 205 | Value 206 | Value 207 | Value 208 | Value 209 |
Value 210 | Value 211 | Value 212 | Value 213 | Value 214 |
Value 215 | Value 216 | Value 217 | Value 218 | Value 219 |
Value 220 | Value 221 | Value 222 | Value 223 | Value 224 |
Value 225 | Value 226 | Value 227 | Value 228 | Value 229 |
Value 230 | Value 231 | Value 232 | Value 233 | Value 234 |
Value 235 | Value 236 | Value 237 | Value 238 | Value 239 |
Value 240 | Value 241 | Value 242 | Value 243 | Value 244 |
Value 245 | Value 246 | Value 247 | Value 248 | Value 249 |
Value 250 | Value 251 | Value 252 | Value 253 | Value 254 |
Value 255 | Value 256 | Value 257 | Value 258 | Value 259 |
Value 260 | Value 261 | Value 262 | Value 263 | Value 264 |
Value 265 | Value 266 | Value 267 | Value 268 | Value 269 |
Value 270 | Value 271 | Value 272 | Value 273 | Value 274 |
Value 275 | Value 276 | Value 277 | Value 278 | Value 279 |
Value 280 | Value 281 | Value 282 | Value 283 | Value 284 |
Value 285 | Value 286 | Value 287 | Value 288 | Value 289 |
Value 290 | Value 291 | Value 292 | Value 293 | Value 294 |
Value 295 | Value 296 | Value 297 | Value 298 | Value 299 |
Value 300 | Value 301 | Value 302 | Value 303 | Value 304 |
Value 305 | Value 306 | Value 307 | Value 308 | Value 309 |
Value 310 | Value 311 | Value 312 | Value 313 | Value 314 |
Value 315 | Value 316 | Value 317 | Value 318 | Value 319 |
Value 320 | Value 321 | Value 322 | Value 323 | Value 324 |
Value 325 | Value 326 | Value 327 | Value 328 | Value 329 |
Value 330 | Value 331 | Value 332 | Value 333 | Value 334 |
Value 335 | Value 336 | Value 337 | Value 338 | Value 339 |
Value 340 | Value 341 | Value 342 | Value 343 | Value 344 |
Value 345 | Value 346 | Value 347 | Value 348 | Value 349 |
Value 350 | Value 351 | Value 352 | Value 353 | Value 354 |
Value 355 | Value 356 | Value 357 | Value 358 | Value 359 |
Value 360 | Value 361 | Value 362 | Value 363 | Value 364 |
Value 365 | Value 366 | Value 367 | Value 368 | Value 369 |
Value 370 | Value 371 | Value 372 | Value 373 | Value 374 |
Value 375 | Value 376 | Value 377 | Value 378 | Value 379 |
Value 380 | Value 381 | Value 382 | Value 383 | Value 384 |
Value 385 | Value 386 | Value 387 | Value 388 | Value 389 |
Value 390 | Value 391 | Value 392 | Value 393 | Value 394 |
Value 395 | Value 396 | Value 397 | Value 398 | Value 399 |
Value 400 | Value 401 | Value 402 | Value 403 | Value 404 |
Value 405 | Value 406 | Value 407 | Value 408 | Value 409 |
Value 410 | Value 411 | Value 412 | Value 413 | Value 414 |
Value 415 | Value 416 | Value 417 | Value 418 | Value 419 |
Value 420 | Value 421 | Value 422 | Value 423 | Value 424 |
Value 425 | Value 426 | Value 427 | Value 428 | Value 429 |
Value 430 | Value 431 | Value 432 | Value 433 | Value 434 |
Value 435 | Value 436 | Value 437 | Value 438 | Value 439 |
Value 440 | Value 441 | Value 442 | Value 443 | Value 444 |
Value 445 | Value 446 | Value 447 | Value 448 | Value 449 |
Value 450 | Value 451 | Value 452 | Value 453 | Value 454 |
Value 455 | Value 456 | Value 457 | Value 458 | Value 459 |
Value 460 | Value 461 | Value 462 | Value 463 | Value 464 |
Value 465 | Value 466 | Value 467 | Value 468 | Value 469 |
Value 470 | Value 471 | Value 472 | Value 473 | Value 474 |
Value 475 | Value 476 | Value 477 | Value 478 | Value 479 |
Value 480 | Value 481 | Value 482 | Value 483 | Value 484 |
Value 485 | Value 486 | Value 487 | Value 488 | Value 489 |
Value 490 | Value 491 | Value 492 | Value 493 | Value 494 |
Value 495 | Value 496 | Value 497 | Value 498 | Value 499 |
Value 500 | Value 501 | Value 502 | Value 503 | Value 504 |
Value 505 | Value 506 | Value 507 | Value 508 | Value 509 |
Value 510 | Value 511 | Value 512 | Value 513 | Value 514 |
Value 515 | Value 516 | Value 517 | Value 518 | Value 519 |
Value 520 | Value 521 | Value 522 | Value 523 | Value 524 |
Value 525 | Value 526 | Value 527 | Value 528 | Value 529 |
Value 530 | Value 531 | Value 532 | Value 533 | Value 534 |
Value 535 | Value 536 | Value 537 | Value 538 | Value 539 |
Value 540 | Value 541 | Value 542 | Value 543 | Value 544 |
Value 545 | Value 546 | Value 547 | Value 548 | Value 549 |
Value 550 | Value 551 | Value 552 | Value 553 | Value 554 |
Value 555 | Value 556 | Value 557 | Value 558 | Value 559 |
Value 560 | Value 561 | Value 562 | Value 563 | Value 564 |
Value 565 | Value 566 | Value 567 | Value 568 | Value 569 |
Value 570 | Value 571 | Value 572 | Value 573 | Value 574 |
Value 575 | Value 576 | Value 577 | Value 578 | Value 579 |
Value 580 | Value 581 | Value 582 | Value 583 | Value 584 |
Value 585 | Value 586 | Value 587 | Value 588 | Value 589 |
Value 590 | Value 591 | Value 592 | Value 593 | Value 594 |
Value 595 | Value 596 | Value 597 | Value 598 | Value 599 |
Value 600 | Value 601 | Value 602 | Value 603 | Value 604 |
Value 605 | Value 606 | Value 607 | Value 608 | Value 609 |
Value 610 | Value 611 | Value 612 | Value 613 | Value 614 |
Value 615 | Value 616 | Value 617 | Value 618 | Value 619 |
Value 620 | Value 621 | Value 622 | Value 623 | Value 624 |
Value 625 | Value 626 | Value 627 | Value 628 | Value 629 |
Value 630 | Value 631 | Value 632 | Value 633 | Value 634 |
Value 635 | Value 636 | Value 637 | Value 638 | Value 639 |
Value 640 | Value 641 | Value 642 | Value 643 | Value 644 |
Value 645 | Value 646 | Value 647 | Value 648 | Value 649 |
Value 650 | Value 651 | Value 652 | Value 653 | Value 654 |
Value 655 | Value 656 | Value 657 | Value 658 | Value 659 |
Value 660 | Value 661 | Value 662 | Value 663 | Value 664 |
Value 665 | Value 666 | Value 667 | Value 668 | Value 669 |
Value 670 | Value 671 | Value 672 | Value 673 | Value 674 |
Value 675 | Value 676 | Value 677 | Value 678 | Value 679 |
Value 680 | Value 681 | Value 682 | Value 683 | Value 684 |
Value 685 | Value 686 | Value 687 | Value 688 | Value 689 |
Value 690 | Value 691 | Value 692 | Value 693 | Value 694 |
Value 695 | Value 696 | Value 697 | Value 698 | Value 699 |
Value 700 | Value 701 | Value 702 | Value 703 | Value 704 |
Value 705 | Value 706 | Value 707 | Value 708 | Value 709 |
Value 710 | Value 711 | Value 712 | Value 713 | Value 714 |
Value 715 | Value 716 | Value 717 | Value 718 | Value 719 |
Value 720 | Value 721 | Value 722 | Value 723 | Value 724 |
Value 725 | Value 726 | Value 727 | Value 728 | Value 729 |
Value 730 | Value 731 | Value 732 | Value 733 | Value 734 |
Value 735 | Value 736 | Value 737 | Value 738 | Value 739 |
Value 740 | Value 741 | Value 742 | Value 743 | Value 744 |
Value 745 | Value 746 | Value 747 | Value 748 | Value 749 |
The defaults values are :
'all-pages-width' : 21rem * theming.$font-size, 'border-radius' : .4rem * theming.$font-size, 'height' : 3.4rem * theming.$font-size, 'margin-top' : 2rem * theming.$font-size, 'font-family' : theming.$font-family, 'pager--disabled-color' : 'pager--disabled-color', 'pager--disabled--non-active--page--background-color' : 'pager--disabled--non-active--page--background-color', 'pager--disabled--non-active--page--border-color' : 'pager--disabled--non-active--page--border-color', 'pager--hover--page--background-color' : 'pager--hover--page--background-color', 'pager--hover--page--border-color' : 'pager--hover--page--border-color', 'pager--hover--page--color' : 'pager--hover--page--color', 'pager--non-active--page--background-color' : 'pager--non-active--page--background-color', 'pager--non-active--page--color' : 'pager--non-active--page--color', 'pager--active--page--background-color' : 'pager--active--page--background-color', 'pager--active--page--border-color' : 'pager--active--page--border-color', 'pager--active--page--color' : 'pager--active--page--color', 'pager--active--page--text-shadow' : 'pager--active--page--text-shadow', 'pager--indications--color' : 'pager--indications--color', // jump 'pager--jump--background-color' : 'pager--jump--background-color', 'pager--jump--border' : 'pager--jump--border', 'pager--jump--color' : 'pager--jump--color', 'pager--jump--placeholder--color' : 'pager--jump--placeholder--color', 'print' : false, 'suffix' : '', 'themes' : ( 'light' : ( 'default--pager--disabled-color' : #555, 'default--pager--disabled--non-active--page--background-color' : #fff, 'default--pager--disabled--non-active--page--border-color' : #ddd, 'default--pager--hover--page--background-color' : #eee, 'default--pager--hover--page--border-color' : #ddd, 'default--pager--hover--page--color' : #2a6496, 'default--pager--non-active--page--background-color' : #fff, 'default--pager--non-active--page--color' : #05a, 'default--pager--active--page--background-color' : #05a, 'default--pager--active--page--border-color' : #05a, 'default--pager--active--page--color' : #fff, 'default--pager--active--page--text-shadow' : 0 0 .2rem * theming.$font-size #eee, 'default--pager--indications--color' : #444, 'default--pager--jump--background-color' : #fff, 'default--pager--jump--border' : .1rem * theming.$font-size solid #ddd, 'default--pager--jump--color' : #444, 'default--pager--jump--placeholder--color' : #444, ), 'dark' : ( 'default--pager--disabled-color' : #999, 'default--pager--disabled--non-active--page--background-color' : #333, 'default--pager--disabled--non-active--page--border-color' : #555, 'default--pager--hover--page--background-color' : #18f, 'default--pager--hover--page--border-color' : #444, 'default--pager--hover--page--color' : #eee, 'default--pager--non-active--page--background-color' : #333, 'default--pager--non-active--page--color' : #bdf, 'default--pager--active--page--background-color' : #7bf, 'default--pager--active--page--border-color' : #7bf, 'default--pager--active--page--color' : #000, 'default--pager--active--page--text-shadow' : 0 0 .2rem * theming.$font-size #eee, 'default--pager--indications--color' : #ddd, 'default--pager--jump--background-color' : #333, 'default--pager--jump--border' : .1rem * theming.$font-size solid #ddd, 'default--pager--jump--color' : #eee, 'default--pager--jump--placeholder--color' : #fff ) )
We can implement it that way :
@include pager.init(); @include pager.create();
We can implement it that way :
The only thing relevant for this component in the table is the structure and the class -pager-tbody.
Beware as there are a lot of PHP code here.
-2is the suffix here.
<table class="table suffix-2">
<thead class=table-header>
<th>Test1</th>
<th>Test2</th>
<th>Test3</th>
<th>Test4</th>
<th>Test5</th>
</thead>
<tbody class=-pager-tbody>
code style="color: #000000"> <?php
for ($actualRow = 0; $actualRow < COUNT; ++$actualRow)
{
?>
<?php if ($actualRow > LIMIT - 1) {?>class=pager--hiddencode style="color: #000000"><?php }?> <?php $rowShowed = $actualRow * 5; ?> <td data-label=Test1>Value <?= $rowShowed ?></td> <td data-label=Test2>Value <?= $rowShowed + 1 ?></td> <td data-label=Test3>Value <?= $rowShowed + 2 ?></td> <td data-label=Test4>Value <?= $rowShowed + 3 ?></td> <td data-label=Test5>Value <?= $rowShowed + 4 ?></td> </tr>code style="color: #000000"><?php } </tbody> </table>code style="color: #000000"><?php const PAGE = 1, LIMITS = ['15', '50', '100'], NB_VISIBLE_PAGES = 6, OFFSET = ((PAGE - 1) * LIMIT) + 1; $nbPages = ceil(COUNT / LIMIT); $somePageButtonsWillBeHidden = $nbPages > NB_VISIBLE_PAGES; ?><nav class=pager> <ul class="pager--buttons--container pager-left"> <li id=firstcode style="color: #000000"><?php if (PAGE < 2) {?>class=disabledcode style="color: #000000"><?php } ?><a>Start</a></li> <li id=previouscode style="color: #000000"><?php if (PAGE < 2) {?>class=disabledcode style="color: #000000"><?php } ?><a>ยซ</a></li> </ul> <div id=pager--overflow-container> <ul class="pager--buttons--container pager-centercode style="color: #000000"><?php if ($somePageButtonsWillBeHidden) echo ' pager-center-style' ?> <?php for ($index = 1; $index <= $nbPages; ++$index) { ?><?php if ($index === PAGE) echo ' class=active' ?><a>code style="color: #000000"><?= $index ?></a></li>code style="color: #000000"><?php }?> </ul> </div> <ul class="pager--buttons--container -pager--pages-container">code style="color: #000000"><?php if ($nbPages > NB_VISIBLE_PAGES) { ?><li id=dots><a>...</a></li>code style="color: #000000"><?php ?><li id=jump><input id=jump-input placeholder=# /></li>code style="color: #000000"><?php } if (1 !== $nbPages) { ?>id=nextcode style="color: #000000"><?php if (PAGE == $nbPages) { ?>class=disabledcode style="color: #000000"><?php } ?><a>ยป</a></li> code style="color: #000000"> <?php } if ($nbPages > 1) { ?>id=lastcode style="color: #000000"><?php if (PAGE === $nbPages) {?>class=disabledcode style="color: #000000"><?php }?><a>End</a></li>code style="color: #000000"><?php } ?></ul>code style="color: #000000"><?php $lastShown = OFFSET + (LIMIT - 1); if ($lastShown > COUNT) $lastShown = COUNT; ?><div id=indications class=gray> code style="color: #000000"> <?= OFFSET ?><?= $lastShown ?><span id=count>code style="color: #000000"><?= COUNT ?></span> </div> <div class="select select-container gray"> <button type=button role=select class="select select-value" aria-labelledby=pager--limit> <span id=pager--limit class="select select-value--label">code style="color: #000000"><?= LIMITS[0] ?></span> <span>▼︎</span> </button> <div class="select select-list limit-container--select">code style="color: #000000"><?php foreach (LIMITS as $option) { ?> type=radio role=menuitem id=chk-code style="color: #000000"><?= $option ?>name=select-radio class="select select-item--activator" value=code style="color: #000000"><?= $option ?><?php if ($option === (string) LIMIT) echo ' checked'; ?>for=chk-code style="color: #000000"><?= $option ?>class="select select-item--label">code style="color: #000000"><?= $option ?></label>code style="color: #000000"><?php } ?></div> </div> <span class=pager--by-page>by page</span> </nav>