$notes * @var Tree $tree */ ?> join('link', static function (JoinClause $join): void { $join->on('l_from', '=', 'i_id'); $join->on('l_file', '=', 'i_file'); }) ->where('l_type', '=', 'NOTE') ->where('l_file', '=', $tree->id()) ->groupBy(['l_to']) ->select(['l_to', new Expression('COUNT(*) AS total')]) ->pluck('total', 'l_to') ->map(static fn ($n) => (int) $n) ->all(); $count_families = DB::table('families') ->join('link', static function (JoinClause $join): void { $join->on('l_from', '=', 'f_id'); $join->on('l_file', '=', 'f_file'); }) ->where('l_type', '=', 'NOTE') ->where('l_file', '=', $tree->id()) ->groupBy(['l_to']) ->select(['l_to', new Expression('COUNT(*) AS total')]) ->pluck('total', 'l_to') ->map(static fn ($n) => (int) $n) ->all(); $count_media = DB::table('media') ->join('link', static function (JoinClause $join): void { $join->on('l_from', '=', 'm_id'); $join->on('l_file', '=', 'm_file'); }) ->where('l_type', '=', 'NOTE') ->where('l_file', '=', $tree->id()) ->groupBy(['l_to']) ->select(['l_to', new Expression('COUNT(*) AS total')]) ->pluck('total', 'l_to') ->map(static fn ($n) => (int) $n) ->all(); $count_sources = DB::table('sources') ->join('link', static function (JoinClause $join): void { $join->on('l_from', '=', 's_id'); $join->on('l_file', '=', 's_file'); }) ->where('l_type', '=', 'NOTE') ->where('l_file', '=', $tree->id()) ->groupBy(['l_to']) ->select(['l_to', new Expression('COUNT(*) AS total')]) ->pluck('total', 'l_to') ->map(static fn ($n) => (int) $n) ->all(); ?> data-columns=" 'html'], ['visible' => array_sum($count_individuals) > 0], ['visible' => array_sum($count_families) > 0], ['visible' => array_sum($count_media) > 0], ['visible' => array_sum($count_sources) > 0], ['visible' => (bool) $tree->getPreference('SHOW_LAST_CHANGE'), 'searchable' => false], ], JSON_THROW_ON_ERROR)) ?>" >
fullName() ?> xref()] ?? 0) ?> xref()] ?? 0) ?> xref()] ?? 0) ?> xref()] ?? 0) ?> $note->lastChangeTimestamp()]) ?>