]> git.mxchange.org Git - friendica.git/blob - mod/nogroup.php
Merge pull request #4289 from zeroadam/bugfix-nogroup
[friendica.git] / mod / nogroup.php
1 <?php
2 /**
3  * @file mod/nogroup.php
4  */
5 use Friendica\App;
6 use Friendica\Content\ContactSelector;
7 use Friendica\Database\DBM;
8 use Friendica\Model\Contact;
9 use Friendica\Model\Group;
10
11 function nogroup_init(App $a)
12 {
13         if (! local_user()) {
14                 return;
15         }
16
17         if (! x($a->page, 'aside')) {
18                 $a->page['aside'] = '';
19         }
20
21         $a->page['aside'] .= Group::sidebarWidget('contacts', 'group', 'extended');
22 }
23
24 function nogroup_content(App $a)
25 {
26         if (! local_user()) {
27                 notice(t('Permission denied.') . EOL);
28                 return '';
29         }
30
31         $r = Contact::getUngroupedList(local_user());
32         if (DBM::is_result($r)) {
33                 $a->set_pager_total($r[0]['total']);
34         }
35         $r = Contact::getUngroupedList(local_user(), $a->pager['start'], $a->pager['itemspage']);
36         if (DBM::is_result($r)) {
37                 foreach ($r as $rr) {
38                         $contact_details = Contact::getDetailsByURL($rr['url'], local_user(), $rr);
39
40                         $contacts[] = [
41                                 'img_hover' => t('Visit %s\'s profile [%s]', $contact_details['name'], $rr['url']),
42                                 'edit_hover' => t('Edit contact'),
43                                 'photo_menu' => Contact::photoMenu($rr),
44                                 'id' => $rr['id'],
45                                 'thumb' => proxy_url($contact_details['thumb'], false, PROXY_SIZE_THUMB),
46                                 'name' => $contact_details['name'],
47                                 'username' => $contact_details['name'],
48                                 'details'       => $contact_details['location'],
49                                 'tags'          => $contact_details['keywords'],
50                                 'about'         => $contact_details['about'],
51                                 'itemurl' => (($contact_details['addr'] != "") ? $contact_details['addr'] : $rr['url']),
52                                 'url' => $rr['url'],
53                                 'network' => ContactSelector::networkToName($rr['network'], $rr['url']),
54                         ];
55                 }
56         }
57
58         $tpl = get_markup_template("nogroup-template.tpl");
59         $o = replace_macros(
60                 $tpl,
61                 [
62                 '$header' => t('Contacts who are not members of a group'),
63                 '$contacts' => $contacts,
64                 '$paginate' => paginate($a)]
65         );
66
67         return $o;
68 }