2011-08-03 01:39:35 -04:00
|
|
|
<?php
|
|
|
|
|
2017-04-30 00:07:00 -04:00
|
|
|
use Friendica\App;
|
2018-07-21 08:40:21 -04:00
|
|
|
use Friendica\Database\DBA;
|
2017-12-09 13:45:17 -05:00
|
|
|
use Friendica\Model\Contact;
|
|
|
|
use Friendica\Model\Group;
|
2011-08-03 01:39:35 -04:00
|
|
|
|
2017-12-09 13:42:02 -05:00
|
|
|
function contactgroup_content(App $a)
|
|
|
|
{
|
|
|
|
if (!local_user()) {
|
2011-08-03 01:39:35 -04:00
|
|
|
killme();
|
|
|
|
}
|
|
|
|
|
2018-01-04 19:42:48 -05:00
|
|
|
$change = null;
|
2017-12-09 13:42:02 -05:00
|
|
|
if (($a->argc > 2) && intval($a->argv[1]) && intval($a->argv[2])) {
|
2011-08-03 01:39:35 -04:00
|
|
|
$r = q("SELECT `id` FROM `contact` WHERE `id` = %d AND `uid` = %d and `self` = 0 and `blocked` = 0 AND `pending` = 0 LIMIT 1",
|
|
|
|
intval($a->argv[2]),
|
|
|
|
intval(local_user())
|
|
|
|
);
|
2018-07-21 08:46:04 -04:00
|
|
|
if (DBA::isResult($r)) {
|
2011-08-03 01:39:35 -04:00
|
|
|
$change = intval($a->argv[2]);
|
2017-12-09 13:42:02 -05:00
|
|
|
}
|
2011-08-03 01:39:35 -04:00
|
|
|
}
|
|
|
|
|
2017-12-09 13:42:02 -05:00
|
|
|
if (($a->argc > 1) && (intval($a->argv[1]))) {
|
2011-08-03 01:39:35 -04:00
|
|
|
$r = q("SELECT * FROM `group` WHERE `id` = %d AND `uid` = %d AND `deleted` = 0 LIMIT 1",
|
|
|
|
intval($a->argv[1]),
|
|
|
|
intval(local_user())
|
|
|
|
);
|
2018-07-21 08:46:04 -04:00
|
|
|
if (!DBA::isResult($r)) {
|
2011-08-03 01:39:35 -04:00
|
|
|
killme();
|
|
|
|
}
|
|
|
|
|
|
|
|
$group = $r[0];
|
2017-12-09 13:45:17 -05:00
|
|
|
$members = Contact::getByGroupId($group['id']);
|
2018-01-15 08:05:12 -05:00
|
|
|
$preselected = [];
|
2017-12-09 13:42:02 -05:00
|
|
|
if (count($members)) {
|
|
|
|
foreach ($members as $member) {
|
2011-08-03 01:39:35 -04:00
|
|
|
$preselected[] = $member['id'];
|
2017-12-09 13:42:02 -05:00
|
|
|
}
|
2011-08-03 01:39:35 -04:00
|
|
|
}
|
|
|
|
|
2018-11-30 09:06:22 -05:00
|
|
|
if (!empty($change)) {
|
2017-12-09 13:45:17 -05:00
|
|
|
if (in_array($change, $preselected)) {
|
|
|
|
Group::removeMember($group['id'], $change);
|
|
|
|
} else {
|
|
|
|
Group::addMember($group['id'], $change);
|
2011-08-03 01:39:35 -04:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
killme();
|
2016-05-01 08:24:44 -04:00
|
|
|
}
|