Passed
Push — 2.1 ( c1023f...c6c623 )
by Greg
07:34 queued 53s
created

LanguageEnglishGreatBritain   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 52
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 34
dl 0
loc 52
rs 10
c 1
b 0
f 0
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A locale() 0 3 1
A dateOrder() 0 3 1
1
<?php
2
3
/**
4
 * webtrees: online genealogy
5
 * Copyright (C) 2022 webtrees development team
6
 * This program is free software: you can redistribute it and/or modify
7
 * it under the terms of the GNU General Public License as published by
8
 * the Free Software Foundation, either version 3 of the License, or
9
 * (at your option) any later version.
10
 * This program is distributed in the hope that it will be useful,
11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
 * GNU General Public License for more details.
14
 * You should have received a copy of the GNU General Public License
15
 * along with this program. If not, see <https://www.gnu.org/licenses/>.
16
 */
17
18
declare(strict_types=1);
19
20
namespace Fisharebest\Webtrees\Module;
21
22
use Fisharebest\Localization\Locale\LocaleEnGb;
23
use Fisharebest\Localization\Locale\LocaleInterface;
24
25
/**
26
 * Class LanguageEnglishGreatBritain.
27
 */
28
class LanguageEnglishGreatBritain extends LanguageEnglishUnitedStates
29
{
30
    // British English changes "three-times" to "thrice"
31
    protected const REMOVED = [
32
        '',
33
        ' once removed',
34
        ' twice removed',
35
        ' thrice removed',
36
        ' four times removed',
37
        ' five times removed',
38
        ' six times removed',
39
        ' seven times removed',
40
        ' eight times removed',
41
        ' nine times removed',
42
        ' ten times removed',
43
        ' eleven removed',
44
        ' twelve removed',
45
        ' thirteen removed',
46
        ' fourteen times removed',
47
        ' fifteen times removed',
48
        ' sixteen times removed',
49
        ' seventeen times removed',
50
        ' eighteen times removed',
51
        ' nineteen times removed',
52
        ' twenty times removed',
53
        ' twenty-one times removed',
54
        ' twenty-two times removed',
55
        ' twenty-three times removed',
56
        ' twenty-four times removed',
57
        ' twenty-five times removed',
58
        ' twenty-six times removed',
59
        ' twenty-seven times removed',
60
        ' twenty-eight times removed',
61
        ' twenty-nine times removed',
62
    ];
63
64
    /**
65
     * One of: 'DMY', 'MDY', 'YMD'.
66
     *
67
     * @return string
68
     */
69
    public function dateOrder(): string
70
    {
71
        return 'DMY';
72
    }
73
74
    /**
75
     * @return LocaleInterface
76
     */
77
    public function locale(): LocaleInterface
78
    {
79
        return new LocaleEnGb();
80
    }
81
}
82