What are the significant elements of this page?
The layout will need them to generate URLs for charts and reports.

@param Family $family

@return stdClass
18767
private function significant(Family $family): stdClass
    {
        $significant = (object) [
            'family'     => $family,
            'individual' => null,
            'surname'    => '',
        ];

        foreach ($family->spouses()->merge($family->children()) as $individual) {
            $significant->individual = $individual;
            [$significant->surname] = explode(',', $individual->sortName());
            break;
        }

        return $significant;
    }
608323
public function findByPrimaryKey(
        FamilyInterface $family,
        $reference,
        $partialLoad = false
    ) {
        $identifierColumn = $this->getPkColumn($family);

        return $this->findByIdentifierColumn($family, $identifierColumn, $reference, $partialLoad);
    }
452389
public function getCInitializer($family)
    {
        if(!array_key_exists($family, $this->initializersC))
        {
            throw new CoreException('Инициализатор простых(C) типов пакета '.$family.' не найдена в медиаторе!');
        }

        return $this->initializersC[$family];
    }
1171852
public function getFamily(): FamilyInterface
    {
        $familyCode = $this->getConfiguration()->getOption('family');
        if (null === $familyCode) {
            throw new UnexpectedValueException(
                "Missing 'family' configuration option for {$this->getConfiguration()->getCode()}"
            );
        }

        return $this->familyRegistry->getFamily($familyCode);
    }
260527
public function getAMapper($family)
    {
        if(!array_key_exists($family, $this->mappersA))
        {
            throw new ExtractorException('Маппер агрегатных(A) типов пакета '.$family.' не найдена в медиаторе!');
        }

        return $this->mappersA[$family];
    }
443310
public function getByParent(FamilyInterface $family)
    {
        $families = [];
        foreach ($this->families as $subFamily) {
            if ($subFamily->getParent() && $subFamily->getParent()->getCode() === $family->getCode()) {
                $families[$subFamily->getCode()] = $subFamily;
            }
        }

        return $families;
    }
510064
public function inspect($artefact = 'all', $family = 'all')
    {
        $report = false;

        if($artefact === 'all' and $family === 'all')
        {
            foreach($this->cleaners as $cleaner)
            {
                $report = ($report or $cleaner->inspect());
            }
        }
        elseif($artefact === 'all' and $family !== 'all')
        {
            if(array_key_exists($family, $this->cleaner_by_family))
            {
                foreach($this->cleaner_by_family[$family] as $cleaner)
                {
                    $report = ($report or $cleaner->inspect());
                }
            }
            else
            {
                $this->consoleOutput->writeln('Чистильщиков для пакета '.$family.' не найдено в медиаторе!');
            }
        }
        elseif($artefact !== 'all' and $family === 'all')
        {
            if(array_key_exists($artefact, $this->cleaner_by_art))
            {
                foreach($this->cleaner_by_art[$artefact] as $cleaner)
                {
                    $report = ($report or $cleaner->inspect());
                }
            }
            else
            {
                $this->consoleOutput->writeln('Чистильщиков для артефактов '.$artefact.' не найдено в медиаторе!');
            }
        }
        elseif($artefact !== 'all' and $family !== 'all')
        {
            $cleaner = $this->getCleaner($artefact, $family);

            if($cleaner)
            {
                $report = ($report or $cleaner->inspect());
            }
        }

        return $report;
    }
1369367
private function descendantsFamilies(Tree $tree, Collection $families): ResponseInterface
    {
        $this->layout = 'layouts/ajax';

        return $this->viewResponse('lists/families-table', [
            'families' => $families,
            'tree'     => $tree,
        ]);
    }
763891
public function getFamilies(string $resourceClass): array
    {
        $matchingFamilies = [];
        foreach ($this->familyRegistry->getFamilies() as $family) {
            if (ltrim($family->getDataClass(), '\\') === ltrim($resourceClass, '\\')) {
                $matchingFamilies[] = $family;
            }
        }

        return $matchingFamilies;
    }
688822
public function getAInitializer($family)
    {
        if(!array_key_exists($family, $this->initializersA))
        {
            throw new CoreException('Инициализатор агрегатных(A) типов пакета '.$family.' не найдена в медиаторе!');
        }

        return $this->initializersA[$family];
    }
328601
public function removeFamilyPermission(FamilyPermission $familyPermission)
    {
        $this->familyPermissions->removeElement($familyPermission);
        $familyPermission->setUser(null);

        return $this;
    }
134989
public function familySearchAction(Request $request, FamilyInterface $family)
    {
        $m = __METHOD__.' is deprecated, consider using the '.FamilySearchAction::class.' action/service instead';
        @trigger_error($m, E_USER_DEPRECATED);

        return $this->familySearchAction->__invoke($request, $family);
    }
182879
public function getSpouseFamilyLabel(Family $family): string
    {
        $spouse = $family->spouse($this);
        if ($spouse) {
            /* I18N: %s is the spouse name */
            return I18N::translate('Family with %s', $spouse->fullName());
        }

        return $family->fullName();
    }
1358058
protected function getFamilyConfig($family)
    {
        if (!isset($this->config[$family])) {
            throw new \InvalidArgumentException(
                sprintf('Undefined measure family "%s"', $family)
            );
        }

        return $this->config[$family];
    }
548753
public function getFamily(string $resourceClass): FamilyInterface
    {
        $matchingFamilies = $this->getFamilies($resourceClass);

        if (1 === \count($matchingFamilies)) {
            return reset($matchingFamilies);
        }

        throw new \LogicException("Cannot resolve family for class '{$resourceClass}'");
    }
849025
private function topTenFamilyQuery(int $total): array
    {
        return DB::table('families')
            ->where('f_file', '=', $this->tree->id())
            ->orderBy('f_numchil', 'DESC')
            ->limit($total)
            ->get()
            ->map(Family::rowMapper())
            ->filter(GedcomRecord::accessFilter())
            ->map(static function (Family $family): array {
                return [
                    'family' => $family,
                    'count'  => $family->numberOfChildren(),
                ];
            })
            ->all();
    }
684840
public function getChildFamilyLabel(Family $family): string
    {
        if (preg_match('/\n1 FAMC @' . $family->xref() . '@(?:\n[2-9].*)*\n2 PEDI (.+)/', $this->gedcom(), $match)) {
            // A specified pedigree
            return GedcomCodePedi::getChildFamilyLabel($match[1]);
        }

        // Default (birth) pedigree
        return GedcomCodePedi::getChildFamilyLabel('');
    }