По заявлениям разработчиков почтового сервера Zimbra, время отправки или получения письма не важно для пользователей, поэтому в WEB-клиенте Zimbra его нет.

It’s a UX decision based on prioritizing screen real estate and providing format that meets most user’s needs.

Однако, это не очень удобно и не привычно — все почтовые клиенты показывают нам дату и время. Исправляем эту несправедливость и делаем так, чтобы в списке сообщений выводилась полная информация о времени получения письма. Первую часть этого решения можно найти на странице багтрекера Zimbra.

На нашем сервере переходим в директорию

/opt/zimbra/mailboxd/webapps/zimbra/js/

Делаем резервные копии двух файлов

cp MailCore_all.js MailCore_all.js_BACKUP
cp MailCore_all.js.zgz MailCore_all.js.zgz_BACKUP

Далее редактируем первый файл MailCore_all.js. Находим строчку

var date = AjxDateUtil.computeDateStr(params.now || new Date(), item.date);

и меняем её на

var date = AjxDateUtil.computeDateTimeString(new Date(item.date));

Далее закатываем этот файл в gz

gzip -c MailCore_all.js > MailCore_all.js.gz

И переименовываем его

mv MailCore_all.js.gz MailCore_all.js.zgz

Что касается backend части, всё готово. Дата будет выдаваться в список целиком, в виде 18 Янв 2018 г. 16:23:46.

Но в этот момент возникает другая проблема: в списке сообщений блок для вывода даты слишком узкий и вся дата по-прежнему не видна. Информации с багтрекера в этом месте стало мало, потому что решение предложенное там не работало. Поэтому было решено править файл CSS, отвечающий за стиль этого блока.

Идём в
/opt/zimbra/mailboxd/webapps/zimbra/skins/_base/base3

Редактируем файл skin.css. Ищем там стиль:

.ZmMsgListDate {
position:absolute;
right:0px;
text-align:right;
width:75px;
width:6.8rem;
}

И меняем его на

.ZmMsgListDate {
position:absolute;
right:0px;
text-align:right;
width:75px;
width:10.8rem;
}

После этого перезагружаем Zimbra

service zimbra restart

И видим, что в списке сообщений (и входящих, и исходящих) появилась полные дата и время. Готово!