* @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;
-
- $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;
- }
+ $id = 0;
+
+ $entries = [];
- $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')]
- );
+ $contacts = [];
+
+ 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')
+ ],
+ );
}
/**
}
</script>
<span id="group-list-sidebar-frame">
-<span id="group-list-sidebar-inflated" class="widget inflated fakelink" onclick="openCloseWidget('group-list-sidebar', 'group-list-sidebar-inflated');">
- <h3>{{$title}}</h3>
-</span>
-<div id="group-list-sidebar" class="widget">
-<div id="sidebar-group-header" class="sidebar-widget-header">
- <span class="fakelink" onclick="openCloseWidget('group-list-sidebar', 'group-list-sidebar-inflated');">
+ <span id="group-list-sidebar-inflated" class="widget inflated fakelink" onclick="openCloseWidget('group-list-sidebar', 'group-list-sidebar-inflated');">
<h3>{{$title}}</h3>
</span>
- <a class="group-new-tool pull-right widget-action faded-icon" id="sidebar-new-group" href="{{$new_group_page}}" data-toggle="tooltip" title="{{$create_new_group}}">
- <i class="fa fa-plus" aria-hidden="true"></i>
- </a>
- </div>
- <div id="sidebar-group-list" class="sidebar-widget-list">
- {{* The list of available groups *}}
- <ul id="group-list-sidebar-ul" role="menu">
- {{foreach $groups as $group}}
- {{if $group.id <= $visible_groups}}
- <li class="group-widget-entry group-{{$group.cid}}" id="group-widget-entry-{{$group.id}}" role="menuitem">
- <span class="notify badge pull-right"></span>
- <a href="{{$group.external_url}}" title="{{$group.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
- <img class="group-list-img" src="{{$group.micro}}" alt="{{$group.link_desc}}" />
+ <div id="group-list-sidebar" class="widget">
+ <div id="sidebar-group-header" class="sidebar-widget-header">
+ <span class="fakelink" onclick="openCloseWidget('group-list-sidebar', 'group-list-sidebar-inflated');">
+ <h3>{{$title}}</h3>
+ </span>
+ {{if $groups}}
+ <a class="group-new-tool pull-right widget-action faded-icon" id="sidebar-new-group" href="{{$new_group_page}}" data-toggle="tooltip" title="{{$create_new_group}}">
+ <i class="fa fa-plus" aria-hidden="true"></i>
</a>
- <a class="group-widget-link" id="group-widget-link-{{$group.id}}" href="{{$group.url}}">{{$group.name}}</a>
- </li>
- {{/if}}
+ {{/if}}
+ </div>
+ <div id="sidebar-group-list" class="sidebar-widget-list">
+ {{* The list of available groups *}}
+ <ul id="group-list-sidebar-ul" role="menu">
+ {{foreach $groups as $group}}
+ {{if $group.id <= $visible_groups}}
+ <li class="group-widget-entry group-{{$group.cid}}" id="group-widget-entry-{{$group.id}}" role="menuitem">
+ <span class="notify badge pull-right"></span>
+ <a href="{{$group.external_url}}" title="{{$group.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
+ <img class="group-list-img" src="{{$group.micro}}" alt="{{$group.link_desc}}" />
+ </a>
+ <a class="group-widget-link" id="group-widget-link-{{$group.id}}" href="{{$group.url}}">{{$group.name}}</a>
+ </li>
+ {{/if}}
- {{if $group.id > $visible_groups}}
- <li class="group-widget-entry group-{{$group.cid}}" id="group-widget-entry-extended-{{$group.id}}" role="menuitem" style="display: none;">
- <span class="notify badge pull-right"></span>
- <a href="{{$group.external_url}}" title="{{$group.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
- <img class="group-list-img" src="{{$group.micro}}" alt="{{$group.link_desc}}" />
- </a>
- <a class="group-widget-link" id="group-widget-link-{{$group.id}}" href="{{$group.url}}">{{$group.name}}</a>
- </li>
- {{/if}}
- {{/foreach}}
+ {{if $group.id > $visible_groups}}
+ <li class="group-widget-entry group-{{$group.cid}}" id="group-widget-entry-extended-{{$group.id}}" role="menuitem" style="display: none;">
+ <span class="notify badge pull-right"></span>
+ <a href="{{$group.external_url}}" title="{{$group.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
+ <img class="group-list-img" src="{{$group.micro}}" alt="{{$group.link_desc}}" />
+ </a>
+ <a class="group-widget-link" id="group-widget-link-{{$group.id}}" href="{{$group.url}}">{{$group.name}}</a>
+ </li>
+ {{/if}}
+ {{foreachelse}}
+ <li><a href="{{$new_group_page}}"><i class="fa fa-plus" aria-hidden="true"></i> {{$create_new_group}}</a></li>
+ {{/foreach}}
- {{if $total > $visible_groups }}
- <li onclick="showHideGroupList(); return false;" id="group-widget-collapse" class="group-widget-link fakelink tool">{{$showmore}}</li>
- {{/if}}
- </ul>
-</div>
-</div>
+ {{if $total > $visible_groups }}
+ <li onclick="showHideGroupList(); return false;" id="group-widget-collapse" class="group-widget-link fakelink tool">{{$showmore}}</li>
+ {{/if}}
+ </ul>
+ </div>
+ </div>
</span>
<script>
initWidget('group-list-sidebar', 'group-list-sidebar-inflated');