diff options
| author | thomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2011-01-22 13:51:26 +0000 |
|---|---|---|
| committer | thomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2011-01-22 13:51:26 +0000 |
| commit | 0c4670ac8b9c6524536c28d3d3d38449015ed26c (patch) | |
| tree | 157d7abd2a001ff72e3ad24fdf408c9e3ccf544c /plugins/kolab_addressbook/kolab_addressbook.php | |
| parent | 159ffcf31fbb32251229169a1de7095ac2bc5874 (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.php | 34 |
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; + } } |
