Elgg\Database\AccessCollections::update PHP Метод

update() публичный Метод

Updates the membership in an access collection.
public update ( integer $collection_id, array $members ) : boolean
$collection_id integer The ID of the collection.
$members array Array of member GUIDs
Результат boolean
    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;
    }