[], 'ungrouped' => []];
$bookmarkGroups = is_array($bookmarkData['groups'] ?? null) ? $bookmarkData['groups'] : [];
$bookmarkUngrouped = is_array($bookmarkData['ungrouped'] ?? null) ? $bookmarkData['ungrouped'] : [];
$currentPath = trim((string) ($bookmarkNav['current_path'] ?? ''));
?>
t('No bookmarks yet'),
'size' => 'compact',
'align' => 'center',
];
require templatePath('partials/app-empty-state.phtml');
?>
'bookmark',
'id' => $bookmarkId,
'sort_order' => (int) ($bookmark['sort_order'] ?? 0),
'bookmark' => $bookmark,
];
}
foreach ($bookmarkGroups as $group) {
$groupId = (int) ($group['id'] ?? 0);
if ($groupId <= 0) {
continue;
}
$bookmarkRootItems[] = [
'type' => 'group',
'id' => $groupId,
'sort_order' => (int) ($group['sort_order'] ?? 0),
'group' => $group,
];
}
usort($bookmarkRootItems, static function (array $a, array $b): int {
$sortCmp = ((int) ($a['sort_order'] ?? 0)) <=> ((int) ($b['sort_order'] ?? 0));
if ($sortCmp !== 0) {
return $sortCmp;
}
$typeCmp = strcmp((string) ($a['type'] ?? ''), (string) ($b['type'] ?? ''));
if ($typeCmp !== 0) {
return $typeCmp;
}
return ((int) ($a['id'] ?? 0)) <=> ((int) ($b['id'] ?? 0));
});
$rootCount = count($bookmarkRootItems);
?>