diff --git a/api/src/Mail.php b/api/src/Mail.php index 5d37d2781d..7fa923783e 100644 --- a/api/src/Mail.php +++ b/api/src/Mail.php @@ -1777,6 +1777,16 @@ class Mail //error_log(__METHOD__.' ('.__LINE__.') '.$headerObject['SUBJECT'].'->'.array2string($_headerObject->getEnvelope()->__get('from'))); if(is_array($headerObject['FROM']) && $headerObject['FROM'][0]) { $retValue['header'][$sortOrder[$uid]]['sender_address'] = self::decode_header($headerObject['FROM'][0],true); + if (count($headerObject['FROM'])>1) + { + $ki=0; + foreach($headerObject['FROM'] as $k => $add) + { + if ($k==0) continue; + $retValue['header'][$sortOrder[$uid]]['additional_from_addresses'][$ki] = self::decode_header($add,true); + $ki++; + } + } } if(is_array($headerObject['REPLY-TO']) && $headerObject['REPLY-TO'][0]) { $retValue['header'][$sortOrder[$uid]]['reply_to_address'] = self::decode_header($headerObject['REPLY-TO'][0],true); diff --git a/api/templates/default/etemplate2.css b/api/templates/default/etemplate2.css index e10337ec95..74b49cc77a 100644 --- a/api/templates/default/etemplate2.css +++ b/api/templates/default/etemplate2.css @@ -207,6 +207,9 @@ a.et2_url.url { .et2_email > span.email { display: none; } +.et2_email a:not(:first-child) { + margin-left: 1em; +} /** * Button widget - text only, and icon */ diff --git a/mail/inc/class.mail_ui.inc.php b/mail/inc/class.mail_ui.inc.php index b5f9aff667..02e83ef5b8 100644 --- a/mail/inc/class.mail_ui.inc.php +++ b/mail/inc/class.mail_ui.inc.php @@ -2003,6 +2003,7 @@ $filter['before']= date("d-M-Y", $cutoffdate2); { $data["fromaddress"] = $header['sender_address']; } + $data['additionalfromaddress'] = $header['additional_from_addresses']; if (in_array("ccaddress", $cols)) { $data['ccaddress'] = $header['cc_addresses']; diff --git a/mail/js/app.js b/mail/js/app.js index b966e36489..8fb3b50bdd 100644 --- a/mail/js/app.js +++ b/mail/js/app.js @@ -1006,7 +1006,6 @@ app.classes.mail = AppJS.extend( // Widget ID:data key map of widgets we can directly set from cached data var data_widgets = { - 'previewFromAddress': 'fromaddress', 'previewDate': 'date', 'previewSubject': 'subject' }; @@ -1051,6 +1050,7 @@ app.classes.mail = AppJS.extend( // TO addresses have the first one split out, not all together // list of keys: var expand_content = [ + {build_children: true, data_one: 'fromaddress', data: 'additionalfromaddress', widget: 'additionalFromAddress', line: 'mailPreviewHeadersFrom'}, {build_children: true, data_one: 'toaddress', data: 'additionaltoaddress', widget: 'additionalToAddress', line: 'mailPreviewHeadersTo'}, {build_children: true, data: 'ccaddress', widget: 'additionalCCAddress', line: 'mailPreviewHeadersCC'}, {build_children: false, data: 'attachmentsBlock', widget:'previewAttachmentArea', line: 'mailPreviewHeadersAttachments'} diff --git a/mail/templates/default/display.xet b/mail/templates/default/display.xet index 66553808f4..d0b51b57c3 100644 --- a/mail/templates/default/display.xet +++ b/mail/templates/default/display.xet @@ -12,7 +12,9 @@ - + + + diff --git a/mail/templates/default/index.xet b/mail/templates/default/index.xet index 74922ea872..bce093c591 100644 --- a/mail/templates/default/index.xet +++ b/mail/templates/default/index.xet @@ -13,7 +13,9 @@ - + + +