]> git.mxchange.org Git - friendica.git/blob - mod/contactgroup.php
887cf4dbaade8adc6e5b99a318b53e6d4f4d7dc3
[friendica.git] / mod / contactgroup.php
1 <?php
2
3 use Friendica\App;
4 use Friendica\Database\DBM;
5
6 require_once('include/group.php');
7 use Friendica\Model\Contact;
8 use Friendica\Model\Group;
9
10 function contactgroup_content(App $a)
11 {
12         if (!local_user()) {
13                 killme();
14         }
15
16         if (($a->argc > 2) && intval($a->argv[1]) && intval($a->argv[2])) {
17                 $r = q("SELECT `id` FROM `contact` WHERE `id` = %d AND `uid` = %d and `self` = 0 and `blocked` = 0 AND `pending` = 0 LIMIT 1",
18                         intval($a->argv[2]),
19                         intval(local_user())
20                 );
21                 if (DBM::is_result($r)) {
22                         $change = intval($a->argv[2]);
23                 }
24         }
25
26         if (($a->argc > 1) && (intval($a->argv[1]))) {
27                 $r = q("SELECT * FROM `group` WHERE `id` = %d AND `uid` = %d AND `deleted` = 0 LIMIT 1",
28                         intval($a->argv[1]),
29                         intval(local_user())
30                 );
31                 if (!DBM::is_result($r)) {
32                         killme();
33                 }
34
35                 $group = $r[0];
36                 $members = Contact::getByGroupId($group['id']);
37                 $preselected = array();
38                 if (count($members)) {
39                         foreach ($members as $member) {
40                                 $preselected[] = $member['id'];
41                         }
42                 }
43
44                 if ($change) {
45                         if (in_array($change, $preselected)) {
46                                 Group::removeMember($group['id'], $change);
47                         } else {
48                                 Group::addMember($group['id'], $change);
49                         }
50                 }
51         }
52
53         killme();
54 }