Add client-side events when adding/removing groups

release-0.6
thomascube 15 years ago
parent 1d773d7141
commit 65c8764b19

@ -3659,10 +3659,14 @@ function rcube_webmail()
{
var li, key = 'G'+id;
if ((li = this.get_folder_li(key))) {
this.triggerEvent('removegroup', { id:id, li:li });
li.parentNode.removeChild(li);
delete this.env.contactfolders[key];
delete this.env.contactgroups[key];
}
this.list_contacts(null, 0);
};
// handler for keyboard events on the input field
@ -3716,6 +3720,8 @@ function rcube_webmail()
var link = $('<a>').attr('href', '#').attr('onclick', "return rcmail.command('listgroup','"+prop.id+"',this)").html(prop.name);
var li = $('<li>').attr('id', 'rcmli'+key).addClass('contactgroup').append(link);
$(this.gui_objects.folderlist).append(li);
this.triggerEvent('insertgroup', { id:prop.id, name:prop.name, li:li[0] });
};
// callback for renaming a contact group

@ -41,9 +41,8 @@ if ($RCMAIL->action == 'group-addmembers') {
else if ($RCMAIL->action == 'group-delmembers') {
if (($gid = get_input_value('_gid', RCUBE_INPUT_POST)) && ($ids = get_input_value('_cid', RCUBE_INPUT_POST))) {
$plugin = $RCMAIL->plugins->exec_hook('group_delmembers', array('group_id' => $gid, 'ids' => $ids, 'source' => $source));
$ids = $plugin['ids'];
if (!$plugin['abort'] && $CONTACTS->remove_from_group($gid, $ids))
if (!$plugin['abort'] && $CONTACTS->remove_from_group($gid, $plugin['ids']))
$OUTPUT->show_message('contactremovedfromgroup');
else if ($plugin['message'])
$OUTPUT->show_message($plugin['message'], 'warning');

Loading…
Cancel
Save