forked from extern/egroupware
allow to identify real changes
This commit is contained in:
parent
7f662f8f70
commit
c579347ad1
@ -890,6 +890,7 @@ class Accounts
|
||||
*
|
||||
* @param array $groups array with gidnumbers
|
||||
* @param int $account_id uidnumber
|
||||
* @return boolean true: membership changed, false: no change necessary
|
||||
*/
|
||||
function set_memberships($groups,$account_id)
|
||||
{
|
||||
@ -897,17 +898,19 @@ class Accounts
|
||||
{
|
||||
$account_id = $this->name2id($account_id);
|
||||
}
|
||||
if (($old_memberships = $this->memberships($account_id, true)) != $groups)
|
||||
if (($old_memberships = $this->memberships($account_id, true)) == $groups)
|
||||
{
|
||||
$this->backend->set_memberships($groups, $account_id);
|
||||
|
||||
if (!$old_memberships) $old_memberships = array();
|
||||
self::cache_invalidate(array_unique(array_merge(
|
||||
array($account_id),
|
||||
array_diff($old_memberships, $groups),
|
||||
array_diff($groups, $old_memberships)
|
||||
)));
|
||||
return false; // nothing changed
|
||||
}
|
||||
$this->backend->set_memberships($groups, $account_id);
|
||||
|
||||
if (!$old_memberships) $old_memberships = array();
|
||||
self::cache_invalidate(array_unique(array_merge(
|
||||
array($account_id),
|
||||
array_diff($old_memberships, $groups),
|
||||
array_diff($groups, $old_memberships)
|
||||
)));
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -348,7 +348,7 @@ class Acl
|
||||
* @param int $account_id account id
|
||||
* @param int $rights rights
|
||||
* @param boolean $invalidate_session =true false: do NOT invalidate session
|
||||
* @return boolean allways true
|
||||
* @return int number of affected rows: 0: no change, 1: acl changed
|
||||
*/
|
||||
function add_repository($app, $location, $account_id, $rights, $invalidate_session=true)
|
||||
{
|
||||
@ -366,7 +366,7 @@ class Acl
|
||||
{
|
||||
$GLOBALS['egw']->invalidate_session_cache();
|
||||
}
|
||||
return True;
|
||||
return $this->db->affected_rows();
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user