mirror of
https://github.com/EGroupware/egroupware.git
synced 2025-01-03 04:29:28 +01:00
Calendar: When moving an event reset status of non-users according to event owner's preference instead of always resetting
This commit is contained in:
parent
5c1c31e2a5
commit
da68b83a07
@ -3163,34 +3163,37 @@ class calendar_boupdate extends calendar_bo
|
|||||||
foreach((array)$event['participants'] as $uid => $status)
|
foreach((array)$event['participants'] as $uid => $status)
|
||||||
{
|
{
|
||||||
$q = $r = null;
|
$q = $r = null;
|
||||||
calendar_so::split_status($status,$q,$r);
|
calendar_so::split_status($status, $q, $r);
|
||||||
if($uid == $this->user || $status == 'U')
|
if($uid == $this->user || $status == 'U')
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Just user accounts
|
if(is_int($uid))
|
||||||
if (is_int($uid))
|
|
||||||
{
|
{
|
||||||
|
// Just user accounts
|
||||||
$preferences = new Api\Preferences($uid);
|
$preferences = new Api\Preferences($uid);
|
||||||
$part_prefs = $preferences->read_repository();
|
|
||||||
switch ($part_prefs['calendar']['reset_stati'])
|
|
||||||
{
|
|
||||||
case 'no':
|
|
||||||
break;
|
|
||||||
case 'startday':
|
|
||||||
if ($sameday) break;
|
|
||||||
default:
|
|
||||||
$status_reset = true;
|
|
||||||
$event['participants'][$uid] = calendar_so::combine_status('U',$q,$r);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
// All other participant types
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$status_reset = true;
|
// For non-users, use the owner's preference
|
||||||
$event['participants'][$uid] = calendar_so::combine_status('U',$q,$r);
|
$preferences = new Api\Preferences($event['owner']);
|
||||||
}
|
}
|
||||||
|
$part_prefs = $preferences->read_repository();
|
||||||
|
switch($part_prefs['calendar']['reset_stati'])
|
||||||
|
{
|
||||||
|
case 'no':
|
||||||
|
break;
|
||||||
|
case 'startday':
|
||||||
|
if($sameday)
|
||||||
|
{
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
default:
|
||||||
|
$status_reset = true;
|
||||||
|
$event['participants'][$uid] = calendar_so::combine_status('U', $q, $r);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
return $status_reset;
|
return $status_reset;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user