plugins/calendar plugins/libcalendaring plugins/tasklist
Thomas Brüderli
bruederli at kolabsys.com
Mon Aug 25 16:00:07 CEST 2014
plugins/calendar/calendar.php | 3 ++-
plugins/libcalendaring/lib/libcalendaring_itip.php | 6 +++---
plugins/tasklist/tasklist.php | 3 ++-
3 files changed, 7 insertions(+), 5 deletions(-)
New commits:
commit 9496f4f820db1c5822e339033fe81f864b42ea47
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date: Mon Aug 25 15:58:15 2014 +0200
-Don't append RSVP weblinks on information updates which don't require a response (#3446)
diff --git a/plugins/calendar/calendar.php b/plugins/calendar/calendar.php
index 4975f7c..36947ea 100644
--- a/plugins/calendar/calendar.php
+++ b/plugins/calendar/calendar.php
@@ -1800,13 +1800,14 @@ class calendar extends rcube_plugin
// which template to use for mail text
$is_new = !in_array($attendee['email'], $old_attendees);
+ $is_rsvp = $is_new || $event['sequence'] > $old['sequence'];
$bodytext = $is_cancelled ? 'eventcancelmailbody' : ($is_new ? 'invitationmailbody' : 'eventupdatemailbody');
$subject = $is_cancelled ? 'eventcancelsubject' : ($is_new ? 'invitationsubject' : ($event['title'] ? 'eventupdatesubject':'eventupdatesubjectempty'));
$event['comment'] = $comment;
// finally send the message
- if ($itip->send_itip_message($event, $method, $attendee, $subject, $bodytext, $message))
+ if ($itip->send_itip_message($event, $method, $attendee, $subject, $bodytext, $message, $is_rsvp))
$sent++;
else
$sent = -100;
diff --git a/plugins/libcalendaring/lib/libcalendaring_itip.php b/plugins/libcalendaring/lib/libcalendaring_itip.php
index 0b21ed8..6ff1229 100644
--- a/plugins/libcalendaring/lib/libcalendaring_itip.php
+++ b/plugins/libcalendaring/lib/libcalendaring_itip.php
@@ -92,7 +92,7 @@ class libcalendaring_itip
* @param object Mail_mime object with message data
* @return boolean True on success, false on failure
*/
- public function send_itip_message($event, $method, $recipient, $subject, $bodytext, $message = null)
+ public function send_itip_message($event, $method, $recipient, $subject, $bodytext, $message = null, $rsvp = true)
{
if (!$this->sender['name'])
$this->sender['name'] = $this->sender['email'];
@@ -125,7 +125,7 @@ class libcalendaring_itip
'vars' => array(
'title' => $event['title'],
'date' => $this->lib->event_date_text($event, true),
- 'attendees' => join(', ', $attendees_list),
+ 'attendees' => join(",\n ", $attendees_list),
'sender' => $this->sender['name'],
'organizer' => $this->sender['name'],
)
@@ -136,7 +136,7 @@ class libcalendaring_itip
// }
// append links for direct invitation replies
- if ($method == 'REQUEST' && ($token = $this->store_invitation($event, $recipient['email']))) {
+ if ($method == 'REQUEST' && $rsvp && ($token = $this->store_invitation($event, $recipient['email']))) {
$mailbody .= "\n\n" . $this->gettext(array(
'name' => 'invitationattendlinks',
'vars' => array('url' => $this->plugin->get_url(array('action' => 'attend', 't' => $token))),
diff --git a/plugins/tasklist/tasklist.php b/plugins/tasklist/tasklist.php
index c943f54..4004a9b 100644
--- a/plugins/tasklist/tasklist.php
+++ b/plugins/tasklist/tasklist.php
@@ -734,11 +734,12 @@ class tasklist extends rcube_plugin
// which template to use for mail text
$is_new = !in_array($attendee['email'], $old_attendees);
+ $is_rsvp = $is_new || $task['sequence'] > $old['sequence'];
$bodytext = $is_cancelled ? 'itipcancelmailbody' : ($is_new ? 'invitationmailbody' : 'itipupdatemailbody');
$subject = $is_cancelled ? 'itipcancelsubject' : ($is_new ? 'invitationsubject' : ($task['title'] ? 'itipupdatesubject' : 'itipupdatesubjectempty'));
// finally send the message
- if ($itip->send_itip_message($object, $method, $attendee, $subject, $bodytext, $message))
+ if ($itip->send_itip_message($object, $method, $attendee, $subject, $bodytext, $message, $is_rsvp))
$sent++;
else
$sent = -100;
More information about the commits
mailing list