app/Module/IndividualFactsTabModule.php
private function associateFacts(Individual $person): array
    {
        $facts = [];

        /** @var Individual[] $associates */
        $associates = array_merge(
            $person->linkedIndividuals('ASSO'),
            $person->linkedIndividuals('_ASSO'),
            $person->linkedFamilies('ASSO'),
            $person->linkedFamilies('_ASSO')
        );
        foreach ($associates as $associate) {
            foreach ($associate->facts() as $fact) {
                $arec = $fact->attribute('_ASSO');
                if (!$arec) {
                    $arec = $fact->attribute('ASSO');
                }
                if ($arec && trim($arec, '@') === $person->xref()) {
                    // Extract the important details from the fact
                    $factrec = '1 ' . $fact->getTag();
                    if (preg_match('/\n2 DATE .*/', $fact->gedcom(), $match)) {
                        $factrec .= $match[0];
                    }
                    if (preg_match('/\n2 PLAC .*/', $fact->gedcom(), $match)) {
                        $factrec .= $match[0];
                    }
                    if ($associate instanceof Family) {
                        foreach ($associate->spouses() as $spouse) {
                            $factrec .= "\n2 _ASSO @" . $spouse->xref() . '@';
                        }
                    } else {
                        $factrec .= "\n2 _ASSO @" . $associate->xref() . '@';
                    }
                    $facts[] = new Fact($factrec, $associate, 'asso');
                }
            }
        }

        return $facts;
    }
private function associateFacts(Individual $person): array
    {
        $facts = [];

        /** @var Individual[] $associates */
        $associates = array_merge(
            $person->linkedIndividuals('ASSO'),
            $person->linkedIndividuals('_ASSO'),
            $person->linkedFamilies('ASSO'),
            $person->linkedFamilies('_ASSO')
        );
        foreach ($associates as $associate) {
            foreach ($associate->facts() as $fact) {
                $arec = $fact->attribute('_ASSO');
                if (!$arec) {
                    $arec = $fact->attribute('ASSO');
                }
                if ($arec && trim($arec, '@') === $person->xref()) {
                    // Extract the important details from the fact
                    $factrec = '1 ' . $fact->getTag();
                    if (preg_match('/\n2 DATE .*/', $fact->gedcom(), $match)) {
                        $factrec .= $match[0];
                    }
                    if (preg_match('/\n2 PLAC .*/', $fact->gedcom(), $match)) {
                        $factrec .= $match[0];
                    }
                    if ($associate instanceof Family) {
                        foreach ($associate->spouses() as $spouse) {
                            $factrec .= "\n2 _ASSO @" . $spouse->xref() . '@';
                        }
                    } else {
                        $factrec .= "\n2 _ASSO @" . $associate->xref() . '@';
                    }
                    $facts[] = new Fact($factrec, $associate, 'asso');
                }
            }
        }

        return $facts;
    }
private function associateFacts ( Individual $ person ) : array { $ facts = [ ] ; /** @var Individual[] $associates */ $ associates = array_merge ( $ person -> linkedIndividuals ( 'ASSO' ) , $ person -> linkedIndividuals ( '_ASSO' ) , $ person -> linkedFamilies ( 'ASSO' ) , $ person -> linkedFamilies ( '_ASSO' ) ) ; foreach ( $ associates as $ associate ) { foreach ( $ associate -> facts ( ) as $ fact ) { $ arec = $ fact -> attribute ( '_ASSO' ) ; if ( ! $ arec ) { $ arec = $ fact -> attribute ( 'ASSO' ) ; } if ( $ arec && trim ( $ arec , '@' ) === $ person -> xref ( ) ) { // Extract the important details from the fact $ factrec = '1 ' . $ fact -> getTag ( ) ; if ( preg_match ( '/\n2 DATE .*/' , $ fact -> gedcom ( ) , $ match ) ) { $ factrec .= $ match [ 0 ] ; } if ( preg_match ( '/\n2 PLAC .*/' , $ fact -> gedcom ( ) , $ match ) ) { $ factrec .= $ match [ 0 ] ; } if ( $ associate instanceof Family ) { foreach ( $ associate -> spouses ( ) as $ spouse ) { $ factrec .= "\n2 _ASSO @" . $ spouse -> xref ( ) . '@' ; } } else { $ factrec .= "\n2 _ASSO @" . $ associate -> xref ( ) . '@' ; } $ facts [ ] = new Fact ( $ factrec , $ associate , 'asso' ) ; } } } return $ facts ; }
Get the events of associates.

@param Individual $person

@return Fact[]
Get the events of associates .