. */ namespace Fisharebest\Webtrees\Census; use Fisharebest\Webtrees\Date; use Fisharebest\Webtrees\Individual; /** * The number of children who are still living. */ class CensusColumnChildrenLiving extends AbstractCensusColumn implements CensusColumnInterface { /** * Generate the likely value of this census column, based on available information. * * @param Individual $individual * * @return string */ public function generate(Individual $individual) { if ($individual->getSex() !== 'F') { return ''; } $count = 0; foreach ($individual->getSpouseFamilies() as $family) { foreach ($family->getChildren() as $child) { if (Date::compare($child->getBirthDate(), $this->date()) < 0 && $child->getBirthDate() != $child->getDeathDate() && Date::compare($child->getDeathDate(), $this->date()) >= 0) { $count++; } } } return (string) $count; } }