Mail: Use et2-select-email for displaying addresses in preview

This commit is contained in:
nathan 2022-06-21 16:34:57 -06:00
parent 34b0dc3e35
commit d9400430e5
6 changed files with 260 additions and 375 deletions

View File

@ -144,7 +144,7 @@ export class Et2Select extends Et2WithSearchMixin(Et2InvokerMixin(Et2WidgetWithS
// Only do this on firstUpdated() otherwise it is impossible to clear the field // Only do this on firstUpdated() otherwise it is impossible to clear the field
const valueArray = Array.isArray(this.value) ? this.value : (!this.value ? [] : this.value.toString().split(',')); const valueArray = Array.isArray(this.value) ? this.value : (!this.value ? [] : this.value.toString().split(','));
// value not in options --> use empty_label, if exists, or first option otherwise // value not in options --> use empty_label, if exists, or first option otherwise
if(!this.multiple && this.select_options.length > 0 && this.select_options.filter((option) => valueArray.find(val => val == option.value)).length === 0) if(!this.multiple && this.select_options.length > 0 && !this.onchange && this.select_options.filter((option) => valueArray.find(val => val == option.value)).length === 0)
{ {
this.value = this.empty_label ? "" : "" + this.select_options[0]?.value; // ""+ to cast value of 0 to "0", to not replace with "" this.value = this.empty_label ? "" : "" + this.select_options[0]?.value; // ""+ to cast value of 0 to "0", to not replace with ""
} }

View File

@ -18,7 +18,13 @@ import {et2_button} from "../../api/js/etemplate/et2_widget_button";
import {egw_getObjectManager} from '../../api/js/egw_action/egw_action.js'; import {egw_getObjectManager} from '../../api/js/egw_action/egw_action.js';
import {egwIsMobile, egwSetBit} from "../../api/js/egw_action/egw_action_common.js"; import {egwIsMobile, egwSetBit} from "../../api/js/egw_action/egw_action_common.js";
import {EGW_AO_FLAG_DEFAULT_FOCUS} from "../../api/js/egw_action/egw_action_constants.js"; import {EGW_AO_FLAG_DEFAULT_FOCUS} from "../../api/js/egw_action/egw_action_constants.js";
import {egw_keycode_translation_function, egw_keycode_makeValid, egw_keyHandler} from "../../api/js/egw_action/egw_keymanager.js"; import {
egw_keycode_translation_function,
egw_keycode_makeValid,
egw_keyHandler
} from "../../api/js/egw_action/egw_keymanager.js";
import {Et2UrlEmailReadonly} from "../../api/js/etemplate/Et2Url/Et2UrlEmailReadonly";
import {Et2SelectEmail} from "../../api/js/etemplate/Et2Select/Et2SelectEmail";
/* required dependency, commented out because no module, but egw:uses is no longer parsed /* required dependency, commented out because no module, but egw:uses is no longer parsed
*/ */
@ -28,7 +34,7 @@ import {egw_keycode_translation_function, egw_keycode_makeValid, egw_keyHandler}
* @augments AppJS * @augments AppJS
*/ */
app.classes.mail = AppJS.extend( app.classes.mail = AppJS.extend(
{ {
appname: 'mail', appname: 'mail',
/** /**
* modified attribute in mail app to test new entries get added on top of list * modified attribute in mail app to test new entries get added on top of list
@ -1059,18 +1065,22 @@ app.classes.mail = AppJS.extend(
{ {
var value = remembervalue+(remembervalue?',':'')+content[i]; var value = remembervalue+(remembervalue?',':'')+content[i];
var url_email_options = { var url_email_options = {
id:widget.id+'_'+i, id: widget.id + '_' + i,
value:value, value: value,
readonly:true, readonly: true,
contact_plus:true, contact_plus: true,
full_email:typeof field['full_email'] !='undefined'?field['full_email']:true full_email: typeof field['full_email'] != 'undefined' ? field['full_email'] : true
}; };
var email = et2_createWidget('url-email',url_email_options,widget); var email = et2_createWidget('url-email', url_email_options, widget);
email.loadingFinished(); email.loadingFinished();
remembervalue = ''; remembervalue = '';
} }
} }
} }
else if (widget instanceof Et2SelectEmail)
{
widget.value = content;
}
else else
{ {
widget.set_value({content: content}); widget.set_value({content: content});
@ -1270,10 +1280,10 @@ app.classes.mail = AppJS.extend(
// TO addresses have the first one split out, not all together // TO addresses have the first one split out, not all together
// list of keys: // list of keys:
var expand_content = [ var expand_content = [
{build_children: true, data_one: 'fromaddress', data: 'additionalfromaddress', widget: 'additionalFromAddress', line: 'mailPreviewHeadersFrom'}, {build_children: false, data_one: 'fromaddress', data: 'additionalfromaddress', widget: 'fromAddress', line: 'mailPreviewHeadersFrom'},
{build_children: true, data_one: 'toaddress', data: 'additionaltoaddress', widget: 'additionalToAddress', line: 'mailPreviewHeadersTo'}, {build_children: false, data_one: 'toaddress', data: 'additionaltoaddress', widget: 'toAddress', line: 'mailPreviewHeadersTo'},
{build_children: true, data: 'ccaddress', widget: 'additionalCCAddress', line: 'mailPreviewHeadersCC'}, {build_children: false, data: 'ccaddress', widget: 'CCAddress', line: 'mailPreviewHeadersCC'},
{build_children: false, data: 'attachmentsBlock', widget:'previewAttachmentArea', line: 'mailPreviewHeadersAttachments'} {build_children: false, data: 'attachmentsBlock', widget: 'previewAttachmentArea', line: 'mailPreviewHeadersAttachments'}
]; ];
// Undock the preview before running expandOnClick, because we // Undock the preview before running expandOnClick, because we

View File

@ -447,15 +447,17 @@ div.mail-compose_fileselector {
width: 100%; width: 100%;
} }
#mail-index_mailPreview { #mail-index_mailPreview {
overflow: hidden; overflow: hidden;
position: relative; position: relative;
background-color: white; background-color: white;
} }
div#mail-index_mailPreview > div {
padding-left: 8px !important; div#mail-index_mailPreview > div, div#mail-index_mailPreview > et2-hbox {
padding-left: 8px !important;
} }
#mail-index_mailPreview .et2_email>span{
display: inline; #mail-index_mailPreview .et2_email > span {
display: inline;
} }
.maildisplayAllAdresses { .maildisplayAllAdresses {
max-height: 245px !important; max-height: 245px !important;
@ -598,37 +600,46 @@ div.mail-display > div:first-parent > div.first-parent
overflow: hidden; overflow: hidden;
right: 8px; right: 8px;
} }
.mailDisplayHeaderSection { .mailDisplayHeaderSection {
position: absolute; position: absolute;
top: 12px; top: 12px;
} }
div.mailDisplayHeaders > div:first-parent { div.mailDisplayHeaders > div:first-parent {
overflow: hidden; overflow: hidden;
} }
div.mailDisplayHeaders > span:first-child, div.mailPreviewHeaders > span:first-child {
width: 7em; div.mailDisplayHeaders > span:first-child, div.mailPreviewHeaders > span:first-child {
display: inline-block; width: 7em;
display: inline-block;
} }
div.mailDisplayHeaders et2-select-email, div.mailPreviewHeaders et2-select-email {
display: inline-block;
}
#mail-display_toolbar { #mail-display_toolbar {
display: inline-flex; display: inline-flex;
} }
div.mailComposeHeaders > span:first-child { div.mailComposeHeaders > span:first-child {
width: 8em; width: 8em;
} }
div.mailDisplayHeaders div.mail_extraEmails
{ div.mailDisplayHeaders div.mail_extraEmails {
display: inline-block; display: inline-block;
max-height: 1.3em; max-height: 1.3em;
max-width: 50%; max-width: 50%;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
vertical-align: top; vertical-align: top;
} }
div.mailDisplayHeaders div.mail_extraEmails.visible
{ div.mailDisplayHeaders div.mail_extraEmails.visible {
position: fixed; position: fixed;
left: 7em; left: 7em;
display: block; display: block;
max-height: 8em; max-height: 8em;
min-width: 30em; min-width: 30em;

View File

@ -11,38 +11,36 @@
<image src="mail"/> <image src="mail"/>
<description value="Select an item to read"/> <description value="Select an item to read"/>
</old-box> </old-box>
<old-hbox width="100%" id="mailPreviewHeadersFrom" class="mailPreviewHeaders"> <old-hbox width="100%" id="mailPreviewHeadersFrom" class="mailPreviewHeaders">
<description value="From"/> <description value="From"/>
<old-hbox id="additionalFromAddress" class="mail_extraEmails"> <et2-select-email id="fromAddress" readonly="true"></et2-select-email>
</old-hbox> </old-hbox>
<buttononly class="transparent-button" statustext="Show all Addresses" image="foldertree_nolines_plus" onclick="app.mail.showAllHeader"/> <old-hbox id="mailPreviewHeadersSubject" class="mailPreviewHeaders">
</old-hbox> <description value="Subject"/>
<old-hbox id="mailPreviewHeadersSubject" class="mailPreviewHeaders"> <description align="left" id="previewSubject" readonly="true"
<description value="Subject"/> hover_action="app.mail.modifyMessageSubjectDialog"
<description align="left" id="previewSubject" readonly="true" hover_action="app.mail.modifyMessageSubjectDialog" hover_action_title="Modify subject of this message"/> hover_action_title="Modify subject of this message"/>
</old-hbox> </old-hbox>
<old-hbox id="mailPreviewHeadersDate" class="mailPreviewHeaders"> <old-hbox id="mailPreviewHeadersDate" class="mailPreviewHeaders">
<description value="Date"/> </old-hbox>
<date-time align="left" id="previewDate" readonly="true"/> <et2-hbox width="100%" id="mailPreviewHeadersTo" class="mailPreviewHeaders">
</old-hbox> <description value="To"/>
<old-hbox width="100%" id="mailPreviewHeadersTo" class="mailPreviewHeaders"> <et2-select-email id="toAddress" readonly="true"></et2-select-email>
<description value="To"/> <description align="right" value="Date"/>
<old-hbox id="additionalToAddress" class="mail_extraEmails"> <date-time align="right" id="previewDate" readonly="true"/>
</old-hbox> </et2-hbox>
<buttononly class="transparent-button" statustext="Show all Addresses" image="foldertree_nolines_plus" onclick="app.mail.showAllHeader"/> <old-hbox id="mailPreviewHeadersCC" class="mailPreviewHeaders">
</old-hbox> <description value="CC"/>
<old-hbox id="mailPreviewHeadersCC" class="mailPreviewHeaders"> <et2-select-email id="CCAddress" readonly="true"></et2-select-email>
<description value="CC"/> </old-hbox>
<old-hbox id="additionalCCAddress" class="mail_extraEmails"> <old-hbox class="mailPreviewHeaders smimeIcons">
</old-hbox> <image id="smime_signature" src="smime_sign" statustext="Smime signed message" disabled="true"
<buttononly class="transparent-button" statustext="Show all Addresses" image="foldertree_nolines_plus" onclick="app.mail.showAllHeader"/> align="right" width="24"/>
</old-hbox> <image id="smime_encryption" src="smime_encrypt" statustext="Smime encrypted message"
<old-hbox class="mailPreviewHeaders smimeIcons"> disabled="true" align="right" width="24"/>
<image id="smime_signature" src="smime_sign" statustext="Smime signed message" disabled="true" align="right" width="24"/> </old-hbox>
<image id="smime_encryption" src="smime_encrypt" statustext="Smime encrypted message" disabled="true" align="right" width="24"/> <old-hbox id="mailPreviewHeadersAttachments" class="mailPreviewHeaders">
</old-hbox> <description value="Attachments"/>
<old-hbox id="mailPreviewHeadersAttachments" class="mailPreviewHeaders">
<description value="Attachments"/>
<grid disabled="@no_griddata" id="previewAttachmentArea" class="previewAttachmentArea egwGridView_grid"> <grid disabled="@no_griddata" id="previewAttachmentArea" class="previewAttachmentArea egwGridView_grid">
<columns> <columns>
<column disabled="!@showtempname"/> <column disabled="!@showtempname"/>
@ -52,100 +50,126 @@
<column width="70%" /> <column width="70%" />
<column width="11%" /> <column width="11%" />
<column width="3%"/> <column width="3%"/>
<column width="3%"/> <column width="3%"/>
<column width="3%"/> <column width="3%"/>
<column /> <column/>
</columns> </columns>
<rows> <rows>
<row class="row attachmentRow"> <row class="row attachmentRow">
<description id="${row}[attachment_number]" /> <description id="${row}[attachment_number]"/>
<description id="${row}[partID]" /> <description id="${row}[partID]"/>
<description id="${row}[type]" /> <description id="${row}[type]"/>
<description id="${row}[winmailFlag]" /> <description id="${row}[winmailFlag]"/>
<description class="et2_link useEllipsis" id="${row}[filename]" extra_link_target="$row_cont[windowName]" extra_link_popup="$row_cont[popup]" no_lang="1" expose_view="true" mime="$row_cont[type]" mime_data="$row_cont[mime_data]" href="$row_cont[mime_url]"/> <description class="et2_link useEllipsis" id="${row}[filename]"
<description align="right" id="${row}[size]"/> extra_link_target="$row_cont[windowName]"
<buttononly id="${row}[save]" image="fileexport" onclick="app.mail.saveAttachmentHandler(widget,'downloadOneAsFile', ${row})" statustext="Save to disk"/> extra_link_popup="$row_cont[popup]" no_lang="1" expose_view="true"
<buttononly id="${row}[saveAsVFS]" disabled="$row_cont[no_vfs]" image="filemanager/navbar" onclick="app.mail.saveAttachmentHandler(widget,'saveOneToVfs', ${row})" statustext="Save to filemanager"/> mime="$row_cont[type]" mime_data="$row_cont[mime_data]"
<buttononly class="$row_cont[classSaveAllPossiblyDisabled]" disabled="$row_cont[no_vfs]" id="${row}[save_all]" image="mail/save_all" onclick="app.mail.saveAttachmentHandler(widget,'saveAllToVfs', ${row})" statustext="Save all attachments to filemanager"/> href="$row_cont[mime_url]"/>
<buttononly class="$row_cont[classSaveAllPossiblyDisabled]" id="${row}[save_zip]" image="mail/save_zip" onclick="app.mail.saveAttachmentHandler(widget,'downloadAllToZip', ${row})" statustext="Save as Zip"/> <description align="right" id="${row}[size]"/>
</row> <buttononly id="${row}[save]" image="fileexport"
</rows> onclick="app.mail.saveAttachmentHandler(widget,'downloadOneAsFile', ${row})"
</grid> statustext="Save to disk"/>
<buttononly class="transparent-button" statustext="Show all attachments" image="foldertree_nolines_plus" width="16px" height="16px" onclick="app.mail.showAllHeader"/> <buttononly id="${row}[saveAsVFS]" disabled="$row_cont[no_vfs]"
</old-hbox> image="filemanager/navbar"
<old-box id="mailPreviewContainer"> onclick="app.mail.saveAttachmentHandler(widget,'saveOneToVfs', ${row})"
<iframe frameborder="1" id="messageIFRAME" scrolling="auto"/> statustext="Save to filemanager"/>
</old-box> <buttononly class="$row_cont[classSaveAllPossiblyDisabled]" disabled="$row_cont[no_vfs]"
</old-vbox> id="${row}[save_all]" image="mail/save_all"
</split> onclick="app.mail.saveAttachmentHandler(widget,'saveAllToVfs', ${row})"
</template> statustext="Save all attachments to filemanager"/>
<template id="mail.index.nosplitter" template="" lang="" group="0" version="1.9.001"> <buttononly class="$row_cont[classSaveAllPossiblyDisabled]" id="${row}[save_zip]"
<nextmatch id="nm" onselect="app.mail.mail_preview" template="mail.index.rows" header_left="mail.index.add" header_right="mail.index.header_right"/> image="mail/save_zip"
</template> onclick="app.mail.saveAttachmentHandler(widget,'downloadAllToZip', ${row})"
<template id="mail.index.rows" template="" lang="" group="0" version="1.9.001"> statustext="Save as Zip"/>
<grid width="100%"> </row>
<columns> </rows>
<column width="20"/> </grid>
<column width="20"/> <buttononly class="transparent-button" statustext="Show all attachments"
<column width="40%"/> image="foldertree_nolines_plus" width="16px" height="16px"
<column minWidth="42" width="95"/> onclick="app.mail.showAllHeader"/>
<column width="95"/> </old-hbox>
<column width="95"/> <old-box id="mailPreviewContainer">
<column width="30%"/> <iframe frameborder="1" id="messageIFRAME" scrolling="auto"/>
<column width="30%"/> </old-box>
<column width="80"/> </old-vbox>
<column width="80"/> </split>
</columns> </template>
<rows> <template id="mail.index.nosplitter" template="" lang="" group="0" version="1.9.001">
<row class="th"> <nextmatch id="nm" onselect="app.mail.mail_preview" template="mail.index.rows" header_left="mail.index.add"
<nextmatch-header statustext="Status" label="St." id="status"/> header_right="mail.index.header_right"/>
<nextmatch-header statustext="attachments, ..." label="..." id="attachments"/> </template>
<nextmatch-sortheader label="subject" id="subject"/> <template id="mail.index.rows" template="" lang="" group="0" version="1.9.001">
<nextmatch-sortheader align="center" label="date" id="date" sortmode="DESC"/> <grid width="100%">
<nextmatch-sortheader align="center" label="arrival" id="arrival"/> <columns>
<nextmatch-sortheader label="mail-address" id="address"/> <column width="20"/>
<nextmatch-sortheader label="to" id="toaddress"/> <column width="20"/>
<nextmatch-sortheader label="from" id="fromaddress"/> <column width="40%"/>
<nextmatch-sortheader align="center" label="size" id="size"/> <column minWidth="42" width="95"/>
<nextmatch-header statustext="security" label="Security" id="security"/> <column width="95"/>
</row> <column width="95"/>
<row class="$row_cont[class]"> <column width="30%"/>
<description span="1" class="status_img"/> <column width="30%"/>
<html id="${row}[attachments]"/> <column width="80"/>
<vbox> <column width="80"/>
<description id="${row}[subject]" no_lang="1"/> </columns>
<description id="${row}[bodypreview]" no_lang="1" class='et2_label bodypreview'/> <rows>
</vbox> <row class="th">
<hbox> <nextmatch-header statustext="Status" label="St." id="status"/>
<date-time_today align="center" id="${row}[date]" readonly="true"/> <nextmatch-header statustext="attachments, ..." label="..." id="attachments"/>
</hbox> <nextmatch-sortheader label="subject" id="subject"/>
<date-time_today align="center" id="${row}[modified]" readonly="true"/> <nextmatch-sortheader align="center" label="date" id="date" sortmode="DESC"/>
<url-email id="${row}[address]" contact_plus = "true" readonly="true"/> <nextmatch-sortheader align="center" label="arrival" id="arrival"/>
<url-email id="${row}[toaddress]" contact_plus = "true" readonly="true"/> <nextmatch-sortheader label="mail-address" id="address"/>
<url-email id="${row}[fromaddress]" contact_plus = "true" readonly="true"/> <nextmatch-sortheader label="to" id="toaddress"/>
<vfs-size align="right" id="${row}[size]" no_lang="1" readonly="true"/> <nextmatch-sortheader label="from" id="fromaddress"/>
<image src="$row_cont[smime]" /> <nextmatch-sortheader align="center" label="size" id="size"/>
</row> <nextmatch-header statustext="security" label="Security" id="security"/>
</rows> </row>
</grid> <row class="$row_cont[class]">
</template> <description span="1" class="status_img"/>
<template id="mail.index.add" template="" lang="" group="0" version="1.9.001"> <html id="${row}[attachments]"/>
<buttononly id="button[mailcreate]" onclick="app.mail.mail_compose(false);" label="Compose" image="add"/> <vbox>
</template> <description id="${row}[subject]" no_lang="1"/>
<template id="mail.index.header_right" template="" lang="" group="0" version="1.9.001"> <description id="${row}[bodypreview]" no_lang="1" class='et2_label bodypreview'/>
<hbox id="mail.index.vacationnotice" class="mail-index_vacation"><vbox> </vbox>
<description id="nm[vacationnotice]" class="@nm[vacationclass]"/> <hbox>
<description id="nm[vacationrange]" class="@nm[vacationrangeclass]"/></vbox> <date-time_today align="center" id="${row}[date]" readonly="true"/>
</hbox> </hbox>
<hbox id="mail.index.datefilter" class="mail-index_datefilter"> <date-time_today align="center" id="${row}[modified]" readonly="true"/>
<date id="startdate" label="Start" onchange="app.mail.mail_refreshMessageGrid(false,true);"/> <url-email id="${row}[address]" contact_plus="true">
<date id="enddate" label="End" onchange="app.mail.mail_refreshMessageGrid(false,true);"/> <button slot="prefix" image="add"/>
</hbox> </url-email>
<hbox id="mail.index.quotabox" class="mail-index_quotabox"><progress id="nm[quotainpercent]" label="@nm[quota]" class="@nm[quotaclass]"/></hbox> <url-email id="${row}[toaddress]" contact_plus="true" readonly="true"/>
</template> <url-email id="${row}[fromaddress]" contact_plus="true" readonly="true"/>
<template id="mail.index" template="" lang="" group="0" version="1.9.001"> <vfs-size align="right" id="${row}[size]" no_lang="1" readonly="true"/>
<tree autoloading="mail.mail_ui.ajax_foldertree" id="nm[foldertree]" onclick="app.mail.mail_changeFolder" parent_node="mail-tree_target" onopenstart="app.mail.subscription_autoloadingStart" onopenend="app.mail.subscription_autoloadingEnd" highlighting="true"/> <image src="$row_cont[smime]"/>
<template id="splitter" height="100%" template="mail.index.splitter"/> </row>
<iframe frameborder="1" id="extra_iframe" scrolling="auto" disabled="true"/> </rows>
</template> </grid>
</template>
<template id="mail.index.add" template="" lang="" group="0" version="1.9.001">
<buttononly id="button[mailcreate]" onclick="app.mail.mail_compose(false);" label="Compose" image="add"/>
</template>
<template id="mail.index.header_right" template="" lang="" group="0" version="1.9.001">
<hbox id="mail.index.vacationnotice" class="mail-index_vacation">
<vbox>
<description id="nm[vacationnotice]" class="@nm[vacationclass]"/>
<description id="nm[vacationrange]" class="@nm[vacationrangeclass]"/>
</vbox>
</hbox>
<hbox id="mail.index.datefilter" class="mail-index_datefilter">
<date id="startdate" label="Start" onchange="app.mail.mail_refreshMessageGrid(false,true);"/>
<date id="enddate" label="End" onchange="app.mail.mail_refreshMessageGrid(false,true);"/>
</hbox>
<hbox id="mail.index.quotabox" class="mail-index_quotabox">
<progress id="nm[quotainpercent]" label="@nm[quota]" class="@nm[quotaclass]"/>
</hbox>
</template>
<template id="mail.index" template="" lang="" group="0" version="1.9.001">
<tree autoloading="mail.mail_ui.ajax_foldertree" id="nm[foldertree]" onclick="app.mail.mail_changeFolder"
parent_node="mail-tree_target" onopenstart="app.mail.subscription_autoloadingStart"
onopenend="app.mail.subscription_autoloadingEnd" highlighting="true"/>
<template id="splitter" height="100%" template="mail.index.splitter"/>
<iframe frameborder="1" id="extra_iframe" scrolling="auto" disabled="true"/>
</template>
</overlay> </overlay>

View File

@ -21,7 +21,6 @@
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License * @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @author Stefan Reinhard <stefan.reinhard@pixelegg.de> * @author Stefan Reinhard <stefan.reinhard@pixelegg.de>
* @package mail * @package mail
* @version $Id$
*/ */
textarea { textarea {
font-family: monospace, sans-serif; font-family: monospace, sans-serif;
@ -97,32 +96,32 @@ tr.mail.deleted td:first-child {
border-left: 6px solid silver; border-left: 6px solid silver;
text-decoration: line-through; text-decoration: line-through;
} }
span.status_img { .status_img {
display: inline-block; display: inline-block;
width: 12px; width: 12px;
height: 12px; height: 12px;
background-repeat: no-repeat; background-repeat: no-repeat;
background-image: url(../default/images/kmmsgread.png); background-image: url(../default/images/kmmsgread.png);
} }
tr.deleted span.status_img { tr.deleted .status_img {
background-image: url(../default/images/kmmsgdel.png); background-image: url(../default/images/kmmsgdel.png);
} }
tr.unseen span.status_img { tr.unseen .status_img {
background-image: url(../default/images/kmmsgunseen.png); background-image: url(../default/images/kmmsgunseen.png);
} }
tr.flagged_seen span.status_img { tr.flagged_seen .status_img {
background-image: url(../default/images/read_flagged_small.png) !important; background-image: url(../default/images/read_flagged_small.png) !important;
} }
tr.flagged_unseen span.status_img { tr.flagged_unseen .status_img {
background-image: url(../default/images/unread_flagged_small.png) !important; background-image: url(../default/images/unread_flagged_small.png) !important;
} }
tr.recent span.status_img { tr.recent .status_img {
background-image: url(../default/images/kmmsgnew.png) !important; background-image: url(../default/images/kmmsgnew.png) !important;
} }
tr.replied span.status_img { tr.replied .status_img {
background-image: url(../default/images/kmmsgreplied.png) !important; background-image: url(../default/images/kmmsgreplied.png) !important;
} }
tr.forwarded span.status_img { tr.forwarded .status_img {
background-image: url(../default/images/kmmsgforwarded.png) !important; background-image: url(../default/images/kmmsgforwarded.png) !important;
} }
.subjectBold { .subjectBold {
@ -239,6 +238,7 @@ pre {
.containerTableStyle { .containerTableStyle {
width: 100%; width: 100%;
overflow: hidden; overflow: hidden;
overflow-y: auto;
} }
.dtree { .dtree {
font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
@ -460,7 +460,8 @@ div.mail-compose_fileselector {
position: relative; position: relative;
background-color: white; background-color: white;
} }
div#mail-index_mailPreview > div { div#mail-index_mailPreview > div,
div#mail-index_mailPreview > et2-hbox {
padding-left: 8px !important; padding-left: 8px !important;
} }
#mail-index_mailPreview .et2_email > span { #mail-index_mailPreview .et2_email > span {
@ -622,6 +623,10 @@ div.mailPreviewHeaders > span:first-child {
width: 7em; width: 7em;
display: inline-block; display: inline-block;
} }
div.mailDisplayHeaders et2-select-email,
div.mailPreviewHeaders et2-select-email {
display: inline-block;
}
#mail-display_toolbar { #mail-display_toolbar {
display: inline-flex; display: inline-flex;
} }
@ -648,7 +653,7 @@ div.mailDisplayHeaders div.mail_extraEmails.visible {
box-shadow: 5px 5px 5px #aaa; box-shadow: 5px 5px 5px #aaa;
border: 1px solid gray; border: 1px solid gray;
} }
div.mailComposeBody { .mailComposeBody {
white-space: normal !important; white-space: normal !important;
} }
#mail-compose_mail_plaintext { #mail-compose_mail_plaintext {
@ -722,7 +727,7 @@ div.mailPreviewHeaders #mail-index_previewAttachmentArea.visible {
#mail-folder_management table.et2_grid tr td { #mail-folder_management table.et2_grid tr td {
padding: 0px; padding: 0px;
} }
#mail-subscribe table.et2_grid tr td div.et2_box, #mail-subscribe table.et2_grid tr td et2-box,
#mail-folder_management table.et2_grid tr td .mail_subscription_header { #mail-folder_management table.et2_grid tr td .mail_subscription_header {
height: 500px; height: 500px;
overflow: auto; overflow: auto;
@ -862,15 +867,15 @@ span#mail-compose_replyto_expander {
padding: 0; padding: 0;
} }
/*Make file uploads in compose dialog invisible*/ /*Make file uploads in compose dialog invisible*/
div.mail-compose_toolbar_assist div.mail-compose_fileselector, .mail-compose_toolbar_assist div.mail-compose_fileselector,
#mail-compose_selectFromVFSForCompose, #mail-compose_selectFromVFSForCompose,
div.mail-compose_toolbar_assist { .mail-compose_toolbar_assist {
display: none; display: none;
} }
/*Make file uploads in compose dialog invisible*/ /*Make file uploads in compose dialog invisible*/
div.mail-compose_toolbar_assist div.mail-compose_fileselector, .mail-compose_toolbar_assist div.mail-compose_fileselector,
#mail-compose_selectFromVFSForCompose, #mail-compose_selectFromVFSForCompose,
div.mail-compose_toolbar_assist { .mail-compose_toolbar_assist {
display: none; display: none;
} }
div.mailComposeHeaderSection > table { div.mailComposeHeaderSection > table {
@ -959,12 +964,6 @@ div#mail-index_nm.splitter-pane {
#mail-index_mailSplitter .splitter-bar-horizontal { #mail-index_mailSplitter .splitter-bar-horizontal {
background: white; background: white;
} }
#mail-compose .tox.tox-tinymce .tox-tbtn--bespoke:first-child > .tox-tbtn__select-label {
width: 6px;
}
#mail-compose .tox.tox-tinymce .tox-tbtn--bespoke .tox-tbtn__select-label {
width: 3em;
}
#calendar-meeting table.et2_grid.meetingRequest td { #calendar-meeting table.et2_grid.meetingRequest td {
padding-left: 8px !important; padding-left: 8px !important;
} }
@ -1201,24 +1200,14 @@ body {
#mail-compose .mailComposeHeadersSection #mail-compose_to input { #mail-compose .mailComposeHeadersSection #mail-compose_to input {
width: auto; width: auto;
} }
#mail-compose .mailComposeHeaders span#mail-compose_cc_expander, #mail-compose .mailComposeHeaders #mail-compose_cc_expander,
#mail-compose .mailComposeHeadersSection span#mail-compose_cc_expander, #mail-compose .mailComposeHeadersSection #mail-compose_cc_expander,
#mail-compose .mailComposeHeaders span#mail-compose_cc_expander, #mail-compose .mailComposeHeaders #mail-compose_bcc_expander,
#mail-compose .mailComposeHeadersSection span#mail-compose_cc_expander, #mail-compose .mailComposeHeadersSection #mail-compose_bcc_expander,
#mail-compose .mailComposeHeaders span#mail-compose_cc_expander, #mail-compose .mailComposeHeaders #mail-compose_folder_expander,
#mail-compose .mailComposeHeadersSection span#mail-compose_cc_expander, #mail-compose .mailComposeHeadersSection #mail-compose_folder_expander,
#mail-compose .mailComposeHeaders span#mail-compose_bcc_expander, #mail-compose .mailComposeHeaders #mail-compose_replyto_expander,
#mail-compose .mailComposeHeadersSection span#mail-compose_bcc_expander, #mail-compose .mailComposeHeadersSection #mail-compose_replyto_expander {
#mail-compose .mailComposeHeaders span#mail-compose_bcc_expander,
#mail-compose .mailComposeHeadersSection span#mail-compose_bcc_expander,
#mail-compose .mailComposeHeaders span#mail-compose_folder_expander,
#mail-compose .mailComposeHeadersSection span#mail-compose_folder_expander,
#mail-compose .mailComposeHeaders span#mail-compose_folder_expander,
#mail-compose .mailComposeHeadersSection span#mail-compose_folder_expander,
#mail-compose .mailComposeHeaders span#mail-compose_replyto_expander,
#mail-compose .mailComposeHeadersSection span#mail-compose_replyto_expander,
#mail-compose .mailComposeHeaders span#mail-compose_replyto_expander,
#mail-compose .mailComposeHeadersSection span#mail-compose_replyto_expander {
background: transparent; background: transparent;
border: none; border: none;
color: #26537c; color: #26537c;
@ -1227,6 +1216,7 @@ body {
width: auto; width: auto;
white-space: nowrap; white-space: nowrap;
text-align: left; text-align: left;
cursor: pointer;
} }
#mail-compose .mailComposeHeaders input#mail-compose_subject, #mail-compose .mailComposeHeaders input#mail-compose_subject,
#mail-compose .mailComposeHeadersSection input#mail-compose_subject { #mail-compose .mailComposeHeadersSection input#mail-compose_subject {
@ -1276,141 +1266,6 @@ body {
#mail-display { #mail-display {
min-height: 768px; min-height: 768px;
padding: 5px; padding: 5px;
/*Toolbar*/
}
#mail-display .et2_toolbar,
#mail-display #mail-display_toolbar,
#mail-display mail-display_displayToolbar {
/*.gradient_thead;*/
background-color: transparent;
color: #000000;
clear: both;
height: 36px;
/*OPEN SINGLE WINDOW AFTER CLICK ON MAIL*/
}
#mail-display .et2_toolbar div.et2_toolbar_actionlist,
#mail-display #mail-display_toolbar div.et2_toolbar_actionlist,
#mail-display mail-display_displayToolbar div.et2_toolbar_actionlist {
margin-top: 0px;
margin-left: 0px;
}
#mail-display .et2_toolbar button,
#mail-display #mail-display_toolbar button,
#mail-display mail-display_displayToolbar button {
/*.background_color_10_gray;*/
-webkit-box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.5);
-moz-box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.5);
box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.5);
border: 1px solid rgba(0, 0, 0, 0.15);
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
height: 24px;
}
#mail-display .et2_toolbar span.ui-state-default,
#mail-display #mail-display_toolbar span.ui-state-default,
#mail-display mail-display_displayToolbar span.ui-state-default {
float: left;
background-image: none;
}
#mail-display .et2_toolbar #mail-display_forward_wrapper li a img,
#mail-display #mail-display_toolbar #mail-display_forward_wrapper li a img,
#mail-display mail-display_displayToolbar #mail-display_forward_wrapper li a img {
width: 16px;
margin-right: 3px;
}
#mail-display .et2_toolbar #mail-display_save_wrapper button#mail-display_save,
#mail-display #mail-display_toolbar #mail-display_save_wrapper button#mail-display_save,
#mail-display mail-display_displayToolbar #mail-display_save_wrapper button#mail-display_save {
background-image: url('../pixelegg/images/speichern.png');
background-position: left center;
background-repeat: no-repeat;
background-size: 16px 16px;
box-shadow: none;
}
#mail-display .et2_toolbar #mail-display_save_wrapper button#mail-display_save:hover img,
#mail-display #mail-display_toolbar #mail-display_save_wrapper button#mail-display_save:hover img,
#mail-display mail-display_displayToolbar #mail-display_save_wrapper button#mail-display_save:hover img {
display: none;
background-image: none;
}
#mail-display .et2_toolbar #mail-display_save_wrapper button#mail-display_save:focus,
#mail-display #mail-display_toolbar #mail-display_save_wrapper button#mail-display_save:focus,
#mail-display mail-display_displayToolbar #mail-display_save_wrapper button#mail-display_save:focus {
box-shadow: none;
}
#mail-display .et2_toolbar #mail-display_save_wrapper li a img,
#mail-display #mail-display_toolbar #mail-display_save_wrapper li a img,
#mail-display mail-display_displayToolbar #mail-display_save_wrapper li a img {
width: 16px;
margin-right: 3px;
}
#mail-display .et2_toolbar #mail-display_view_wrapper button#mail-display_view,
#mail-display #mail-display_toolbar #mail-display_view_wrapper button#mail-display_view,
#mail-display mail-display_displayToolbar #mail-display_view_wrapper button#mail-display_view {
box-shadow: none;
}
#mail-display .et2_toolbar #mail-display_view_wrapper button#mail-display_view:hover img,
#mail-display #mail-display_toolbar #mail-display_view_wrapper button#mail-display_view:hover img,
#mail-display mail-display_displayToolbar #mail-display_view_wrapper button#mail-display_view:hover img {
display: none;
background-image: none;
}
#mail-display .et2_toolbar #mail-display_view_wrapper button#mail-display_view:focus,
#mail-display #mail-display_toolbar #mail-display_view_wrapper button#mail-display_view:focus,
#mail-display mail-display_displayToolbar #mail-display_view_wrapper button#mail-display_view:focus {
box-shadow: none;
}
#mail-display .et2_toolbar #mail-display_view_wrapper li a img,
#mail-display #mail-display_toolbar #mail-display_view_wrapper li a img,
#mail-display mail-display_displayToolbar #mail-display_view_wrapper li a img {
width: 16px;
margin-right: 3px;
}
#mail-display .et2_toolbar #mail-display_mark_wrapper button#mail-display_mark,
#mail-display #mail-display_toolbar #mail-display_mark_wrapper button#mail-display_mark,
#mail-display mail-display_displayToolbar #mail-display_mark_wrapper button#mail-display_mark {
box-shadow: none;
}
#mail-display .et2_toolbar #mail-display_mark_wrapper button#mail-display_mark:hover img,
#mail-display #mail-display_toolbar #mail-display_mark_wrapper button#mail-display_mark:hover img,
#mail-display mail-display_displayToolbar #mail-display_mark_wrapper button#mail-display_mark:hover img {
display: none;
background-image: none;
}
#mail-display .et2_toolbar #mail-display_mark_wrapper button#mail-display_mark:focus,
#mail-display #mail-display_toolbar #mail-display_mark_wrapper button#mail-display_mark:focus,
#mail-display mail-display_displayToolbar #mail-display_mark_wrapper button#mail-display_mark:focus {
box-shadow: none;
}
#mail-display .et2_toolbar #mail-display_mark_wrapper li a img,
#mail-display #mail-display_toolbar #mail-display_mark_wrapper li a img,
#mail-display mail-display_displayToolbar #mail-display_mark_wrapper li a img {
width: 16px;
margin-right: 3px;
}
#mail-display .et2_toolbar #toolbar-actionlist,
#mail-display #mail-display_toolbar #toolbar-actionlist,
#mail-display mail-display_displayToolbar #toolbar-actionlist {
padding: 0px 3px;
}
#mail-display .et2_toolbar #toolbar-actionlist span[data-group],
#mail-display #mail-display_toolbar #toolbar-actionlist span[data-group],
#mail-display mail-display_displayToolbar #toolbar-actionlist span[data-group] {
margin: 0px 40px 0 0;
}
#mail-display .et2_toolbar #toolbar-actionlist button,
#mail-display #mail-display_toolbar #toolbar-actionlist button,
#mail-display mail-display_displayToolbar #toolbar-actionlist button {
/*.background_color_10_gray;*/
-webkit-box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.5);
-moz-box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.5);
box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.5);
border: 1px solid rgba(0, 0, 0, 0.15);
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
height: 27px;
} }
#mail-display .mailDisplayAttachments { #mail-display .mailDisplayAttachments {
max-height: 12%; max-height: 12%;
@ -1455,11 +1310,6 @@ div.ui-toolbar-menulist {
border: 1px solid rgba(0, 0, 0, 0.15); border: 1px solid rgba(0, 0, 0, 0.15);
} }
.et2_toolbar_actionlist .et2_toolbar-dropdown { .et2_toolbar_actionlist .et2_toolbar-dropdown {
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
padding: 3px !important;
background: #fafafa !important;
background-color: #fafafa !important; background-color: #fafafa !important;
} }
.et2_toolbar_actionlist .et2_toolbar-dropdown .et2_dropdown { .et2_toolbar_actionlist .et2_toolbar-dropdown .et2_dropdown {
@ -1470,13 +1320,9 @@ div.ui-toolbar-menulist {
height: 24px !important; height: 24px !important;
} }
.et2_toolbar_actionlist .et2_toolbar-dropdown .et2_dropdown button { .et2_toolbar_actionlist .et2_toolbar-dropdown .et2_dropdown button {
margin: 0px;
padding-top: -3px !important;
-webkit-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0); -webkit-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0);
-moz-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0); -moz-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0);
box-shadow: 0px 0px 0px rgba(0, 0, 0, 0); box-shadow: 0px 0px 0px rgba(0, 0, 0, 0);
background: #fafafa !important;
background-color: #fafafa !important;
min-height: auto; min-height: auto;
} }
.et2_toolbar_actionlist .et2_toolbar-dropdown .et2_dropdown button img { .et2_toolbar_actionlist .et2_toolbar-dropdown .et2_dropdown button img {
@ -1522,8 +1368,8 @@ div#displayToolbar-menulist img {
font-size: 150%; font-size: 150%;
padding-bottom: 20px; padding-bottom: 20px;
} }
#mail-subscribe table.et2_grid tr td div.et2_box, #mail-subscribe table.et2_grid tr td et2-box,
#mail-folder_management table.et2_grid tr td div.et2_box { #mail-folder_management table.et2_grid tr td et2-box {
margin-top: 16px; margin-top: 16px;
height: 484px; height: 484px;
overflow: auto; overflow: auto;
@ -1672,7 +1518,7 @@ tr.mail.deleted td:first-child {
border-left: 6px solid silver; border-left: 6px solid silver;
text-decoration: line-through; text-decoration: line-through;
} }
span.status_img { .status_img {
display: inline-block; display: inline-block;
width: 16px; width: 16px;
height: 16px; height: 16px;
@ -1680,25 +1526,25 @@ span.status_img {
background-image: url(../pixelegg/images/kmmsgread.svg); background-image: url(../pixelegg/images/kmmsgread.svg);
background-size: 16px 16px; background-size: 16px 16px;
} }
tr.deleted span.status_img { tr.deleted .status_img {
background-image: url(../pixelegg/images/kmmsgdel.svg); background-image: url(../pixelegg/images/kmmsgdel.svg);
} }
tr.unseen span.status_img { tr.unseen .status_img {
background-image: url(../pixelegg/images/kmmsgunseen.svg); background-image: url(../pixelegg/images/kmmsgunseen.svg);
} }
tr.flagged_seen span.status_img { tr.flagged_seen .status_img {
background-image: url(../pixelegg/images/read_flagged_small.svg) !important; background-image: url(../pixelegg/images/read_flagged_small.svg) !important;
} }
tr.flagged_unseen span.status_img { tr.flagged_unseen .status_img {
background-image: url(../pixelegg/images/unread_flagged_small.svg) !important; background-image: url(../pixelegg/images/unread_flagged_small.svg) !important;
} }
tr.recent span.status_img { tr.recent .status_img {
background-image: url(../pixelegg/images/kmmsgnew.svg) !important; background-image: url(../pixelegg/images/kmmsgnew.svg) !important;
} }
tr.replied span.status_img { tr.replied .status_img {
background-image: url(../pixelegg/images/mail_reply.svg) !important; background-image: url(../pixelegg/images/mail_reply.svg) !important;
} }
tr.forwarded span.status_img { tr.forwarded .status_img {
background-image: url(../pixelegg/images/mail_forward.svg) !important; background-image: url(../pixelegg/images/mail_forward.svg) !important;
} }
.subjectBold { .subjectBold {
@ -1792,6 +1638,7 @@ pre {
.containerTableStyle { .containerTableStyle {
width: 100%; width: 100%;
overflow: hidden; overflow: hidden;
overflow-y: auto;
} }
.dtree { .dtree {
font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
@ -1925,18 +1772,6 @@ input[type=button] {
#mail-index_toolbar { #mail-index_toolbar {
background: none; background: none;
height: 35px; height: 35px;
/* Elemente */
}
#mail-index_toolbar button {
height: 24px !important;
}
#mail-index_toolbar button span {
padding: 0;
}
#mail-index_toolbar button span img {
width: 16px;
height: 16px;
padding: 0px;
} }
/*AN / To*/ /*AN / To*/
div.mailPreviewHeaders div.mail_extraEmails { div.mailPreviewHeaders div.mail_extraEmails {

View File

@ -448,7 +448,8 @@ div.mail-compose_fileselector {
position: relative; position: relative;
background-color: white; background-color: white;
} }
div#mail-index_mailPreview > div { div#mail-index_mailPreview > div,
div#mail-index_mailPreview > et2-hbox {
padding-left: 8px !important; padding-left: 8px !important;
} }
#mail-index_mailPreview .et2_email > span { #mail-index_mailPreview .et2_email > span {
@ -610,6 +611,10 @@ div.mailPreviewHeaders > span:first-child {
width: 7em; width: 7em;
display: inline-block; display: inline-block;
} }
div.mailDisplayHeaders et2-select-email,
div.mailPreviewHeaders et2-select-email {
display: inline-block;
}
#mail-display_toolbar { #mail-display_toolbar {
display: inline-flex; display: inline-flex;
} }