1da3cb887Sglarwill<?php 2da3cb887Sglarwill 3da3cb887Sglarwill/** 4da3cb887Sglarwill * webtrees: online genealogy 5d11be702SGreg Roach * Copyright (C) 2023 webtrees development team 6da3cb887Sglarwill * This program is free software: you can redistribute it and/or modify 7da3cb887Sglarwill * it under the terms of the GNU General Public License as published by 8da3cb887Sglarwill * the Free Software Foundation, either version 3 of the License, or 9da3cb887Sglarwill * (at your option) any later version. 10da3cb887Sglarwill * This program is distributed in the hope that it will be useful, 11da3cb887Sglarwill * but WITHOUT ANY WARRANTY; without even the implied warranty of 12da3cb887Sglarwill * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13da3cb887Sglarwill * GNU General Public License for more details. 14da3cb887Sglarwill * You should have received a copy of the GNU General Public License 15da3cb887Sglarwill * along with this program. If not, see <https://www.gnu.org/licenses/>. 16da3cb887Sglarwill */ 17da3cb887Sglarwill 18da3cb887Sglarwilldeclare(strict_types=1); 19da3cb887Sglarwill 20da3cb887Sglarwillnamespace Fisharebest\Webtrees\Census; 21da3cb887Sglarwill 22da3cb887Sglarwilluse Fisharebest\Webtrees\Individual; 23da3cb887Sglarwill 24da3cb887Sglarwill/** 25da3cb887Sglarwill * The individual's sex Male? 26da3cb887Sglarwill */ 27da3cb887Sglarwillclass CensusColumnSexM extends AbstractCensusColumn implements CensusColumnInterface 28da3cb887Sglarwill{ 29*e873f434SGreg Roach protected const string MALE = 'M'; 30da3cb887Sglarwill 31*e873f434SGreg Roach protected const string FEMALE = 'F'; 32da3cb887Sglarwill 33*e873f434SGreg Roach protected const string X = 'X'; 34da3cb887Sglarwill 35da3cb887Sglarwill /** 36da3cb887Sglarwill * Generate the likely value of this census column, based on available information. 37da3cb887Sglarwill * X is the value returned for this column as it is a selection of F column or M 38da3cb887Sglarwill * column. 39da3cb887Sglarwill * 40da3cb887Sglarwill * @param Individual $individual 41da3cb887Sglarwill * @param Individual $head 42da3cb887Sglarwill * 43da3cb887Sglarwill * @return string 44da3cb887Sglarwill */ 45da3cb887Sglarwill public function generate(Individual $individual, Individual $head): string 46da3cb887Sglarwill { 4705babb96SGreg Roach if ($individual->sex() === 'M') { 48da3cb887Sglarwill return static::X; 49da3cb887Sglarwill } 5005babb96SGreg Roach 5105babb96SGreg Roach return ''; 52da3cb887Sglarwill } 53da3cb887Sglarwill} 54