UrlSliderHelper   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 31
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 3
eloc 4
c 1
b 0
f 0
dl 0
loc 31
rs 10

3 Methods

Rating   Name   Duplication   Size   Complexity  
A nextPageUrl() 0 3 1
A toPageUrl() 0 3 1
A previousPageUrl() 0 3 1
1
<?php
2
3
namespace Itstructure\GridView\Helpers;
4
5
use Illuminate\Http\Request;
6
use Illuminate\Pagination\AbstractPaginator as Paginator;
7
8
/**
9
 * Class UrlSliderHelper
10
 * @package Itstructure\GridView\Helpers
11
 */
12
class UrlSliderHelper
13
{
14
    /**
15
     * @param Request $request
16
     * @param Paginator $paginator
17
     * @return string
18
     */
19
    public static function previousPageUrl(Request $request, Paginator $paginator): string
20
    {
21
        return static::toPageUrl($request, $paginator, $paginator->currentPage() - 1);
22
    }
23
24
    /**
25
     * @param Request $request
26
     * @param Paginator $paginator
27
     * @return string
28
     */
29
    public static function nextPageUrl(Request $request, Paginator $paginator): string
30
    {
31
        return static::toPageUrl($request, $paginator, $paginator->currentPage() + 1);
32
    }
33
34
    /**
35
     * @param Request $request
36
     * @param Paginator $paginator
37
     * @param int $page
38
     * @return string
39
     */
40
    public static function toPageUrl(Request $request, Paginator $paginator, int $page = 1): string
41
    {
42
        return $request->fullUrlWithQuery([$paginator->getPageName() => $page]);
43
    }
44
}
45