mirror of
https://github.com/friendica/friendica
synced 2025-01-27 15:39:47 +00:00
Show Create new Group link in widget even if there's no group membership to display
This commit is contained in:
parent
c426b27287
commit
354e3adc04
2 changed files with 76 additions and 77 deletions
|
@ -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')
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -18,49 +18,53 @@ function showHideGroupList() {
|
|||
}
|
||||
</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 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>
|
||||
{{/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}}
|
||||
{{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>
|
||||
<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 $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');
|
||||
|
|
Loading…
Add table
Reference in a new issue