|
|
@ -62,36 +62,36 @@ if (!$OUTPUT->ajax_call) { |
|
|
|
|
|
|
|
// general definition of contact coltypes |
|
|
|
$CONTACT_COLTYPES = array( |
|
|
|
'name' => array('type' => 'text', 'size' => 40, 'limit' => 1, 'label' => rcube_label('name')), |
|
|
|
'firstname' => array('type' => 'text', 'size' => 19, 'limit' => 1, 'label' => rcube_label('firstname')), |
|
|
|
'surname' => array('type' => 'text', 'size' => 19, 'limit' => 1, 'label' => rcube_label('surname')), |
|
|
|
'middlename' => array('type' => 'text', 'size' => 19, 'limit' => 1, 'label' => rcube_label('middlename')), |
|
|
|
'prefix' => array('type' => 'text', 'size' => 8, 'limit' => 1, 'label' => rcube_label('nameprefix')), |
|
|
|
'suffix' => array('type' => 'text', 'size' => 8, 'limit' => 1, 'label' => rcube_label('namesuffix')), |
|
|
|
'nickname' => array('type' => 'text', 'size' => 40, 'limit' => 1, 'label' => rcube_label('nickname')), |
|
|
|
'jobtitle' => array('type' => 'text', 'size' => 40, 'limit' => 1, 'label' => rcube_label('jobtitle')), |
|
|
|
'organization' => array('type' => 'text', 'size' => 19, 'limit' => 1, 'label' => rcube_label('organization')), |
|
|
|
'department' => array('type' => 'text', 'size' => 19, 'limit' => 1, 'label' => rcube_label('department')), |
|
|
|
'gender' => array('type' => 'select', 'limit' => 1, 'label' => rcube_label('gender'), 'options' => array('male' => rcube_label('male'), 'female' => rcube_label('female'))), |
|
|
|
'maidenname' => array('type' => 'text', 'size' => 40, 'limit' => 1, 'label' => rcube_label('maidenname')), |
|
|
|
'email' => array('type' => 'text', 'size' => 40, 'label' => rcube_label('email'), 'subtypes' => array('home','work','other')), |
|
|
|
'phone' => array('type' => 'text', 'size' => 40, 'label' => rcube_label('phone'), 'subtypes' => array('home','home2','work','work2','mobile','main','homefax','workfax','car','pager','video','assistant','other')), |
|
|
|
'name' => array('type' => 'text', 'size' => 40, 'limit' => 1, 'label' => rcube_label('name'), 'category' => 'main'), |
|
|
|
'firstname' => array('type' => 'text', 'size' => 19, 'limit' => 1, 'label' => rcube_label('firstname'), 'category' => 'main'), |
|
|
|
'surname' => array('type' => 'text', 'size' => 19, 'limit' => 1, 'label' => rcube_label('surname'), 'category' => 'main'), |
|
|
|
'email' => array('type' => 'text', 'size' => 40, 'label' => rcube_label('email'), 'subtypes' => array('home','work','other'), 'category' => 'main'), |
|
|
|
'middlename' => array('type' => 'text', 'size' => 19, 'limit' => 1, 'label' => rcube_label('middlename'), 'category' => 'main'), |
|
|
|
'prefix' => array('type' => 'text', 'size' => 8, 'limit' => 1, 'label' => rcube_label('nameprefix'), 'category' => 'main'), |
|
|
|
'suffix' => array('type' => 'text', 'size' => 8, 'limit' => 1, 'label' => rcube_label('namesuffix'), 'category' => 'main'), |
|
|
|
'nickname' => array('type' => 'text', 'size' => 40, 'limit' => 1, 'label' => rcube_label('nickname'), 'category' => 'main'), |
|
|
|
'jobtitle' => array('type' => 'text', 'size' => 40, 'limit' => 1, 'label' => rcube_label('jobtitle'), 'category' => 'main'), |
|
|
|
'organization' => array('type' => 'text', 'size' => 19, 'limit' => 1, 'label' => rcube_label('organization'), 'category' => 'main'), |
|
|
|
'department' => array('type' => 'text', 'size' => 19, 'limit' => 1, 'label' => rcube_label('department'), 'category' => 'main'), |
|
|
|
'gender' => array('type' => 'select', 'limit' => 1, 'label' => rcube_label('gender'), 'options' => array('male' => rcube_label('male'), 'female' => rcube_label('female')), 'category' => 'personal'), |
|
|
|
'maidenname' => array('type' => 'text', 'size' => 40, 'limit' => 1, 'label' => rcube_label('maidenname'), 'category' => 'personal'), |
|
|
|
'phone' => array('type' => 'text', 'size' => 40, 'label' => rcube_label('phone'), 'subtypes' => array('home','home2','work','work2','mobile','main','homefax','workfax','car','pager','video','assistant','other'), 'category' => 'main'), |
|
|
|
'address' => array('type' => 'composite', 'label' => rcube_label('address'), 'subtypes' => array('home','work','other'), 'childs' => array( |
|
|
|
'street' => array('type' => 'text', 'size' => 40, 'label' => rcube_label('street')), |
|
|
|
'locality' => array('type' => 'text', 'size' => 28, 'label' => rcube_label('locality')), |
|
|
|
'zipcode' => array('type' => 'text', 'size' => 8, 'label' => rcube_label('zipcode')), |
|
|
|
'region' => array('type' => 'text', 'size' => 12, 'label' => rcube_label('region')), |
|
|
|
'country' => array('type' => 'text', 'size' => 40, 'label' => rcube_label('country')), |
|
|
|
)), |
|
|
|
'birthday' => array('type' => 'date', 'size' => 12, 'label' => rcube_label('birthday'), 'limit' => 1, 'render_func' => 'rcmail_format_date_col'), |
|
|
|
'anniversary' => array('type' => 'date', 'size' => 12, 'label' => rcube_label('anniversary'), 'limit' => 1, 'render_func' => 'rcmail_format_date_col'), |
|
|
|
'website' => array('type' => 'text', 'size' => 40, 'label' => rcube_label('website'), 'subtypes' => array('homepage','work','blog','other')), |
|
|
|
'im' => array('type' => 'text', 'size' => 40, 'label' => rcube_label('instantmessenger'), 'subtypes' => array('aim','icq','msn','yahoo','jabber','skype','other')), |
|
|
|
'street' => array('type' => 'text', 'size' => 40, 'label' => rcube_label('street'), 'category' => 'main'), |
|
|
|
'locality' => array('type' => 'text', 'size' => 28, 'label' => rcube_label('locality'), 'category' => 'main'), |
|
|
|
'zipcode' => array('type' => 'text', 'size' => 8, 'label' => rcube_label('zipcode'), 'category' => 'main'), |
|
|
|
'region' => array('type' => 'text', 'size' => 12, 'label' => rcube_label('region'), 'category' => 'main'), |
|
|
|
'country' => array('type' => 'text', 'size' => 40, 'label' => rcube_label('country'), 'category' => 'main'), |
|
|
|
), 'category' => 'main'), |
|
|
|
'birthday' => array('type' => 'date', 'size' => 12, 'label' => rcube_label('birthday'), 'limit' => 1, 'render_func' => 'rcmail_format_date_col', 'category' => 'personal'), |
|
|
|
'anniversary' => array('type' => 'date', 'size' => 12, 'label' => rcube_label('anniversary'), 'limit' => 1, 'render_func' => 'rcmail_format_date_col', 'category' => 'personal'), |
|
|
|
'website' => array('type' => 'text', 'size' => 40, 'label' => rcube_label('website'), 'subtypes' => array('homepage','work','blog','other'), 'category' => 'main'), |
|
|
|
'im' => array('type' => 'text', 'size' => 40, 'label' => rcube_label('instantmessenger'), 'subtypes' => array('aim','icq','msn','yahoo','jabber','skype','other'), 'category' => 'main'), |
|
|
|
'notes' => array('type' => 'textarea', 'size' => 40, 'rows' => 15, 'label' => rcube_label('notes'), 'limit' => 1), |
|
|
|
'photo' => array('type' => 'image', 'limit' => 1), |
|
|
|
'assistant' => array('type' => 'text', 'size' => 40, 'limit' => 1, 'label' => rcube_label('assistant')), |
|
|
|
'manager' => array('type' => 'text', 'size' => 40, 'limit' => 1, 'label' => rcube_label('manager')), |
|
|
|
'spouse' => array('type' => 'text', 'size' => 40, 'limit' => 1, 'label' => rcube_label('spouse')), |
|
|
|
'photo' => array('type' => 'image', 'limit' => 1, 'category' => 'main'), |
|
|
|
'assistant' => array('type' => 'text', 'size' => 40, 'limit' => 1, 'label' => rcube_label('assistant'), 'category' => 'personal'), |
|
|
|
'manager' => array('type' => 'text', 'size' => 40, 'limit' => 1, 'label' => rcube_label('manager'), 'category' => 'personal'), |
|
|
|
'spouse' => array('type' => 'text', 'size' => 40, 'limit' => 1, 'label' => rcube_label('spouse'), 'category' => 'personal'), |
|
|
|
// TODO: define fields for vcards like GEO, KEY |
|
|
|
); |
|
|
|
|
|
|
@ -225,10 +225,10 @@ function rcmail_js_contacts_list($result, $prefix='') |
|
|
|
|
|
|
|
// define list of cols to be displayed |
|
|
|
$a_show_cols = array('name'); |
|
|
|
|
|
|
|
|
|
|
|
while ($row = $result->next()) { |
|
|
|
$a_row_cols = array(); |
|
|
|
|
|
|
|
|
|
|
|
// format each col |
|
|
|
foreach ($a_show_cols as $col) |
|
|
|
$a_row_cols[$col] = Q($row[$col]); |
|
|
@ -324,7 +324,7 @@ function rcmail_contact_form($form, $record, $attrib = null) |
|
|
|
|
|
|
|
// get default coltypes |
|
|
|
$coltypes = $GLOBALS['CONTACT_COLTYPES']; |
|
|
|
$coltype_lables = array(); |
|
|
|
$coltype_labels = array(); |
|
|
|
|
|
|
|
foreach ($coltypes as $col => $prop) { |
|
|
|
if ($prop['subtypes']) { |
|
|
@ -335,7 +335,7 @@ function rcmail_contact_form($form, $record, $attrib = null) |
|
|
|
} |
|
|
|
if ($prop['childs']) { |
|
|
|
foreach ($prop['childs'] as $childcol => $cp) |
|
|
|
$coltype_lables[$childcol] = array('label' => $cp['label']); |
|
|
|
$coltype_labels[$childcol] = array('label' => $cp['label']); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
@ -548,7 +548,7 @@ function rcmail_contact_form($form, $record, $attrib = null) |
|
|
|
} |
|
|
|
|
|
|
|
if ($edit_mode) { |
|
|
|
$RCMAIL->output->set_env('coltypes', $coltypes + $coltype_lables); |
|
|
|
$RCMAIL->output->set_env('coltypes', $coltypes + $coltype_labels); |
|
|
|
$RCMAIL->output->set_env('delbutton', $del_button); |
|
|
|
$RCMAIL->output->add_label('delete'); |
|
|
|
} |
|
|
|