Execute (delayed) the configured action after an iTip message has been processed by the user (#419)
This commit is contained in:
parent
aada053324
commit
aedba0a4c0
2 changed files with 16 additions and 2 deletions
|
@ -2497,7 +2497,8 @@ class calendar extends rcube_plugin
|
||||||
$this->rc->output->command('display_message', $this->gettext(array('name' => $message, 'vars' => array('calendar' => $calendar['name']))), 'confirmation');
|
$this->rc->output->command('display_message', $this->gettext(array('name' => $message, 'vars' => array('calendar' => $calendar['name']))), 'confirmation');
|
||||||
|
|
||||||
$metadata['rsvp'] = intval($metadata['rsvp']);
|
$metadata['rsvp'] = intval($metadata['rsvp']);
|
||||||
$this->rc->output->command('plugin.fetch_itip_object_status', $metadata);
|
$metadata['after_action'] = $this->rc->config->get('calendar_itip_after_action', $this->defaults['calendar_itip_after_action']);
|
||||||
|
$this->rc->output->command('plugin.itip_message_processed', $metadata);
|
||||||
$error_msg = null;
|
$error_msg = null;
|
||||||
}
|
}
|
||||||
else if ($error_msg)
|
else if ($error_msg)
|
||||||
|
|
|
@ -854,6 +854,19 @@ rcube_libcalendaring.update_itip_object_status = function(p)
|
||||||
$('#'+p.action+'-'+p.id).show().find('input.button').last().after(p.select);
|
$('#'+p.action+'-'+p.id).show().find('input.button').last().after(p.select);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Callback from server after an iTip message has been processed
|
||||||
|
*/
|
||||||
|
rcube_libcalendaring.itip_message_processed = function(metadata)
|
||||||
|
{
|
||||||
|
if (metadata.after_action) {
|
||||||
|
setTimeout(function(){ rcube_libcalendaring.itip_after_action(metadata.after_action); }, 1200);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
rcube_libcalendaring.fetch_itip_object_status(metadata);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* After-action on iTip request message. Action types:
|
* After-action on iTip request message. Action types:
|
||||||
* 0 - no action
|
* 0 - no action
|
||||||
|
@ -903,7 +916,7 @@ window.rcmail && rcmail.addEventListener('init', function(evt) {
|
||||||
|
|
||||||
rcmail.addEventListener('plugin.update_itip_object_status', rcube_libcalendaring.update_itip_object_status)
|
rcmail.addEventListener('plugin.update_itip_object_status', rcube_libcalendaring.update_itip_object_status)
|
||||||
.addEventListener('plugin.fetch_itip_object_status', rcube_libcalendaring.fetch_itip_object_status)
|
.addEventListener('plugin.fetch_itip_object_status', rcube_libcalendaring.fetch_itip_object_status)
|
||||||
.addEventListener('plugin.itip_after_action', rcube_libcalendaring.itip_after_action);
|
.addEventListener('plugin.itip_message_processed', rcube_libcalendaring.itip_message_processed);
|
||||||
|
|
||||||
$('.rsvp-buttons').on('click', 'a.reply-comment-toggle', function(e){
|
$('.rsvp-buttons').on('click', 'a.reply-comment-toggle', function(e){
|
||||||
$(this).hide().parent().find('textarea').show().focus();
|
$(this).hide().parent().find('textarea').show().focus();
|
||||||
|
|
Loading…
Add table
Reference in a new issue