Issues (58)

src/Grant/AbstractAuthorizeGrant.php (1 issue)

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\Entities\ClientEntityInterface;
18
use League\OAuth2\Server\RequestTypes\AuthorizationRequest;
19
use League\OAuth2\Server\RequestTypes\AuthorizationRequestInterface;
20
21
use function http_build_query;
22
23
abstract class AbstractAuthorizeGrant extends AbstractGrant
24
{
25
    /**
26
     * @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...
27
     */
28 23
    public function makeRedirectUri(string $uri, array $params = [], string $queryDelimiter = '?'): string
29
    {
30 23
        $uri .= str_contains($uri, $queryDelimiter) ? '&' : $queryDelimiter;
31
32 23
        return $uri . http_build_query($params);
33
    }
34
35 9
    protected function createAuthorizationRequest(): AuthorizationRequestInterface
36
    {
37 9
        return new AuthorizationRequest();
38
    }
39
40
    /**
41
     * Get the client redirect URI.
42
     */
43 14
    protected function getClientRedirectUri(ClientEntityInterface $client): string
44
    {
45 14
        return is_array($client->getRedirectUri())
46 1
            ? $client->getRedirectUri()[0]
47 14
            : $client->getRedirectUri();
48
    }
49
}
50