Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
50.00% covered (danger)
50.00%
3 / 6
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
LayoutPicker
50.00% covered (danger)
50.00%
3 / 6
0.00% covered (danger)
0.00%
0 / 1
4.12
0.00% covered (danger)
0.00%
0 / 1
 pickLayout
50.00% covered (danger)
50.00%
3 / 6
0.00% covered (danger)
0.00%
0 / 1
4.12
1<?php
2namespace Apie\Cms;
3
4use Apie\HtmlBuilders\Enums\LayoutEnum;
5use Psr\Http\Message\ServerRequestInterface;
6
7final class LayoutPicker
8{
9    public function pickLayout(ServerRequestInterface $request): LayoutEnum
10    {
11        $params = $request->getQueryParams();
12        if (is_string($params['layout'] ?? null)) {
13            $enum = LayoutEnum::tryFrom($params['layout']);
14            if ($enum) {
15                return $enum;
16            }
17        }
18
19        return LayoutEnum::LAYOUT;
20    }
21}