diff --git a/calendar/inc/class.bocal.inc.php b/calendar/inc/class.bocal.inc.php index d853257cd4..f0d2042387 100644 --- a/calendar/inc/class.bocal.inc.php +++ b/calendar/inc/class.bocal.inc.php @@ -98,6 +98,7 @@ class bocal 'R' => 'Rejected', 'T' => 'Tentative', 'U' => 'No Response', + 'G' => 'Group invitation', ); /** * @var array recur_types translates MCAL recur-types to verbose labels @@ -1307,15 +1308,16 @@ class bocal * * @param array $event event-data * @param boolean $long_status=false should the long/verbose status or only the one letter shortcut be used + * @param boolean $show_group_invitation=false show group-invitations (status == 'G') or not (default) * @return array with id / names with status pairs */ - function participants($event,$long_status=False) + function participants($event,$long_status=False,$show_group_invitation=false) { //_debug_array($event); $names = array(); foreach($event['participants'] as $id => $status) { - if ($status == 'G') continue; // dont show group-invitation + if ($status == 'G' && !$show_group_invitation) continue; // dont show group-invitation $status = $this->verbose_status[$status]; diff --git a/calendar/inc/class.bocalupdate.inc.php b/calendar/inc/class.bocalupdate.inc.php index 893536d562..26fb199fe9 100644 --- a/calendar/inc/class.bocalupdate.inc.php +++ b/calendar/inc/class.bocalupdate.inc.php @@ -145,6 +145,7 @@ class bocalupdate extends bocal 'end' => $event['end'], 'users' => $users, 'ignore_acl' => true, // otherwise we get only events readable by the user + 'enum_groups' => true, // otherwise group-events would not block time )); if ($this->debug > 2 || $this->debug == 'update') { diff --git a/calendar/inc/class.uiforms.inc.php b/calendar/inc/class.uiforms.inc.php index 5d88220890..f5c157f2ac 100644 --- a/calendar/inc/class.uiforms.inc.php +++ b/calendar/inc/class.uiforms.inc.php @@ -767,7 +767,7 @@ class uiforms extends uical 'time' => $this->bo->long_date($conflict['start'],$conflict['end'],true), 'conflicting_participants' => implode(",\n",$this->bo->participants(array( 'participants' => array_intersect_key($conflict['participants'],$event['participants']), - ))), + ),true,true)), // show group invitations too 'icon_recur' => $conflict['recur_type'] != MCAL_RECUR_NONE ? 'recur' : '', 'text_recur' => $conflict['recur_type'] != MCAL_RECUR_NONE ? lang('Recurring event') : ' ', ); @@ -971,6 +971,7 @@ class uiforms extends uical 'start' => $start, 'end' => $end, 'users' => $participants, + 'ignore_acl' => true, // otherwise we get only events readable by the user )); $busy[] = array( // add end-of-search-date as event, to cope with empty search and get freetime til that date 'start' => $end, diff --git a/calendar/setup/phpgw_de.lang b/calendar/setup/phpgw_de.lang index c5a7b2cdae..0968f333f8 100644 --- a/calendar/setup/phpgw_de.lang +++ b/calendar/setup/phpgw_de.lang @@ -124,6 +124,7 @@ fullname of person to notify calendar de Name der zu benachrichtigenden Person general calendar de Allgemein global public and group public calendar de Global öffentlich und Gruppen-öffentlich global public only calendar de nur Global öffentlich +group invitation calendar de Gruppeneinladung group planner calendar de Gruppenplaner group public only calendar de Gruppen-Öffentlich groupmember(s) %1 not included, because you have no access. calendar de Gruppenmitglied(er) %1 nicht enthalten, da Sie keinen Zugriff haben. diff --git a/calendar/setup/phpgw_en.lang b/calendar/setup/phpgw_en.lang index f630fd3741..d8b19b5a32 100644 --- a/calendar/setup/phpgw_en.lang +++ b/calendar/setup/phpgw_en.lang @@ -124,6 +124,7 @@ fullname of person to notify calendar en Fullname of person to notify general calendar en General global public and group public calendar en global public and group public global public only calendar en global public only +group invitation calendar en Group invitation group planner calendar en Group planner group public only calendar en group public only groupmember(s) %1 not included, because you have no access. calendar en Groupmember(s) %1 not included, because you have no access.