xref: /webtrees/app/Census/Census.php (revision ae75fb67218375df3e8cfc009347474e90b675b2)
140150762SGreg Roach<?php
23976b470SGreg Roach
340150762SGreg Roach/**
440150762SGreg Roach * webtrees: online genealogy
58fcd0d32SGreg Roach * Copyright (C) 2019 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
1540150762SGreg Roach * along with this program. If not, see <http://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     *
3040150762SGreg Roach     * @return CensusPlaceInterface[]
3140150762SGreg Roach     */
328f53f488SRico Sonntag    public static function censusPlaces(string $locale): array
33c1010edaSGreg Roach    {
34*ae75fb67SGreg Roach        switch ($locale) {
35*ae75fb67SGreg Roach            case 'cs':
36*ae75fb67SGreg Roach                return [
3759f2f229SGreg Roach                    new CensusOfCzechRepublic(),
3859f2f229SGreg Roach                    new CensusOfDenmark(),
3959f2f229SGreg Roach                    new CensusOfDeutschland(),
4059f2f229SGreg Roach                    new CensusOfEngland(),
4159f2f229SGreg Roach                    new CensusOfFrance(),
4259f2f229SGreg Roach                    new CensusOfScotland(),
4359f2f229SGreg Roach                    new CensusOfUnitedStates(),
4459f2f229SGreg Roach                    new CensusOfWales(),
4513abd6f3SGreg Roach                ];
46eaf61769SGreg Roach
47eaf61769SGreg Roach            case 'en-AU':
48eaf61769SGreg Roach            case 'en-GB':
49*ae75fb67SGreg Roach                return [
5059f2f229SGreg Roach                    new CensusOfEngland(),
5159f2f229SGreg Roach                    new CensusOfScotland(),
52*ae75fb67SGreg Roach                    new CensusOfWales(),
53*ae75fb67SGreg Roach                    new CensusOfUnitedStates(),
54*ae75fb67SGreg Roach                    new CensusOfCzechRepublic(),
55*ae75fb67SGreg Roach                    new CensusOfDenmark(),
56*ae75fb67SGreg Roach                    new CensusOfDeutschland(),
57*ae75fb67SGreg Roach                    new CensusOfFrance(),
58c1010edaSGreg Roach                ];
59eaf61769SGreg Roach
60eaf61769SGreg Roach            case 'en-US':
61*ae75fb67SGreg Roach                return [
62*ae75fb67SGreg Roach                    new CensusOfUnitedStates(),
63*ae75fb67SGreg Roach                    new CensusOfCzechRepublic(),
64*ae75fb67SGreg Roach                    new CensusOfDenmark(),
65*ae75fb67SGreg Roach                    new CensusOfDeutschland(),
66*ae75fb67SGreg Roach                    new CensusOfEngland(),
67*ae75fb67SGreg Roach                    new CensusOfFrance(),
68*ae75fb67SGreg Roach                    new CensusOfScotland(),
69*ae75fb67SGreg Roach                    new CensusOfWales(),
70*ae75fb67SGreg Roach                ];
71eaf61769SGreg Roach
72eaf61769SGreg Roach            case 'fr':
73eaf61769SGreg Roach            case 'fr-CA':
74*ae75fb67SGreg Roach                return [
75*ae75fb67SGreg Roach                    new CensusOfFrance(),
76*ae75fb67SGreg Roach                    new CensusOfCzechRepublic(),
77*ae75fb67SGreg Roach                    new CensusOfDenmark(),
78*ae75fb67SGreg Roach                    new CensusOfDeutschland(),
79*ae75fb67SGreg Roach                    new CensusOfEngland(),
80*ae75fb67SGreg Roach                    new CensusOfScotland(),
81*ae75fb67SGreg Roach                    new CensusOfUnitedStates(),
82*ae75fb67SGreg Roach                    new CensusOfWales(),
83*ae75fb67SGreg Roach                ];
84eaf61769SGreg Roach                break;
85eaf61769SGreg Roach
86eaf61769SGreg Roach            case 'da':
87*ae75fb67SGreg Roach                return [
88*ae75fb67SGreg Roach                    new CensusOfDenmark(),
89*ae75fb67SGreg Roach                    new CensusOfDeutschland(),
90*ae75fb67SGreg Roach                    new CensusOfCzechRepublic(),
91*ae75fb67SGreg Roach                    new CensusOfEngland(),
92*ae75fb67SGreg Roach                    new CensusOfFrance(),
93*ae75fb67SGreg Roach                    new CensusOfScotland(),
94*ae75fb67SGreg Roach                    new CensusOfUnitedStates(),
95*ae75fb67SGreg Roach                    new CensusOfWales(),
96*ae75fb67SGreg Roach                ];
97eaf61769SGreg Roach
98eaf61769SGreg Roach            case 'de':
99*ae75fb67SGreg Roach                return [
100*ae75fb67SGreg Roach                    new CensusOfDeutschland(),
101*ae75fb67SGreg Roach                    new CensusOfCzechRepublic(),
102*ae75fb67SGreg Roach                    new CensusOfDenmark(),
103*ae75fb67SGreg Roach                    new CensusOfEngland(),
104*ae75fb67SGreg Roach                    new CensusOfFrance(),
105*ae75fb67SGreg Roach                    new CensusOfScotland(),
106*ae75fb67SGreg Roach                    new CensusOfUnitedStates(),
107*ae75fb67SGreg Roach                    new CensusOfWales(),
108*ae75fb67SGreg Roach                ];
109eaf61769SGreg Roach
110eaf61769SGreg Roach            default:
111*ae75fb67SGreg Roach                return [
112*ae75fb67SGreg Roach                    new CensusOfUnitedStates(),
113*ae75fb67SGreg Roach                    new CensusOfEngland(),
114*ae75fb67SGreg Roach                    new CensusOfScotland(),
115*ae75fb67SGreg Roach                    new CensusOfWales(),
116*ae75fb67SGreg Roach                    new CensusOfDeutschland(),
117*ae75fb67SGreg Roach                    new CensusOfFrance(),
118*ae75fb67SGreg Roach                    new CensusOfCzechRepublic(),
119*ae75fb67SGreg Roach                    new CensusOfDenmark(),
120*ae75fb67SGreg Roach                ];
121eaf61769SGreg Roach        }
12240150762SGreg Roach    }
12340150762SGreg Roach}
124