Passed
Push — master ( 3f12a7...90c355 )
by Mattia
05:24
created

IsometricAvatarController::serveUsername()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 8
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 4
nc 1
nop 3
dl 0
loc 8
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace App\Http\Controllers\Api;
6
7
use Illuminate\Http\Request;
8
use Illuminate\Http\Response;
9
10
class IsometricAvatarController extends BaseApiController
11
{
12
    /**
13
     * Serve isometric avatar.
14
     *
15
     * @param \Illuminate\Http\Request
16
     * @param string $uuidOrName User UUID or Username
17
     * @param int    $size
18
     *
19
     * @throws \Throwable
20
     *
21
     * @return \Illuminate\Http\Response
22
     */
23
    public function serveUuid(Request $request, $uuidOrName, $size = 0): Response
24
    {
25
        $size = (int) $size;
26
27
        $this->minepic->initialize($uuidOrName);
28
        $this->minepic->updateStats();
29
30
        return $this->pngResponse((string) $this->minepic->isometricAvatarCurrentUser($size));
31
    }
32
33
    /**
34
     * @param Request $request
35
     * @param string  $username
36
     * @param int     $size
37
     *
38
     * @throws \Throwable
39
     *
40
     * @return Response
41
     */
42
    public function serveUsername(Request $request, string $username, $size = 0): Response
43
    {
44
        $size = (int) $size;
45
46
        $this->minepic->initialize($username);
47
        $this->minepic->updateStats();
48
49
        return $this->pngResponse((string) $this->minepic->isometricAvatarCurrentUser($size));
50
    }
51
}
52