Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
75.00% covered (warning)
75.00%
3 / 4
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
FromFileLanguage
75.00% covered (warning)
75.00%
3 / 4
0.00% covered (danger)
0.00%
0 / 1
2.06
0.00% covered (danger)
0.00%
0 / 1
 fromContext
75.00% covered (warning)
75.00%
3 / 4
0.00% covered (danger)
0.00%
0 / 1
2.06
1<?php
2namespace Apie\Core\Translator\Enums;
3
4use Apie\Core\Context\ApieContext;
5use Apie\Core\ContextConstants;
6
7enum FromFileLanguage: string
8{
9    case EN = 'en';
10    case NL = 'nl';
11
12    public static function fromContext(ApieContext $apieContext): self
13    {
14        $locale = $apieContext->getContext(ContextConstants::ACCEPT_LOCALE, false) ?? 'en';
15        if (strpos($locale, '_')) {
16            $locale = substr($locale, strpos($locale, '_'));
17        }
18        return FromFileLanguage::tryFrom($locale) ?? self::EN;
19    }
20}