summaryrefslogtreecommitdiff
path: root/program/steps/addressbook
diff options
context:
space:
mode:
authorthomascube <thomas@roundcube.net>2011-02-06 22:35:39 +0000
committerthomascube <thomas@roundcube.net>2011-02-06 22:35:39 +0000
commit29aab5a214620621057bfb6ef3546fa55b451f22 (patch)
tree765f8bdd7c69ae621aad4e1191b4978112163b23 /program/steps/addressbook
parent07b95dc49b31d131b1fecdabf2059a447935c196 (diff)
Localize contact property subtypes; better name for contact section
Diffstat (limited to 'program/steps/addressbook')
-rw-r--r--program/steps/addressbook/edit.inc2
-rw-r--r--program/steps/addressbook/func.inc20
-rw-r--r--program/steps/addressbook/show.inc2
3 files changed, 20 insertions, 4 deletions
diff --git a/program/steps/addressbook/edit.inc b/program/steps/addressbook/edit.inc
index c0d5f0fdd..932dc4918 100644
--- a/program/steps/addressbook/edit.inc
+++ b/program/steps/addressbook/edit.inc
@@ -92,7 +92,7 @@ function rcmail_contact_editform($attrib)
$t_cols = !empty($attrib['textareacols']) ? $attrib['textareacols'] : 40;
$form = array(
- 'info' => array(
+ 'contact' => array(
'name' => rcube_label('contactproperties'),
'content' => array(
'email' => array('size' => $i_size, 'visible' => true),
diff --git a/program/steps/addressbook/func.inc b/program/steps/addressbook/func.inc
index be0c82d8b..7597fa75a 100644
--- a/program/steps/addressbook/func.inc
+++ b/program/steps/addressbook/func.inc
@@ -281,6 +281,20 @@ function rcmail_get_rowcount_text()
}
+function rcmail_get_type_label($type)
+{
+ $label = 'type'.$type;
+ if (rcube_label_exists($label))
+ return rcube_label($label);
+ else if (preg_match('/\w+(\d+)$/', $label, $m)
+ && ($label = preg_replace('/(\d+)$/', '', $label))
+ && rcube_label_exists($label))
+ return rcube_label($label) . ' ' . $m[1];
+
+ return ucfirst($type);
+}
+
+
function rcmail_contact_form($form, $record, $attrib = null)
{
global $RCMAIL, $CONFIG;
@@ -324,6 +338,7 @@ function rcmail_contact_form($form, $record, $attrib = null)
if ($section == 'head') {
$content = '';
+ // TODO: use the save name composition function as in save.inc
$names_arr = array($record['prefix'], $record['firstname'], $record['middlename'], $record['surname'], $record['suffix']);
if ($record['name'] == join(' ', array_filter($names_arr)))
unset($record['name']);
@@ -384,8 +399,9 @@ function rcmail_contact_form($form, $record, $attrib = null)
// prepare subtype selector in edit mode
if ($edit_mode && is_array($colprop['subtypes'])) {
+ $subtype_names = array_map('rcmail_get_type_label', $colprop['subtypes']);
$select_subtype = new html_select(array('name' => '_subtype_'.$col.'[]', 'class' => 'contactselectsubtype'));
- $select_subtype->add($colprop['subtypes']);
+ $select_subtype->add($subtype_names, $colprop['subtypes']);
}
else
$select_subtype = null;
@@ -474,7 +490,7 @@ function rcmail_contact_form($form, $record, $attrib = null)
// use subtype as label
if ($colprop['subtypes'])
- $label = $subtype;
+ $label = rcmail_get_type_label($subtype);
// add delete button/link
if ($edit_mode && !($colprop['visible'] && $colprop['limit'] == 1))
diff --git a/program/steps/addressbook/show.inc b/program/steps/addressbook/show.inc
index 49953fd25..f62bad3d5 100644
--- a/program/steps/addressbook/show.inc
+++ b/program/steps/addressbook/show.inc
@@ -90,7 +90,7 @@ function rcmail_contact_details($attrib)
$i_size = !empty($attrib['size']) ? $attrib['size'] : 40;
$form = array(
- 'info' => array(
+ 'contact' => array(
'name' => rcube_label('contactproperties'),
'content' => array(
'email' => array('size' => $i_size, 'render_func' => 'rcmail_render_email_value'),