Passed
Pull Request — master (#1408)
by
unknown
49:03 queued 14:05
created

AbstractAuthorizeGrant   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 25
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
eloc 6
c 0
b 0
f 0
dl 0
loc 25
ccs 5
cts 5
cp 1
rs 10
wmc 5

3 Methods

Rating   Name   Duplication   Size   Complexity  
A makeRedirectUri() 0 5 2
A createAuthorizationRequest() 0 3 1
A getClientRedirectUri() 0 5 2
1
<?php
2
3
/**
4
 * Abstract authorization grant.
5
 *
6
 * @author      Julián Gutiérrez <[email protected]>
7
 * @copyright   Copyright (c) Alex Bilbie
8
 * @license     http://mit-license.org/
9
 *
10
 * @link        https://github.com/thephpleague/oauth2-server
11
 */
12
13
declare(strict_types=1);
14
15
namespace League\OAuth2\Server\Grant;
16
17
use League\OAuth2\Server\RequestTypes\AuthorizationRequest;
18
use League\OAuth2\Server\RequestTypes\AuthorizationRequestInterface;
19
20
use function http_build_query;
21
22
abstract class AbstractAuthorizeGrant extends AbstractGrant
23
{
24
    /**
25
     * @param array<array-key,mixed> $params
0 ignored issues
show
Documentation Bug introduced by
The doc comment array<array-key,mixed> at position 2 could not be parsed: Unknown type name 'array-key' at position 2 in array<array-key,mixed>.
Loading history...
26
     */
27 8
    public function makeRedirectUri(string $uri, array $params = [], string $queryDelimiter = '?'): string
28
    {
29 8
        $uri .= str_contains($uri, $queryDelimiter) ? '&' : $queryDelimiter;
30
31 8
        return $uri . http_build_query($params);
32
    }
33
34 9
    protected function createAuthorizationRequest(): AuthorizationRequestInterface
35
    {
36 9
        return new AuthorizationRequest();
37
    }
38
39
    /**
40
     * Get the client redirect URI.
41
     */
42
    protected function getClientRedirectUri(AuthorizationRequestInterface $authorizationRequest): string
43
    {
44
        return is_array($authorizationRequest->getClient()->getRedirectUri())
45
            ? $authorizationRequest->getClient()->getRedirectUri()[0]
46
            : $authorizationRequest->getClient()->getRedirectUri();
47
    }
48
}
49