summaryrefslogtreecommitdiff
path: root/plugins/kolab_addressbook/kolab_addressbook.php
diff options
context:
space:
mode:
authorthomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c>2011-01-22 13:51:26 +0000
committerthomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c>2011-01-22 13:51:26 +0000
commit0c4670ac8b9c6524536c28d3d3d38449015ed26c (patch)
tree157d7abd2a001ff72e3ad24fdf408c9e3ccf544c /plugins/kolab_addressbook/kolab_addressbook.php
parent159ffcf31fbb32251229169a1de7095ac2bc5874 (diff)
Spread Kolab-specific fields to the new form groups; check if connection to Kolab server succeeded; sort contacts by name
git-svn-id: https://svn.roundcube.net/trunk@4442 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'plugins/kolab_addressbook/kolab_addressbook.php')
-rw-r--r--plugins/kolab_addressbook/kolab_addressbook.php34
1 files changed, 21 insertions, 13 deletions
diff --git a/plugins/kolab_addressbook/kolab_addressbook.php b/plugins/kolab_addressbook/kolab_addressbook.php
index 68179c387..3125bbd3d 100644
--- a/plugins/kolab_addressbook/kolab_addressbook.php
+++ b/plugins/kolab_addressbook/kolab_addressbook.php
@@ -120,22 +120,17 @@ class kolab_addressbook extends rcube_plugin
if (!is_a($GLOBALS['CONTACTS'], 'rcube_kolab_contacts'))
return $p;
- // extend the list of contact fields to be displayed in the 'info' section
- if (is_array($p['form']['info'])) {
- $p['form']['info']['content']['initials'] = array('size' => 6);
+ // extend the list of contact fields to be displayed in the 'personal' section
+ if (is_array($p['form']['personal'])) {
$p['form']['info']['content']['officelocation'] = array('size' => 40);
- $p['form']['info']['content']['profession'] = array('size' => 40);
- $p['form']['info']['content']['children'] = array('size' => 40);
- // re-order fields according to the coltypes list
- $block = array();
- $contacts = reset($this->sources);
- foreach ($contacts->coltypes as $col => $prop) {
- if (isset($p['form']['info']['content'][$col]))
- $block[$col] = $p['form']['info']['content'][$col];
- }
+ $p['form']['personal']['content']['initials'] = array('size' => 6);
+ $p['form']['personal']['content']['profession'] = array('size' => 40);
+ $p['form']['personal']['content']['children'] = array('size' => 40);
- $p['form']['info']['content'] = $block;
+ // re-order fields according to the coltypes list
+ $p['form']['info']['content'] = $this->_sort_form_fields($p['form']['info']['content']);
+ $p['form']['personal']['content'] = $this->_sort_form_fields($p['form']['personal']['content']);
// define a separate section 'settings'
$p['form']['settings'] = array(
@@ -149,5 +144,18 @@ class kolab_addressbook extends rcube_plugin
return $p;
}
+
+
+ private function _sort_form_fields($contents)
+ {
+ $block = array();
+ $contacts = reset($this->sources);
+ foreach ($contacts->coltypes as $col => $prop) {
+ if (isset($contents[$col]))
+ $block[$col] = $contents[$col];
+ }
+
+ return $block;
+ }
}