--- cck_fullname.module.orig 2008-06-08 18:49:34.000000000 +0100 +++ cck_fullname.module 2009-02-25 18:46:50.000000000 +0000 @@ -738,17 +738,21 @@ function cck_fullname_field_formatter($f $output = t('Preferred name: '). theme('cck_fullname', $cck_preferredname, $field); } return $output; - case 'last_name_only'://output legal last name + case 'last_name_only'://output preferred last name if present, otherwise legal last name //check and clean the values for output - if (isset($item['last'])) { + if (!empty($item['last_preferred'])) { + $cck_fullname['last_preferred'] = strip_tags($item['last_preferred']); + } else if (!empty($item['last'])) { $cck_fullname['last'] = strip_tags($item['last']); } $output .= theme('cck_fullname', $cck_fullname, $field); return $output; - case 'first_name_only'://output preferred first name + case 'first_name_only'://output preferred first name if present, otherwise legal first name //check and clean the values for output - if (isset($item['first_preferred'])) { + if (!empty($item['first_preferred'])) { $cck_fullname['first_preferred'] = strip_tags($item['first_preferred']); + } else if (!empty($item['first'])) { + $cck_fullname['first'] = strip_tags($item['first']); } $output .= theme('cck_fullname', $cck_fullname, $field); return $output;