From 354e3adc040a2d30b3627fd523b244b5c2672da3 Mon Sep 17 00:00:00 2001 From: Hypolite Petovan Date: Wed, 22 Jan 2025 22:14:38 -0500 Subject: [PATCH] Show Create new Group link in widget even if there's no group membership to display --- src/Content/GroupManager.php | 69 +++++++++++------------ view/templates/widget/group_list.tpl | 84 +++++++++++++++------------- 2 files changed, 76 insertions(+), 77 deletions(-) diff --git a/src/Content/GroupManager.php b/src/Content/GroupManager.php index 61b9d99053..f6762bc28b 100644 --- a/src/Content/GroupManager.php +++ b/src/Content/GroupManager.php @@ -97,52 +97,47 @@ class GroupManager * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @throws \ImagickException */ - public static function widget(int $uid) + public static function widget(int $uid): string { - $o = ''; - //sort by last updated item - $lastitem = true; - - $contacts = self::getList($uid, $lastitem, true, true); - $total = count($contacts); + $contacts = self::getList($uid, true, true, true); + $total = count($contacts); $visibleGroups = 10; - if (DBA::isResult($contacts)) { - $id = 0; + $id = 0; - $entries = []; + $entries = []; - foreach ($contacts as $contact) { - $entry = [ - 'url' => 'contact/' . $contact['id'] . '/conversations', - 'external_url' => Contact::magicLinkByContact($contact), - 'name' => $contact['name'], - 'cid' => $contact['id'], - 'micro' => DI::baseUrl()->remove(Contact::getMicro($contact)), - 'id' => ++$id, - ]; - $entries[] = $entry; - } + $contacts = []; - $tpl = Renderer::getMarkupTemplate('widget/group_list.tpl'); - - $o .= Renderer::replaceMacros( - $tpl, - [ - '$title' => DI::l10n()->t('Groups'), - '$groups' => $entries, - '$link_desc' => DI::l10n()->t('External link to group'), - '$new_group_page' => 'register/', - '$total' => $total, - '$visible_groups' => $visibleGroups, - '$showless' => DI::l10n()->t('show less'), - '$showmore' => DI::l10n()->t('show more'), - '$create_new_group' => DI::l10n()->t('Create new group')] - ); + foreach ($contacts as $contact) { + $entry = [ + 'url' => 'contact/' . $contact['id'] . '/conversations', + 'external_url' => Contact::magicLinkByContact($contact), + 'name' => $contact['name'], + 'cid' => $contact['id'], + 'micro' => DI::baseUrl()->remove(Contact::getMicro($contact)), + 'id' => ++$id, + ]; + $entries[] = $entry; } - return $o; + $tpl = Renderer::getMarkupTemplate('widget/group_list.tpl'); + + return Renderer::replaceMacros( + $tpl, + [ + '$title' => DI::l10n()->t('Groups'), + '$groups' => $entries, + '$link_desc' => DI::l10n()->t('External link to group'), + '$new_group_page' => 'register/', + '$total' => $total, + '$visible_groups' => $visibleGroups, + '$showless' => DI::l10n()->t('show less'), + '$showmore' => DI::l10n()->t('show more'), + '$create_new_group' => DI::l10n()->t('Create new group') + ], + ); } /** diff --git a/view/templates/widget/group_list.tpl b/view/templates/widget/group_list.tpl index 962f477ad4..b42041a7b6 100644 --- a/view/templates/widget/group_list.tpl +++ b/view/templates/widget/group_list.tpl @@ -18,49 +18,53 @@ function showHideGroupList() { } - -

{{$title}}

-
-
-