xref: /webtrees/app/Census/Census.php (revision d11be7027e34e3121be11cc025421873364403f9)
140150762SGreg Roach<?php
23976b470SGreg Roach
340150762SGreg Roach/**
440150762SGreg Roach * webtrees: online genealogy
5*d11be702SGreg Roach * Copyright (C) 2023 webtrees development team
640150762SGreg Roach * This program is free software: you can redistribute it and/or modify
740150762SGreg Roach * it under the terms of the GNU General Public License as published by
840150762SGreg Roach * the Free Software Foundation, either version 3 of the License, or
940150762SGreg Roach * (at your option) any later version.
1040150762SGreg Roach * This program is distributed in the hope that it will be useful,
1140150762SGreg Roach * but WITHOUT ANY WARRANTY; without even the implied warranty of
1240150762SGreg Roach * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1340150762SGreg Roach * GNU General Public License for more details.
1440150762SGreg Roach * You should have received a copy of the GNU General Public License
1589f7189bSGreg Roach * along with this program. If not, see <https://www.gnu.org/licenses/>.
1640150762SGreg Roach */
17fcfa147eSGreg Roach
18e7f56f2aSGreg Roachdeclare(strict_types=1);
1915d603e7SGreg Roach
2040150762SGreg Roachnamespace Fisharebest\Webtrees\Census;
2140150762SGreg Roach
2240150762SGreg Roach/**
2340150762SGreg Roach * Definitions for a census
2440150762SGreg Roach */
25c1010edaSGreg Roachclass Census
26c1010edaSGreg Roach{
2740150762SGreg Roach    /**
28eaf61769SGreg Roach     * @param string $locale
29eaf61769SGreg Roach     *
3009482a55SGreg Roach     * @return array<CensusPlaceInterface>
3140150762SGreg Roach     */
328f53f488SRico Sonntag    public static function censusPlaces(string $locale): array
33c1010edaSGreg Roach    {
34ae75fb67SGreg Roach        switch ($locale) {
35ae75fb67SGreg Roach            case 'cs':
36ae75fb67SGreg Roach                return [
3759f2f229SGreg Roach                    new CensusOfCzechRepublic(),
38c18c4744SGreg Roach                    new CensusOfSlovakia(),
3959f2f229SGreg Roach                    new CensusOfDenmark(),
4059f2f229SGreg Roach                    new CensusOfDeutschland(),
4159f2f229SGreg Roach                    new CensusOfEngland(),
4259f2f229SGreg Roach                    new CensusOfFrance(),
4359f2f229SGreg Roach                    new CensusOfScotland(),
4459f2f229SGreg Roach                    new CensusOfUnitedStates(),
456de2fb6bSKirk Gartside                    new CensusOfRhodeIsland(),
4659f2f229SGreg Roach                    new CensusOfWales(),
4753a83c54Sglarwill                    new CensusOfCanada(),
4813abd6f3SGreg Roach                ];
49eaf61769SGreg Roach
50af7ed6cbSGreg Roach            case 'da':
51af7ed6cbSGreg Roach                return [
52af7ed6cbSGreg Roach                    new CensusOfDenmark(),
53af7ed6cbSGreg Roach                    new CensusOfDeutschland(),
54af7ed6cbSGreg Roach                    new CensusOfCzechRepublic(),
55af7ed6cbSGreg Roach                    new CensusOfEngland(),
56af7ed6cbSGreg Roach                    new CensusOfFrance(),
57af7ed6cbSGreg Roach                    new CensusOfScotland(),
58af7ed6cbSGreg Roach                    new CensusOfSlovakia(),
59af7ed6cbSGreg Roach                    new CensusOfUnitedStates(),
606de2fb6bSKirk Gartside                    new CensusOfRhodeIsland(),
61af7ed6cbSGreg Roach                    new CensusOfWales(),
6253a83c54Sglarwill                    new CensusOfCanada(),
63af7ed6cbSGreg Roach                ];
64af7ed6cbSGreg Roach
65af7ed6cbSGreg Roach            case 'de':
66af7ed6cbSGreg Roach                return [
67af7ed6cbSGreg Roach                    new CensusOfDeutschland(),
68af7ed6cbSGreg Roach                    new CensusOfCzechRepublic(),
69af7ed6cbSGreg Roach                    new CensusOfDenmark(),
70af7ed6cbSGreg Roach                    new CensusOfEngland(),
71af7ed6cbSGreg Roach                    new CensusOfFrance(),
72af7ed6cbSGreg Roach                    new CensusOfScotland(),
73af7ed6cbSGreg Roach                    new CensusOfSlovakia(),
74af7ed6cbSGreg Roach                    new CensusOfUnitedStates(),
756de2fb6bSKirk Gartside                    new CensusOfRhodeIsland(),
76af7ed6cbSGreg Roach                    new CensusOfWales(),
7753a83c54Sglarwill                    new CensusOfCanada(),
78af7ed6cbSGreg Roach                ];
79af7ed6cbSGreg Roach
80eaf61769SGreg Roach            case 'en-AU':
81eaf61769SGreg Roach            case 'en-GB':
82ae75fb67SGreg Roach                return [
8359f2f229SGreg Roach                    new CensusOfEngland(),
8459f2f229SGreg Roach                    new CensusOfScotland(),
85ae75fb67SGreg Roach                    new CensusOfWales(),
8653a83c54Sglarwill                    new CensusOfCanada(),
87ae75fb67SGreg Roach                    new CensusOfUnitedStates(),
886de2fb6bSKirk Gartside                    new CensusOfRhodeIsland(),
89ae75fb67SGreg Roach                    new CensusOfCzechRepublic(),
90ae75fb67SGreg Roach                    new CensusOfDenmark(),
91ae75fb67SGreg Roach                    new CensusOfDeutschland(),
92ae75fb67SGreg Roach                    new CensusOfFrance(),
93c18c4744SGreg Roach                    new CensusOfSlovakia(),
94c1010edaSGreg Roach                ];
95eaf61769SGreg Roach
96eaf61769SGreg Roach            case 'en-US':
97ae75fb67SGreg Roach                return [
98ae75fb67SGreg Roach                    new CensusOfUnitedStates(),
996de2fb6bSKirk Gartside                    new CensusOfRhodeIsland(),
10053a83c54Sglarwill                    new CensusOfCanada(),
101ae75fb67SGreg Roach                    new CensusOfCzechRepublic(),
102ae75fb67SGreg Roach                    new CensusOfDenmark(),
103ae75fb67SGreg Roach                    new CensusOfDeutschland(),
104ae75fb67SGreg Roach                    new CensusOfEngland(),
105ae75fb67SGreg Roach                    new CensusOfFrance(),
106ae75fb67SGreg Roach                    new CensusOfScotland(),
107c18c4744SGreg Roach                    new CensusOfSlovakia(),
108ae75fb67SGreg Roach                    new CensusOfWales(),
109ae75fb67SGreg Roach                ];
110eaf61769SGreg Roach
111eaf61769SGreg Roach            case 'fr':
11253a83c54Sglarwill                return [
11353a83c54Sglarwill                    new CensusOfFrance(),
11453a83c54Sglarwill                    new CensusOfCanada(),
11553a83c54Sglarwill                    new CensusOfCzechRepublic(),
11653a83c54Sglarwill                    new CensusOfDenmark(),
11753a83c54Sglarwill                    new CensusOfDeutschland(),
11853a83c54Sglarwill                    new CensusOfEngland(),
11953a83c54Sglarwill                    new CensusOfScotland(),
12053a83c54Sglarwill                    new CensusOfSlovakia(),
12153a83c54Sglarwill                    new CensusOfUnitedStates(),
1226de2fb6bSKirk Gartside                    new CensusOfRhodeIsland(),
12353a83c54Sglarwill                    new CensusOfWales(),
12453a83c54Sglarwill                ];
12553a83c54Sglarwill
126eaf61769SGreg Roach            case 'fr-CA':
127ae75fb67SGreg Roach                return [
12853a83c54Sglarwill                    new CensusOfCanada(),
129ae75fb67SGreg Roach                    new CensusOfFrance(),
130ae75fb67SGreg Roach                    new CensusOfCzechRepublic(),
131ae75fb67SGreg Roach                    new CensusOfDenmark(),
132ae75fb67SGreg Roach                    new CensusOfDeutschland(),
133ae75fb67SGreg Roach                    new CensusOfEngland(),
134ae75fb67SGreg Roach                    new CensusOfScotland(),
135c18c4744SGreg Roach                    new CensusOfSlovakia(),
136ae75fb67SGreg Roach                    new CensusOfUnitedStates(),
1376de2fb6bSKirk Gartside                    new CensusOfRhodeIsland(),
138ae75fb67SGreg Roach                    new CensusOfWales(),
139ae75fb67SGreg Roach                ];
140eaf61769SGreg Roach
1412ad83e80SGreg Roach            case 'sk':
1422ad83e80SGreg Roach                return [
1432ad83e80SGreg Roach                    new CensusOfSlovakia(),
1442ad83e80SGreg Roach                    new CensusOfCzechRepublic(),
1452ad83e80SGreg Roach                    new CensusOfDenmark(),
1462ad83e80SGreg Roach                    new CensusOfDeutschland(),
1472ad83e80SGreg Roach                    new CensusOfEngland(),
1482ad83e80SGreg Roach                    new CensusOfFrance(),
1492ad83e80SGreg Roach                    new CensusOfScotland(),
1502ad83e80SGreg Roach                    new CensusOfUnitedStates(),
1516de2fb6bSKirk Gartside                    new CensusOfRhodeIsland(),
1522ad83e80SGreg Roach                    new CensusOfWales(),
15353a83c54Sglarwill                    new CensusOfCanada(),
1542ad83e80SGreg Roach                ];
1552ad83e80SGreg Roach
156eaf61769SGreg Roach            default:
157ae75fb67SGreg Roach                return [
158ae75fb67SGreg Roach                    new CensusOfUnitedStates(),
1596de2fb6bSKirk Gartside                    new CensusOfRhodeIsland(),
160ae75fb67SGreg Roach                    new CensusOfEngland(),
161ae75fb67SGreg Roach                    new CensusOfScotland(),
162ae75fb67SGreg Roach                    new CensusOfWales(),
163ae75fb67SGreg Roach                    new CensusOfDeutschland(),
164ae75fb67SGreg Roach                    new CensusOfFrance(),
165ae75fb67SGreg Roach                    new CensusOfCzechRepublic(),
166c18c4744SGreg Roach                    new CensusOfSlovakia(),
167ae75fb67SGreg Roach                    new CensusOfDenmark(),
16853a83c54Sglarwill                    new CensusOfCanada(),
169ae75fb67SGreg Roach                ];
170eaf61769SGreg Roach        }
17140150762SGreg Roach    }
17240150762SGreg Roach}
173