Test Failed
Push — master ( 8cc230...986bb1 )
by Robin
10:35
created

SearchClient   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 37
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 3

Test Coverage

Coverage 60%

Importance

Changes 0
Metric Value
wmc 5
lcom 1
cbo 3
dl 0
loc 37
ccs 6
cts 10
cp 0.6
rs 10
c 0
b 0
f 0

5 Methods

Rating   Name   Duplication   Size   Complexity  
A charity() 0 4 1
A event() 0 4 1
A fundraiser() 0 4 1
A inMemory() 0 4 1
A team() 0 4 1
1
<?php
2
3
namespace Konsulting\JustGivingApiSdk\ResourceClients;
4
5
6
use Konsulting\JustGivingApiSdk\ResourceClients\Models\SearchInMemoryRequest;
7
use Konsulting\JustGivingApiSdk\ResourceClients\Models\SearchTeamRequest;
8
9
class SearchClient extends BaseClient
10
{
11
    const DEFAULT_PAGE_SIZE = 50;
12
13
    protected $aliases = [
14
        'charity'    => 'CharitySearch',
15
        'event'      => 'EventSearch',
16
        'fundraiser' => 'FundraiserSearch',
17
        'inMemory'   => 'InMemorySearch',
18
        'team'       => 'TeamSearch',
19
    ];
20
21 1
    public function charity($searchTerms, $pageSize = self::DEFAULT_PAGE_SIZE, $pageNumber = 0)
22
    {
23 1
        return $this->get("charity/search?q=" . urlencode($searchTerms) . "&PageSize=" . $pageSize . "&page=" . $pageNumber);
24
    }
25
26 1
    public function event($searchTerms, $pageSize = self::DEFAULT_PAGE_SIZE, $pageNumber = 0)
27
    {
28 1
        return $this->get("event/search?q=" . urlencode($searchTerms) . "&PageSize=" . $pageSize . "&page=" . $pageNumber);
29
    }
30
31 1
    public function fundraiser($searchTerms, $charityId, $pageSize = self::DEFAULT_PAGE_SIZE, $pageNumber = 0)
32
    {
33 1
        return $this->get("fundraising/search?q=" . urlencode($searchTerms) . "&PageSize=" . $pageSize . "&page=" . $pageNumber . "&charityId=" . $charityId);
34
    }
35
36 1
    public function inMemory(SearchInMemoryRequest $searchRequest, $pageSize = self::DEFAULT_PAGE_SIZE, $pageNumber = 0)
37
    {
38 1
        return $this->get("remember/search?" . http_build_query($searchRequest->getAttributes()) . "&PageSize=" . $pageSize . "&page=" . $pageNumber);
39
    }
40
41
    public function team(SearchTeamRequest $searchRequest, $pageSize = self::DEFAULT_PAGE_SIZE, $pageNumber = 0)
42
    {
43
        return $this->get("team/search?" . http_build_query($searchRequest->getAttributes()) . "&PageSize=" . $pageSize . "&page=" . $pageNumber);
44
    }
45
}
46