From 86d464b6deec19cc9ed7c4fa97884a869a85fee7 Mon Sep 17 00:00:00 2001 From: Thomas Bruederli Date: Mon, 2 Feb 2015 12:03:36 +0100 Subject: [PATCH] Fix unauthenticated iTip RSVP page for external attendees (#4447) --- plugins/calendar/calendar.php | 5 ++++- plugins/calendar/lib/calendar_ui.php | 2 +- plugins/libcalendaring/lib/libcalendaring_itip.php | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/plugins/calendar/calendar.php b/plugins/calendar/calendar.php index a288cb55..64dc2ced 100644 --- a/plugins/calendar/calendar.php +++ b/plugins/calendar/calendar.php @@ -2442,6 +2442,7 @@ class calendar extends rcube_plugin } // send itip reply to organizer + $invitation['event']['comment'] = rcube_utils::get_input_value('_comment', rcube_utils::INPUT_POST); if ($status && $itip->update_invitation($invitation, $invitation['attendee'], strtoupper($status))) { $this->invitestatus = html::div('rsvp-status ' . strtolower($status), $itip->gettext('youhave'.strtolower($status))); } @@ -2465,8 +2466,10 @@ class calendar extends rcube_plugin $this->register_handler('plugin.event_inviteform', array($this, 'itip_event_inviteform')); $this->register_handler('plugin.event_invitebox', array($this->ui, 'event_invitebox')); - if (!$this->invitestatus) + if (!$this->invitestatus) { + $this->itip->set_rsvp_actions(array('accepted','tentative','declined')); $this->register_handler('plugin.event_rsvp_buttons', array($this->ui, 'event_rsvp_buttons')); + } $this->rc->output->set_pagetitle($itip->gettext('itipinvitation') . ' ' . $this->event['title']); } diff --git a/plugins/calendar/lib/calendar_ui.php b/plugins/calendar/lib/calendar_ui.php index f902b77f..66dc51d1 100644 --- a/plugins/calendar/lib/calendar_ui.php +++ b/plugins/calendar/lib/calendar_ui.php @@ -886,7 +886,7 @@ class calendar_ui function event_rsvp_buttons($attrib = array()) { - return $this->cal->itip->itip_rsvp_buttons($attrib, array('accepted','tentative','declined','delegated')); + return $this->cal->itip->itip_rsvp_buttons($attrib); } } diff --git a/plugins/libcalendaring/lib/libcalendaring_itip.php b/plugins/libcalendaring/lib/libcalendaring_itip.php index c68330d9..06853379 100644 --- a/plugins/libcalendaring/lib/libcalendaring_itip.php +++ b/plugins/libcalendaring/lib/libcalendaring_itip.php @@ -682,7 +682,7 @@ class libcalendaring_itip // add input field for reply comment $rsvp_additions .= html::a(array('href' => '#toggle', 'class' => 'reply-comment-toggle'), $this->gettext('itipeditresponse')); $rsvp_additions .= html::div('itip-reply-comment', - html::tag('textarea', array('id' => 'reply-comment-'.$dom_id, 'cols' => 40, 'rows' => 6, 'style' => 'display:none', 'placeholder' => $this->gettext('itipcomment')), '') + html::tag('textarea', array('id' => 'reply-comment-'.$dom_id, 'name' => '_comment', 'cols' => 40, 'rows' => 6, 'style' => 'display:none', 'placeholder' => $this->gettext('itipcomment')), '') ); return $rsvp_additions;