plugins/kolab_addressbook
Thomas Brüderli
bruederli at kolabsys.com
Fri Jun 27 11:15:25 CEST 2014
plugins/kolab_addressbook/kolab_addressbook.js | 6 +++---
plugins/kolab_addressbook/kolab_addressbook.php | 11 +++++++++++
2 files changed, 14 insertions(+), 3 deletions(-)
New commits:
commit d777456fcf83900a999f7263e97d5e22af6aa374
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date: Fri Jun 27 11:15:17 2014 +0200
Load groups when adding an address book folder from search
diff --git a/plugins/kolab_addressbook/kolab_addressbook.js b/plugins/kolab_addressbook/kolab_addressbook.js
index c519a67..c213a6b 100644
--- a/plugins/kolab_addressbook/kolab_addressbook.js
+++ b/plugins/kolab_addressbook/kolab_addressbook.js
@@ -161,9 +161,9 @@ if (window.rcmail) {
.addEventListener('insert-item', function(data) {
// register new address source
rcmail.env.address_sources[data.id] = rcmail.env.contactfolders[data.id] = data.data;
- if (data.data.subscribed)
- rcmail.http_post('plugin.book-subscribe', { _source:data.id, _permanent:1 });
- // TODO: load groups and add them to the list
+ // subscribe folder and load groups to add them to the list
+ if (!data.data.virtual)
+ rcmail.http_post('plugin.book-subscribe', { _source:data.id, _permanent:data.data.subscribed?1:0, _groups:1 });
})
.addEventListener('search-complete', function(data) {
if (data.length)
diff --git a/plugins/kolab_addressbook/kolab_addressbook.php b/plugins/kolab_addressbook/kolab_addressbook.php
index c91d7f5..b07e439 100644
--- a/plugins/kolab_addressbook/kolab_addressbook.php
+++ b/plugins/kolab_addressbook/kolab_addressbook.php
@@ -743,6 +743,17 @@ class kolab_addressbook extends rcube_plugin
$success |= $folder->subscribe(intval($_POST['_permanent']));
if (isset($_POST['_active']))
$success |= $folder->activate(intval($_POST['_active']));
+
+ // list groups for this address book
+ if (!empty($_POST['_groups'])) {
+ $abook = new rcube_kolab_contacts($folder->name);
+ foreach ((array)$abook->list_groups() as $prop) {
+ $prop['source'] = $id;
+ $prop['id'] = $prop['ID'];
+ unset($prop['ID']);
+ $this->rc->output->command('insert_contact_group', $prop);
+ }
+ }
}
if ($success) {
More information about the commits
mailing list