function update($collection_id, $members)
{
$acl = $this->get($collection_id);
if (!$acl) {
return false;
}
$members = is_array($members) ? $members : array();
$cur_members = $this->getMembers($collection_id, true);
$cur_members = is_array($cur_members) ? $cur_members : array();
$remove_members = array_diff($cur_members, $members);
$add_members = array_diff($members, $cur_members);
$result = true;
foreach ($add_members as $guid) {
$result = $result && $this->addUser($guid, $collection_id);
}
foreach ($remove_members as $guid) {
$result = $result && $this->removeUser($guid, $collection_id);
}
return $result;
}