Update to 1.4.11

This commit is contained in:
meaz 2021-03-29 13:54:18 +02:00
parent 5db07e7a80
commit 7d37918fb1
Signed by: meaz
GPG Key ID: CD7A47B2F1ED43B4
19 changed files with 6249 additions and 235 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

23
deps/less.min.js vendored

File diff suppressed because one or more lines are too long

View File

@ -13,7 +13,7 @@
@color-main-dark: darken(@color-main, 35%);
@color-black: #161b1d;
@color-font: lighten(@color-black, 10%);
@color-link: #bd139a;
@color-link: #bd139a; //#00acff;
@color-link-hover: darken(@color-link, 10%);
@color-border: #ddd;
@color-error: #ff5552;
@ -94,7 +94,7 @@
@color-list-unread-status: @color-warning;
@color-attachmentlist-border: #f4f4f4;
@color-attachmentlist-background: ##fcfcfc;
@color-attachmentlist-background: #fcfcfc;
// Drag-n-drop layer
@color-drag-layer: #fff;
@ -214,3 +214,4 @@
@color-image-tools: #fff;
@color-image-tools-background: fadeout(@color-main, 60%);
@color-image-tools-hover: fadeout(@color-main, 50%);

View File

@ -1 +1,171 @@
@font-face{font-family:'Icons';font-style:normal;font-weight:900;src:url("../fonts/fa-solid-900.woff2") format('woff2'),url("../fonts/fa-solid-900.woff") format('woff')}@font-face{font-family:'Icons';font-style:normal;font-weight:400;src:url("../fonts/fa-regular-400.woff2") format('woff2'),url("../fonts/fa-regular-400.woff") format('woff')}@font-face{font-family:'Roboto';font-style:normal;font-weight:400;src:local('Roboto'),local('Roboto-Regular'),url('../fonts/roboto-v19-regular.woff2') format('woff2'),url('../fonts/roboto-v19-regular.woff') format('woff')}@font-face{font-family:'Roboto';font-style:italic;font-weight:400;src:local('Roboto Italic'),local('Roboto-Italic'),url('../fonts/roboto-v19-italic.woff2') format('woff2'),url('../fonts/roboto-v19-italic.woff') format('woff')}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url('../fonts/roboto-v19-regular-700.woff2') format('woff2'),url('../fonts/roboto-v19-regular-700.woff') format('woff')}@font-face{font-family:'Roboto';font-style:italic;font-weight:700;src:local('Roboto Bold Italic'),local('Roboto-BoldItalic'),url('../fonts/roboto-v19-italic-700.woff2') format('woff2'),url('../fonts/roboto-v19-italic-700.woff') format('woff')}body,button,input,optgroup,select,textarea,.popover{font-family:Roboto,sans-serif}button,input,select,textarea{line-height:initial}input{vertical-align:middle}a{color:#00acff}a:hover{color:#008acc}a.disabled{pointer-events:none}a.disabled:not(.btn){opacity:.5}.mce-content-body{margin:4px;color:#2c363a}.mce-content-body div.pre{font-family:monospace}.mce-content-body blockquote{border-left:#1010ff 2px solid;margin:0;padding:0 .4em}.rcmail-inline-message{font-family:Roboto,sans-serif;font-size:14px;padding:.5em;margin:0 0 .5em 0;opacity:.95;color:#2c363a;background-color:rgba(246,96,157,0.2);display:flex;align-items:center}.rcmail-inline-message:before{font-size:1.25em;display:block;float:left;margin:0 .25rem 0 0;width:1.18em;height:1em;font-family:'Icons';font-style:normal;font-weight:900;text-decoration:inherit;text-align:center;speak:none;font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:1.5em;line-height:1;width:1em;margin-right:.3em;content:"\f071";color:#f6609d}.rcmail-inline-message span{line-height:1.5}.rcmail-inline-message a{color:#00acff}.rcmail-inline-message a:hover{color:#008acc}.rcmail-inline-message button{vertical-align:middle;white-space:nowrap;padding:.375em .75em;margin-left:.5em;font-size:1em;line-height:1.5;border-radius:.25em;border:1px solid transparent;color:#fff;background:#50162d}.rcmail-inline-message button:focus{box-shadow:0 0 0 .2rem rgba(80,22,45,0.5)}.rcmail-inline-message button:hover{background:#300d1b;border-color:#280b17}.rcmail-inline-message button:not([disabled]):not(.disabled):active{background:#240a14;border-color:#1c0810;box-shadow:0 0 0 .2rem rgba(80,22,45,0.53)}.rcmail-inline-buttons{margin:0}
/**
* Roundcube Webmail styles for the Elastic skin
*
* Copyright (c) The Roundcube Dev Team
*
* The contents are subject to the Creative Commons Attribution-ShareAlike
* License. It is allowed to copy, distribute, transmit and to adapt the work
* by keeping credits to the original authors in the README.md file.
* See http://creativecommons.org/licenses/by-sa/3.0/ for details.
*/
/* Style for embedded pages and TinyMCE editor content page */
/**
* Roundcube Webmail styles for the Elastic skin
*
* Copyright (c) The Roundcube Dev Team
*
* The contents are subject to the Creative Commons Attribution-ShareAlike
* License. It is allowed to copy, distribute, transmit and to adapt the work
* by keeping credits to the original authors in the README.md file.
* See http://creativecommons.org/licenses/by-sa/3.0/ for details.
*/
/*** Fonts ***/
@font-face {
font-family: 'Icons';
font-style: normal;
font-weight: 900;
src: url("../fonts/fa-solid-900.woff2") format('woff2'), url("../fonts/fa-solid-900.woff") format('woff');
}
@font-face {
font-family: 'Icons';
font-style: normal;
font-weight: 400;
src: url("../fonts/fa-regular-400.woff2") format('woff2'), url("../fonts/fa-regular-400.woff") format('woff');
}
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
src: local('Roboto'), local('Roboto-Regular'), url('../fonts/roboto-v19-regular.woff2') format('woff2'), url('../fonts/roboto-v19-regular.woff') format('woff');
}
@font-face {
font-family: 'Roboto';
font-style: italic;
font-weight: 400;
src: local('Roboto Italic'), local('Roboto-Italic'), url('../fonts/roboto-v19-italic.woff2') format('woff2'), url('../fonts/roboto-v19-italic.woff') format('woff');
}
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 700;
src: local('Roboto Bold'), local('Roboto-Bold'), url('../fonts/roboto-v19-regular-700.woff2') format('woff2'), url('../fonts/roboto-v19-regular-700.woff') format('woff');
}
@font-face {
font-family: 'Roboto';
font-style: italic;
font-weight: 700;
src: local('Roboto Bold Italic'), local('Roboto-BoldItalic'), url('../fonts/roboto-v19-italic-700.woff2') format('woff2'), url('../fonts/roboto-v19-italic-700.woff') format('woff');
}
/* Reset some Bootstrap style */
body,
button,
input,
optgroup,
select,
textarea,
.popover {
font-family: Roboto, sans-serif;
}
button,
input,
select,
textarea {
line-height: initial;
}
input {
vertical-align: middle;
}
a {
color: #bd139a;
}
a:hover {
color: #8f0e74;
}
a.disabled {
pointer-events: none;
}
a.disabled:not(.btn) {
opacity: 0.5;
}
.mce-content-body {
margin: 4px;
color: #2c363a;
}
.mce-content-body div.pre {
font-family: monospace;
}
.mce-content-body blockquote {
border-left: #1010ff 2px solid;
margin: 0;
padding: 0 0.4em;
}
.rcmail-inline-message {
font-family: Roboto, sans-serif;
font-size: 14px;
padding: 0.5em;
margin: 0 0 0.5em 0;
opacity: 0.95;
color: #2c363a;
background-color: rgba(246, 96, 157, 0.2);
display: flex;
align-items: center;
}
.rcmail-inline-message:before {
font-size: 1.25em;
display: block;
float: left;
margin: 0 0.25rem 0 0;
width: 1.18em;
height: 1em;
font-family: 'Icons';
font-style: normal;
font-weight: 900;
text-decoration: inherit;
text-align: center;
speak: none;
font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
font-size: 1.5em;
line-height: 1;
width: 1em;
margin-right: 0.3em;
content: "\f071";
color: #F6609D;
}
.rcmail-inline-message span {
line-height: 1.5;
}
.rcmail-inline-message a {
color: #bd139a;
}
.rcmail-inline-message a:hover {
color: #8f0e74;
}
.rcmail-inline-message button {
vertical-align: middle;
white-space: nowrap;
padding: 0.375em 0.75em;
margin-left: 0.5em;
font-size: 1em;
line-height: 1.5;
border-radius: 0.25em;
border: 1px solid transparent;
color: #fff;
background: #50162d;
}
.rcmail-inline-message button:focus {
box-shadow: 0 0 0 0.2rem rgba(80, 22, 45, 0.5);
}
.rcmail-inline-message button:hover {
background: #300d1b;
border-color: #280b17;
}
.rcmail-inline-message button:not([disabled]):not(.disabled):active {
background: #240a14;
border-color: #1c0810;
box-shadow: 0 0 0 0.2rem rgba(80, 22, 45, 0.53);
}
.rcmail-inline-buttons {
margin: 0;
}

View File

@ -29,7 +29,7 @@
}
.rcmail-inline-message {
.font-family;
.font-family();
font-size: @page-font-size;
padding: .5em;
margin: 0 0 .5em 0;
@ -40,7 +40,7 @@
align-items: center;
&:before {
.font-icon-class;
.font-icon-class();
font-size: 1.5em;
line-height: 1;
width: 1em;

View File

@ -69,7 +69,7 @@
/* Reset some Bootstrap style */
body, button, input, optgroup, select, textarea, .popover {
.font-family;
.font-family();
}
button, input, select, textarea {

View File

@ -80,7 +80,7 @@ body {
background-color: @color-layout-header-background;
.header-title {
.overflow-ellipsis;
.overflow-ellipsis();
flex: 1;
text-align: center;
margin: 0 -20rem;

File diff suppressed because one or more lines are too long

View File

@ -276,7 +276,7 @@ body.task-error-login #layout {
}
blockquote {
.overflow-ellipsis;
.overflow-ellipsis();
color: @color-blockquote-0;
border-left: 2px solid @color-blockquote-0-border;
border-right: 2px solid @color-blockquote-0-border;
@ -309,7 +309,7 @@ body.task-error-login #layout {
border: 1px solid @color-black-shade-border;
border-radius: .3rem;
line-height: 1;
.font-family; // don't inherit monospace font
.font-family(); // don't inherit monospace font
&:after {
&:extend(.font-icon-class);
@ -351,7 +351,7 @@ body.task-error-login #layout {
color: @color-mail-headers;
.header-title {
.overflow-ellipsis;
.overflow-ellipsis();
white-space: nowrap;
max-width: 8em;
font-weight: bold;

View File

@ -35,7 +35,7 @@ font.bold {
div {
line-height: 1.6em;
.overflow-ellipsis;
.overflow-ellipsis();
}
}
@ -145,7 +145,7 @@ p.image-attachment {
}
.image-filename {
.overflow-ellipsis;
.overflow-ellipsis();
left: 0;
top: 0;
right: 0;
@ -397,7 +397,7 @@ fieldset.image-attachment {
}
.nav-link {
.overflow-ellipsis;
.overflow-ellipsis();
}
}
@ -447,7 +447,7 @@ fieldset.image-attachment {
vertical-align: middle;
&:first-child {
.overflow-ellipsis;
.overflow-ellipsis();
text-align: left;
}
}

View File

@ -51,7 +51,7 @@
border: 0;
& :not(.mce-ico) {
.font-family;
.font-family();
}
}
@ -155,7 +155,7 @@
}
.mce-btn {
.btn-secondary;
.btn-secondary();
border-radius: .3rem;
border-color: transparent;
@ -166,7 +166,7 @@
}
&.mce-primary {
.btn-primary;
.btn-primary();
}
button:hover,
@ -674,7 +674,7 @@ div.mce-menubtn.mce-opened {
.mce-text {
font-size: 1.2rem;
.font-family;
.font-family();
line-height: @layout-touch-menu-record-height;
color: @color-font;
}
@ -689,7 +689,7 @@ div.mce-menubtn.mce-opened {
position: relative;
&:after {
.font-icon-class; // :extend() does not work here
.font-icon-class(); // :extend() does not work here
content: @fa-var-check;
position: absolute;
right: .5rem;
@ -703,7 +703,7 @@ div.mce-menubtn.mce-opened {
position: relative;
&:after {
.font-icon-class; // :extend() does not work here
.font-icon-class(); // :extend() does not work here
content: @fa-var-angle-right;
position: absolute;
right: .5rem;
@ -775,7 +775,7 @@ html.touch .mce-grid td {
}
button {
.btn-secondary;
.btn-secondary();
padding: .5rem .75rem;
line-height: 1.5;
position: relative;
@ -813,7 +813,7 @@ html.touch .mce-grid td {
flex: 1;
margin: auto;
padding-left: 1rem;
.overflow-ellipsis;
.overflow-ellipsis();
}
span.img {

View File

@ -175,7 +175,7 @@ input.smart-upload {
flex-wrap: nowrap;
& > *:first-child {
.overflow-ellipsis;
.overflow-ellipsis();
min-width: 8rem;
&:not(select) {
@ -774,7 +774,7 @@ html.ms .propform {
border: 1px solid @color-input-border;
&.focused {
.style-input-focus;
.style-input-focus();
}
// TODO: style button focus
@ -933,7 +933,7 @@ html.ms .propform {
height: auto; // reset .form-control height
&.focus {
.style-input-focus;
.style-input-focus();
}
.recipient {
@ -956,7 +956,7 @@ html.ms .propform {
}
.name {
.overflow-ellipsis;
.overflow-ellipsis();
flex-grow: 1;
line-height: 1.1;
padding: floor(.25 * @page-font-size);
@ -1030,7 +1030,7 @@ html.ms .propform {
}
&[tabindex="-1"] {
.style-input-focus;
.style-input-focus();
}
li.tagedit-listelement-new {
@ -1078,7 +1078,7 @@ html.ms .propform {
}
span {
.overflow-ellipsis;
.overflow-ellipsis();
flex-grow: 1;
display: inline-block;
line-height: 1.4;
@ -1377,7 +1377,7 @@ html.ms .propform {
.custom-file-label {
white-space: nowrap;
.overflow-ellipsis;
.overflow-ellipsis();
padding-right: 100px;
line-height: 1.5 !important;
}

View File

@ -108,7 +108,7 @@
a.btn-link,
button {
.overflow-ellipsis;
.overflow-ellipsis();
min-width: 5rem;
margin: floor(.65 * @page-font-size) floor(.3 * @page-font-size);

View File

@ -29,7 +29,7 @@
}
tbody td {
.overflow-ellipsis;
.overflow-ellipsis();
outline: none;
a {
@ -65,7 +65,7 @@
}
td.name {
.overflow-ellipsis;
.overflow-ellipsis();
}
td.action {
@ -151,7 +151,7 @@ ul.listing {
}
li {
.overflow-ellipsis;
.overflow-ellipsis();
white-space: nowrap;
position: relative;
list-style: none;
@ -381,7 +381,7 @@ html.ie11 .listing.iconized li a:before {
}
td {
.overflow-ellipsis;
.overflow-ellipsis();
}
}
@ -408,7 +408,7 @@ ul.treelist {
}
& > a {
.overflow-ellipsis;
.overflow-ellipsis();
padding-left: @listing-treetoggle-width;
}
@ -484,7 +484,7 @@ ul.treelist {
right: 0;
min-width: 2em;
line-height: 1.4rem;
margin: (@listing-line-height - 1.4 * @page-font-size) / 2;
margin: ((@listing-line-height - 1.4 * @page-font-size) / 2);
padding: 0 .3em;
border-radius: .4em;
background: @color-list-badge-background;
@ -494,7 +494,7 @@ ul.treelist {
html.touch & {
line-height: 2rem;
margin: (@listing-touch-line-height - 2 * @page-font-size) / 2;
margin: ((@listing-touch-line-height - 2 * @page-font-size) / 2);
}
}
@ -587,7 +587,7 @@ table.fixedcopy {
}
&.fromto {
.overflow-ellipsis;
.overflow-ellipsis();
flex: 1;
font-size: 90%;
color: @color-list-secondary;
@ -596,7 +596,7 @@ table.fixedcopy {
}
&.subject {
.overflow-ellipsis;
.overflow-ellipsis();
width: 100%;
}
}
@ -963,7 +963,7 @@ html.touch {
}
&.uploading:before {
.animated-icon-class;
.animated-icon-class();
.font-icon-solid(@fa-var-circle-notch);
}
@ -974,7 +974,7 @@ html.touch {
}
.attachment-name {
.overflow-ellipsis;
.overflow-ellipsis();
color: @color-font;
}

View File

@ -17,7 +17,7 @@
white-space: nowrap;
a {
.overflow-ellipsis;
.overflow-ellipsis();
text-decoration: none;
&:before {
@ -141,7 +141,7 @@
}
.pagenav-text {
.overflow-ellipsis;
.overflow-ellipsis();
color: @color-list-pagenav;
flex-grow: 4;
font-size: 80%;
@ -297,7 +297,7 @@
}
& > span {
.overflow-ellipsis;
.overflow-ellipsis();
flex: 1;
}
}
@ -312,7 +312,7 @@
display: flex;
a:first-child {
.overflow-ellipsis;
.overflow-ellipsis();
flex: 1;
}

View File

@ -54,7 +54,7 @@
& > i.icon:before {
content: @fa-var-circle-notch;
.animated-icon-class;
.animated-icon-class();
width: 1em;
}
}
@ -96,7 +96,7 @@
white-space: nowrap;
.btn {
.overflow-ellipsis;
.overflow-ellipsis();
max-width: 220px;
}

85
ui.js
View File

@ -1558,9 +1558,7 @@ function rcube_elastic_ui()
case 'compose-encrypted':
// show the toolbar button for Mailvelope
if (args.status) {
$('.toolbar a.encrypt').parent().show();
}
$('.toolbar a.encrypt').parent().show();
break;
case 'compose-encrypted-signed':
@ -3121,9 +3119,6 @@ function rcube_elastic_ui()
function recipient_input(obj)
{
var list, input, selection = '',
input_len_update = function() {
input.css('width', Math.max(5, input.val().length * 15 + 10));
},
apply_func = function() {
// update the original input
$(obj).val(list.text() + input.val());
@ -3169,12 +3164,11 @@ function rcube_elastic_ui()
input.val(result.text);
apply_func();
input_len_update();
return result.recipients.length > 0;
},
parse_func = function(e) {
var paste, value = this.value;
parse_func = function(e, ac) {
var last, paste, value = this.value;
// On paste the text is not yet in the input we have to use clipboard.
// Also because on paste new-line characters are replaced by spaces (#6460)
@ -3185,6 +3179,16 @@ function rcube_elastic_ui()
value = value.substring(0, this.selectionStart) + paste + value.substring(this.selectionEnd);
e.preventDefault();
}
// #7231: When clicking on autocompletion list a change event
// is fired twice. We have to remove last recipient box if it is
// the same recpient (with incomplete email address).
// FIXME: Anyone with a better solution?
else if (ac) {
last = list.find('li.recipient').last();
if (last.length && this.value.indexOf(last.text().replace(/[ ,]+$/, '')) > -1) {
last.remove();
}
}
update_func(value);
},
@ -3201,20 +3205,17 @@ function rcube_elastic_ui()
return false;
}
}
input_len_update();
};
// Create the input element and "editable" area
input = $('<input>').attr({type: 'text', tabindex: $(obj).attr('tabindex')})
.on('paste change', parse_func)
.on('input', input_len_update) // only to fix input length after paste
.on('keydown', keydown_func)
.on('blur', function() { list.removeClass('focus'); })
.on('focus mousedown', function() { list.addClass('focus'); });
list = $('<ul>').addClass('form-control recipient-input ac-input rounded-left')
.append($('<li>').append(input))
.append($('<li class="input">').append(input))
// "selection" hack to allow text selection in the recipient box or multiple boxes (#7129)
.on('mouseup', function () { selection = window.getSelection().toString(); })
.on('click', function() { if (!selection.length) input.focus(); });
@ -3709,7 +3710,7 @@ function rcube_elastic_ui()
}
// make the textarea autoresizeable
textarea_autoresize_init(editor);
textarea_autoresize_init(obj);
// sanity check
if (sw.length != 1) {
@ -3741,37 +3742,47 @@ function rcube_elastic_ui()
*/
function textarea_autoresize_init(textarea)
{
var resize = function(e) {
clearTimeout(env.textarea_timer);
env.textarea_timer = setTimeout(function() {
var area = $(e.target),
initial_height = area.data('initial-height'),
scroll_height = area[0].scrollHeight;
var padding, minHeight,
resize = function() {
// Wait until the textarea is visible
if (!textarea.scrollHeight) {
return setTimeout(resize, 250);
}
// do nothing when the area is hidden
if (!scroll_height) {
if (!padding) {
padding = parseInt($(textarea).css('padding-top')) + parseInt($(textarea).css('padding-bottom')) + 2;
minHeight = $(textarea).height();
}
if (textarea.scrollHeight - padding <= minHeight) {
return;
}
if (!initial_height) {
area.data('initial-height', initial_height = scroll_height);
// To fix scroll-jump we'll re-apply scrollTop to the (scrolled) parent
// after we reset textarea height
var scroll_element, scroll_pos = 0;
$(textarea).parents().each(function() {
if (this.scrollTop > 0) {
scroll_element = this;
scroll_pos = this.scrollTop;
return false;
}
});
var oldHeight = $(textarea).outerHeight();
$(textarea).outerHeight(0);
var newHeight = Math.max(minHeight, textarea.scrollHeight);
$(textarea).outerHeight(oldHeight);
if (newHeight !== oldHeight) {
$(textarea).height(newHeight);
}
// strange effect in Chrome/Firefox when you delete a line in the textarea
// the scrollHeight is not decreased by the line height, but by 2px
// so jumps up many times in small steps, we'd rather use one big step
if (area.outerHeight() - scroll_height == 2) {
scroll_height -= 19; // 21px is the assumed line height
if (scroll_pos) {
scroll_element.scrollTop = scroll_pos;
}
};
area.outerHeight(Math.max(initial_height, scroll_height));
}, 10);
};
$(textarea).css('overflow-y', 'hidden').on('input', resize).trigger('input');
// Make sure the height is up-to-date also in time intervals
setInterval(function() { $(textarea).trigger('input'); }, 1000);
$(textarea).on('input', resize).trigger('input');
};
// Inititalizes smart list input

230
ui.min.js vendored
View File

@ -13,118 +13,118 @@
/*
magnet:?xt=urn:btih:90dc5c0be029de84e523b9b3922520e79e0e6f08&dn=cc0.txt CC0-1.0
*/
function rcube_elastic_ui(){function l(a,b,c){(a=w(a))&&rcmail.register_button(a.command,b,a.data.type,c,a.data.sel)}function t(a,b,c,d){var e=!0,g=$("<a>"),k=a.attr("id")||(new Date).getTime(),m=k+"-clone";c=a[0].className+(c?" "+c:"");if(!b)c=$.trim(c.replace("btn-primary","primary").replace(/(btn[a-z-]*|button|disabled)/g,"")),c+=" button"+(d?"":" disabled");else if(d=a.data("popup"))g.data({popup:d,"toggle-button":a.data("toggle-button")}),D(g[0]),e=!1,rcmail.register_menu_button(g[0],d);g.attr({id:m,
href:"#","class":c}).append($('<span class="inner">').text(a.text()));if(e)g.on("click",function(b){a.click()});n&&!b?(g.data("target",a),T.push($.extend({button_id:m},w(a[0].id)))):l(k,m,c.replace(" disabled",""));return g}function w(a){var b,c;for(c in rcmail.buttons)for(b=0;b<rcmail.buttons[c].length;b++){var d=rcmail.buttons[c][b];if(d.id==a)return{command:c,index:b,data:d}}}function A(){$("[data-list]").filter("ul,table").each(function(){var a,b=$(this),d=b.data("list");if(rcmail[d]&&rcmail[d].multiselect){var c=
b.parents("layout-sidebar,#layout-list,#layout-content").last();var e=c.find(".header");var h=e.find("ul");if(!h.length)h=e;else if(a=h.find("a.select").data("toggle-button"))a=$("#"+a);rcmail[d].enable_checkbox_selection();a||(a=$("<a>").attr({"class":"button selection disabled",role:"button",title:rcmail.gettext("select")}).on("click",function(){$(this).is(".active")&&b.toggleClass("withselection")}).append($('<span class="inner">').text(rcmail.gettext("select"))),h.is(".menu")?(a.prependTo(h).wrap('<li role="menuitem">'),
f.content&&(c=t(a,!0,"hidden-big hidden-large"),$('<li role="menuitem">').append(c).appendTo("#toolbar-menu"),a=a.add(c))):(e=b.data("list-select-replace"))?$(e).replaceWith(a):(a.appendTo(h).addClass("icon"),c.is("#layout-sidebar")||a.addClass("toolbar-button")));rcmail.addEventListener("listupdate",function(b){b.list&&b.list==rcmail[d]&&(b.rowcount?a.addClass("active").removeClass("disabled").attr("tabindex",0):a.removeClass("active").addClass("disabled").attr("tabindex",-1))})}J&&rcmail[d]&&("function"==
typeof rcmail[d].draggable?rcmail[d].draggable("destroy"):"boolean"==typeof rcmail[d].draggable&&(rcmail[d].draggable=!1))});window.MutationObserver&&$("[data-label-msg]").filter("ul,table").each(function(){var a=$('<div class="listing-info hidden">').insertAfter(this),b=$(this);var d=function(){var d=b.data("label-msg");var c=b.is("ul")?b:b.children("tbody");if(rcmail.env.search_request||rcmail.env.qsearch||!d||c.children(":visible").length)a.addClass("hidden");else{c=b.data("label-ext");var g=b.data("create-command");
!c||g&&!rcmail.commands[g]||(d+=" "+c);a.text(d).removeClass("hidden")}};var c=function(){if(rcmail.busy||!b.is(":visible"))return setTimeout(c,250);clearTimeout(h.list_timer);h.list_timer=setTimeout(d,50)};(new MutationObserver(c)).observe(b[0],{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]});c()});"print"!=rcmail.env.action&&$("#attachment-list > li").each(function(){U(this)});var a=function(a){"phone"==r&&rcmail.display_message(rcmail.gettext(a),"confirmation")};rcmail.addEventListener("fileappended",
function(b){b.attachment.complete&&(U(b.item),"text/vcard"==b.attachment.mimetype&&rcmail.commands["attach-vcard"]&&a("vcard_attachments.vcardattached"))}).addEventListener("managesieve.insertrow",function(a){p(a.obj)}).addEventListener("add-recipient",function(){a("recipientsadded")});rcmail.init_pagejumper(".pagenav > input");if("mail"==rcmail.task){if("compose"==rcmail.env.action&&(rcmail.addEventListener("compose-encrypted",function(a){$("a.mode-html, button.attach").prop("disabled",a.active);
$("a.attach, a.responses:not(.edit)")[a.active?"addClass":"removeClass"]("disabled")}),$("#layout-sidebar > .footer:not(.pagenav) > a.button").click(function(){$(this).is(".disabled")&&rcmail.display_message(rcmail.gettext("nocontactselected"),"warning")}),window.MutationObserver)){var b=$("#attachment-list"),c=function(){V("attach",0<b.children().length)};(new MutationObserver(c)).observe(b[0],{childList:!0});c()}rcmail.env.extwin||"compose"!=rcmail.env.action&&"show"!=rcmail.env.action||$("a.mail",
f.menu).attr({"aria-disabled":!1,onclick:"return rcmail.command('list','',this,event);"});"preview"!=rcmail.env.action&&"show"!=rcmail.env.action||$("a").filter('[href^="mailto:"]').each(function(){ia(this)})}else"settings"==rcmail.task&&(rcmail.addEventListener("identity-encryption-show",function(a){p(a.container)}),rcmail.addEventListener("identity-encryption-update",function(a){p(a.container)}));rcmail.set_env({thread_padding:"1.5rem",popup_width_small:1025,popup_width:1200});rcmail.env.devel_mode&&
window.less?less.pageLoadFinished.then(function(){E();rcmail.env.compose_focus_elem&&$(rcmail.env.compose_focus_elem).focus()}):E();var d=rcmail.env.date_format_localized;if(d){var e=function(a){$(a).filter(".datepicker").attr("placeholder",d);$(a).parent().find("select").each(function(){K(this)})};$("input.datepicker").each(function(){e(this)});rcmail.addEventListener("insert-edit-field",e)}}function p(a){a||(a=document);$("input.button,button",a).not(".btn").addClass("btn").not(".btn-primary,.primary,.mainaction").addClass("btn-secondary");
$("input.button.mainaction,button.primary,button.mainaction",a).addClass("btn-primary");$("button.btn.delete,button.btn.discard",a).addClass("btn-danger");$.each(["warning","error","information","confirmation"],function(){var b=this;$(".box"+b+":not(.ui.alert)",a).each(function(){L(this,b,!0)})});if(a!=document&&1==$(".popup",a).children().length){var b=$(".popup",a).children().first();if(b.is("img"))$(".popup",a).addClass("justified");else if(b.is("label")){var c=b.find("input").detach();b=b.detach();
var d=c.attr("id");d||c.attr("id",d="dialog-input-elastic");$(".popup",a).addClass("formcontent").append($('<div class="form-group row">').append(b.attr("for",d).addClass("col-sm-2 col-form-label")).append($('<div class="col-sm-10">').append(c)));c.focus()}}$("input:not(.button,.no-bs,[type=button],[type=radio],[type=checkbox]),textarea",$(".propform",a)).addClass("form-control");$("[type=checkbox]",$(".propform",a)).addClass("form-check-input");$("select",a).addClass("form-control custom-select");
a!=document&&$("input:not(.button,.no-bs,[type=button],[type=radio],[type=checkbox]),textarea",a).addClass("form-control");$("table.propform",a).each(function(){var a=0,b=0,d=["sm",4,8];$(this).attr("class").match(/cols-([a-z]+)-(\d)-(\d)/)&&(d=[RegExp.$1,RegExp.$2,RegExp.$3]);$(this).find("> tbody > tr, > tr").each(function(){var c=$(this),e=["form-group","row"];var g=c.children("td");if(2==g.length){var k=g.first();g=g.last();$("label",k).addClass("col-form-label");k.addClass("col-"+d[0]+"-"+d[1]);
g.addClass("col-"+d[0]+"-"+d[2]);1!=g.find("[type=checkbox]").length||g.find(".proplist").length?g.find("input:not([type=hidden]),textarea,radio,select").length?b++:(g.addClass("form-control-plaintext"),a++):(e.push("form-check"),g.find("a").length&&e.push("with-link"),b++);g.children(".datepicker")&&2==g.children("input").length&&g.addClass("datetime")}else 1==g.length&&g.css("width","100%");c.addClass(e.join(" "))});a>b&&$(this).addClass("text-only")});$("td.input-group",a).each(function(){$(this).children().slice(1).addClass("input-group-append")});
$("fieldset.propform:not(.groupped) div.row",a).each(function(){var a=0<$("input:not([type=hidden]),select,textarea",this).length;a&&$("input:not(.button,.no-bs,[type=button],[type=radio],[type=checkbox]),textarea",this).addClass("form-control");$(this).children().last().addClass("col-sm-8"+(a?"":" form-control-plaintext"));$(this).children().first().addClass("col-sm-4 col-form-label");$(this).addClass("form-group")});$("fieldset.propform.groupped fieldset",a).each(function(){$(".row",this).each(function(){var a=
0<$("input,select,textarea",this).length,b=$(this).children();a&&$("input:not(.button,.no-bs,[type=button],[type=radio],[type=checkbox]),textarea",this).addClass("form-control");if(!(2>b.length)){var d=b.first();d.is("select")?d.addClass("input-group-prepend"):d.wrap('<span class="input-group-prepend">').addClass("input-group-text");a||b.last().addClass("form-control-plaintext");$(".content",this).addClass("input-group-prepend input-group-append input-group-text");$("a.deletebutton",this).addClass("input-group-text icon delete").wrap('<span class="input-group-append">');
$(this).addClass("input-group")}})});$("fieldset.advanced",a).each(function(){var a=$(this).children(".propform").first();a.wrap($("<div>").addClass("collapse"));$(this).children("legend").first().addClass("closed").on("click",function(){a.parent().collapse("toggle");$(this).toggleClass("closed")})});$(".propform > .prop.block:not(.row)",a).each(function(){$(this).addClass("form-group row").each(function(){$("label",this).addClass("col-form-label").wrap($('<div class="col-sm-4">'));$("input,select,textarea",
this).wrap($('<div class="col-sm-8">'));$("input:not(.button,.no-bs,[type=button],[type=radio],[type=checkbox]),textarea",this).addClass("form-control")})});$("td.rowbuttons > a",a).addClass("btn");$("form.tabbed,div.tabbed",a).each(function(a,b){var d=[],c=$("<ul>").attr({"class":"nav nav-tabs",role:"tablist"});$(this).addClass("tab-content").children("fieldset").each(function(b,c){b=c.id||"tab"+a+"-"+b;var g=$(c).data("navlink-class");$(c).addClass("tab-pane").attr({id:b,role:"tabpanel"});b=$("<li>").addClass("nav-item").append($("<a>").addClass("nav-link"+
(g?" "+g:"")).attr({role:"tab",href:"#"+b}).text($("legend",c).first().text()).click(function(a){$(this).tab("show");x(a);return!1}));$("legend",c).first().hide();d.push(b)});c.append(d).insertBefore(b);$("a.nav-link",c).first().click()});$("input[type=file]:not(.custom-file-input)",a).each(function(){var a=rcmail.gettext("choosefile"+(this.multiple?"s":"")),b=$("<label>").attr({"class":"custom-file-label","data-browse":rcmail.gettext("browse")}).text(a);$(this).addClass("custom-file-input").wrap('<div class="custom-file">');
$(this).on("change",function(){var b=a;this.files.length&&(b=this.files[0].name,1<this.files.length&&(b+=", ..."));$(this).next().text(b)}).parent().append(b)});$("table:not(.table,.compact-table,.propform,.listing,.ui-datepicker-calendar)",a).filter(function(){return!$(this).parent().is(".propform")&&!$(this).parents(".message-htmlpart,.message-partheaders,.boxinformation,.raw-tables").length}).each(function(){var a=$(this).addClass("table");a.parent().addClass("table-responsive-sm");a.find("thead").addClass("thead-default")});
$("input.pretty-checkbox, .propform input[type=checkbox], .form-check input, .popupmenu.form input[type=checkbox], .menu input[type=checkbox]",a).each(function(){F(this)});$(a).is(".actionrow")&&$("input[type=checkbox]",a).each(function(){F(this)});$(".input-group-combo > select",a).first().on("change",function(){var a=$(this),b=function(){a[a.next().is(":visible")?"removeClass":"addClass"]("alone")};setTimeout(b,50);setTimeout(b,2E3)}).trigger("change");$("#message-objects",a).children(":not(.ui.alert)").add(".part-notice").each(function(){var a=
String($(this).removeClass("notice part-notice").attr("class")).split(/\s/)[0]||"warning";L(this,a);$(this).addClass("box"+a);$("a",this).addClass("btn btn-primary btn-sm")});$(".error",a).addClass("is-invalid");"login"==rcmail.env.task&&a==document&&($("#rcmloginsubmit").addClass("btn-lg text-uppercase w-100"),$("#login-form table tr").each(function(){var a=$("input,select",this),b=$("label",this),d=a.data("icon"),c=$("<i>").attr("class","input-group-text icon "+a.attr("name").replace("_",""));d&&
c.addClass(d);$(this).addClass("form-group row");b.parent().css("display","none");a.addClass(a.is("select")?"custom-select":"form-control").attr("placeholder",b.text()).before($('<span class="input-group-prepend">').append(c)).parent().addClass("input-group input-group-lg")}));$("select:not([multiple])",a).each(function(){K(this)})}function ja(a){if($(a).is(".mce-window")){var b=$(a).find(".mce-window-body"),c=$(a).find(".mce-foot > .mce-container-body");b.length&&p(b[0]);b.find("button").filter(function(){return 0<
$(this).parent(".mce-btn").length}).removeClass("btn btn-secondary");5===c.children(".mce-widget").length&&c.addClass("mce-search-foot");$(a).find(".mce-charmap").parent().parent().addClass("mce-charmap-dialog");$(a).find(".mce-combobox").each(function(){$(this).children(".mce-btn").length||$(this).addClass("mce-combobox-fake")});$(a).find(".mce-form > .mce-container-body").each(function(){4<$(this).children(".mce-formitem").length&&$(this).addClass("mce-form-split")});$(a).find(".mce-form").next(":not(.mce-formitem)").addClass("mce-form");
if(!u()){var d=0;c=b.height();$(a).find(".mce-form").each(function(){d=Math.max(d,$(this).height())});c<d&&(d+=(b.find(".mce-tabs").height()||0)+25,b.height(d),$(a).height($(a).height()+(d-c)),$(a).css("top",($(window).height()-$(a).height())/2+"px"))}}else $(a).is(".mce-menu")&&($(a).prepend($('<h3 class="popover-header">').append($('<a class="button icon "cancel">').text(rcmail.gettext("close")).on("click",function(){$(document.body).click()}))),window.MutationObserver&&(new MutationObserver(function(){"phone"==
r&&($(".mce-menu:visible").length?$("div.mce-overlay").length||$("<div>").attr("class","popover-overlay mce-overlay").appendTo("body").click(function(){$(this).remove()}):$("div.mce-overlay").click())})).observe(a,{attributes:!0}))}function ka(a,b){if(a.match(/_action=(create|add)/)||a.match(/_nav=hide/))$(h.frame_nav).addClass("hide-nav-buttons");else{var c,d,e;if((a=$("[data-list]",f.list).data("list"))&&(e=rcmail[a])){$(h.frame_nav).removeClass("hide-nav-buttons hidden");if(d=e.get_single_selection())e.rows&&
e.rows[d]&&!e.rows[d].expanded?e.expand_row(b,d):e.get_node&&(c=e.get_node(d))&&c.collapsed&&e.expand(d);var g,k,m=$("#"+rcmail.env.contentframe);b=$("a.button.next",h.frame_nav).off("click").addClass("disabled");c=$("a.button.prev",h.frame_nav).off("click").addClass("disabled");if((k=e.get_next())||rcmail.env.current_page<rcmail.env.pagecount)b.removeClass("disabled").on("click",function(){h.content_lock=!0;G(m);k?e.select(k):(rcmail.env.list_uid="FIRST",rcmail.command("nextpage"))});if((g=e.get_prev())&&
("*"!=g||"subscription_list"!=a)||1<rcmail.env.current_page)c.removeClass("disabled").on("click",function(){h.content_lock=!0;G(m);g?e.select(g):(rcmail.env.list_uid="LAST",rcmail.command("previouspage"))})}else $(h.frame_nav).is(".hide-nav-buttons")&&!$(".buttons",h.frame_nav).children().length&&$(h.frame_nav).addClass("hidden")}}function la(a){var b=[],c=$("#"+a.id).parent().is(".html-editor");a.config.plugins+=" autoresize";H().touch&&(a.config.toolbar_items_size=null,a.config.toolbar="undo redo | insert | styleselect",
a.config.plugins.match(/emoticons/)&&(a.config.toolbar+=" emoticons"));if("mail"==rcmail.task&&"compose"==rcmail.env.action){var d=$("#compose-content > form"),e=function(a){"Tab"==a.key&&a.shiftKey&&$("#compose-content > form").scrollTop(0)};b.push(function(a){a.on("keypress",e)});$("#composebody").on("keypress",e);d.on("scroll",function(){var a=$(".mce-container-body",d),b=$(".mce-top-part",a),c=a.offset(),e=d.offset().top;c&&0>c.top-e?b.css({position:"fixed",top:e+"px",width:a.width()+"px"}):b.css({position:"relative",
top:0,width:"auto"})});$(window).resize(function(){d.trigger("scroll")})}c&&(a.config.toolbar="plaintext | "+a.config.toolbar,a.config.setup_callback=function(a){a.addButton("plaintext",{tooltip:rcmail.gettext("plaintoggle"),icon:"plaintext",onclick:function(b){rcmail.command("toggle-editor",{id:a.id,html:!1},"",b.originalEvent)&&$("#"+a.id).parent().removeClass("ishtml")}})});rcmail.addEventListener("editor-load",function(a){$.each(b,function(){this(a.ref.editor)})})}function W(a){$("ul",a.obj).addClass("menu listing iconized");
$(a.obj).addClass("popupmenu popover");p(a.obj);$("input",a.obj).addClass("form-control");if(u()&&$(a.obj).is(".googie_window")){var b=rcmail.gettext("close");b=$("<a>").attr("class","button icon cancel").text(b).click(function(b){b.stopPropagation();$(".popover-overlay").remove();$(a.obj).hide()});$('<h3 class="popover-header">').append(b).prependTo(a.obj);$(".popover-overlay").length||$("<div>").attr("class","popover-overlay").appendTo("body").click(function(){$(this).remove()});$("ul,button",a.obj).click(function(a){$(a.target).is("input")||
$(".popover-overlay").remove()})}}function ma(a){n&&$.each(T,function(b,d){if(a.command==d.command)parent.$("#"+d.button_id)[a.status?"removeClass":"addClass"]("disabled")});if("mail"==rcmail.task)switch(a.command){case "reply-list":if(1==rcmail.env.reply_all_mode){var b=rcmail.gettext(a.status?"replylist":"replyall");$(".toolbar a.reply-all").attr("title",b).find(".inner").text(b)}break;case "compose-encrypted":a.status&&$(".toolbar a.encrypt").parent().show();break;case "compose-encrypted-signed":$("#encryption-menu-button").show()}}
function X(){var a=$(window).width();J=1024>=a;r=480>=a?"phone":1200<a?"large":768<a?"normal":"small"}function E(){var a;X();M();na();(a=u())?(rcmail.set_env(h.small_screen_config),rcmail.enable_command("extwin",!1)):(rcmail.set_env(h.config),rcmail.enable_command("extwin",!0));$.each(N,function(){$(this)[a?"hide":"show"]()})}function M(){if(!n||f.sidebar.length||f.list.length){switch(r){case "phone":Y();y(!1);break;case "small":Y();y(!0);break;case "normal":oa();break;case "large":pa()}"phone"==
r&&$("#logo").data("src-small")?$("#logo").attr("src",$("#logo").data("src-small")):$("#logo").attr("src",$("#logo").data("src-default"));B();bw.webkit&&bw.ipad&&bw.agent.match(/OS 9/)&&$(".iframe-wrapper").each(function(){var a=$(this).height();a&&$(this).children("iframe").height(a)})}else B()}function na(){var a=H(),b=$(document.documentElement);b[0].className.match(/layout-([a-z]+)/)?RegExp.$1!=a.mode&&b.removeClass("layout-"+RegExp.$1).addClass("layout-"+a.mode):b.addClass("layout-"+a.mode);
a.touch&&!b.is(".touch")?b.addClass("touch"):!a.touch&&b.is(".touch")&&b.removeClass("touch")}function B(){$("#layout > div > .header").each(function(){var a,b=0,c=0,d={left:0,right:0};$(this).children(":visible:not(.position-absolute)").each(function(){!a&&$(this).is(".header-title")?a=$(this):d[a?"right":"left"]+=this.offsetWidth});0+d.right>=d.left?(b=0,c=d.right+0-d.left):(c=0,b=d.left-(0+d.right));$(a).css({"margin-right":b+"px","margin-left":c+"px","padding-right":"0px"})})}function oa(){if(f.list.length){var a=
f.list.is(h.last_selected)||!f.sidebar.is(h.last_selected)&&!f.sidebar.is(".layout-sticky");f.list[a?"removeClass":"addClass"]("hidden")}f.sidebar.length&&(a=!f.list.length||f.sidebar.is(h.last_selected)||f.sidebar.is(".layout-sticky"),f.sidebar[a?"removeClass":"addClass"]("hidden"));f.content.removeClass("hidden");y(!0);Z();f.list.length&&$(".header > ul.menu",f.list).addClass("popupmenu")}function pa(){$.each(f,function(a,b){b.removeClass("hidden")});Z();f.list&&$(".header > ul.menu.popupmenu",
f.list).removeClass("popupmenu")}function Y(){var a=!1;if(f.content.length){var b=a=f.content.is(h.last_selected);f.content[b?"removeClass":"addClass"]("hidden");$(".header > ul.menu",f.content).addClass("popupmenu")}f.list.length&&(b=!a&&f.list.is(h.last_selected),f.list[b?"removeClass":"addClass"]("hidden"),$(".header > ul.menu",f.list).addClass("popupmenu"));f.sidebar.length&&(b=!a&&(f.sidebar.is(h.last_selected)||!f.list.length),f.sidebar[b?"removeClass":"addClass"]("hidden"));a&&z.back_list.show()}
function Z(){z.back_list.filter(function(){return 0==$(this).parents("#layout-sidebar").length}).hide();$("ul.menu.popupmenu").removeClass("popupmenu")}function O(a){f.list.addClass("hidden");f.sidebar.removeClass("hidden");a&&f.sidebar.addClass("layout-sticky");"small"!=r&&"phone"!=r||f.content.addClass("hidden");B();h.last_selected=f.sidebar[0]}function P(a){f.list.length||f.sidebar.length?(f.sidebar.addClass("hidden").removeClass("layout-sticky"),f.list.removeClass("hidden"),"small"!=r&&"phone"!=
r||qa(),a&&f.list.children(".scroller").scrollTop(0),h.last_selected=f.list[0]):history.back();B()}function qa(){h.last_selected=f.list[0]||f.sidebar[0];M();rcmail.show_contentframe(!1);$("[data-list]",f.list).each(function(){var a=$(this).data("list");rcmail[a]&&(rcmail[a].clear_selection?rcmail[a].clear_selection():rcmail[a].select&&rcmail[a].select())})}function y(a){a?("phone"==r&&($('<div id="menu-overlay" class="popover-overlay">').on("click",function(){y(!1)}).appendTo("body"),h.menu_initialized||
(h.menu_initialized=!0,$("a",f.menu).on("click",function(a){"phone"==r&&y()})),f.menu.addClass("popover")),f.menu.removeClass("hidden")):($("#menu-overlay").remove(),f.menu.addClass("hidden").removeClass("popover"))}function ra(a){"loading"==a.type&&$(".iframe-loader:visible").length?rcmail.hide_message(a.object):(L(a.object,a.type,!0),$(a.object).attr("role","alert"))}function L(a,b,c){var d="ui alert",e=!$(a).is(".noicon");c&&e&&!$(a).is(".aligned-buttons")&&$(a).html($("<span>").html($(a).html()));
b=b.split(" ")[0];if(b={information:"alert-info",notice:"alert-info",confirmation:"alert-success",warning:"alert-warning",error:"alert-danger",loading:"alert-info loading",uploading:"alert-info loading",vcardattachment:"alert-info"}[b])d+=" "+b,e&&$("<i>").attr("class","icon").prependTo(a);$(a).addClass(d)}function aa(a){var b=$(),c=$("a.button.options",a),d=$("input:not([type=hidden])",a),e=d.attr("placeholder");$("form",a);var g=function(){if(d.val()||"mail"==rcmail.task&&$("#s_interval").val()||
rcmail.gui_objects.search_filter&&"ALL"!=$(rcmail.gui_objects.search_filter).val()||rcmail.gui_objects.foldersfilter&&"---"!=$(rcmail.gui_objects.foldersfilter).val())return!0},k=function(){$(a).is(".open")&&c.click()},m=function(){$(a)[g()?"addClass":"removeClass"]("active");b[rcmail.gui_objects.search_filter&&"UNSEEN"==$(rcmail.gui_objects.search_filter).val()?"addClass":"removeClass"]("selected")};d.is("#mailsearchform")&&(b=$("<a>").attr({"class":"button unread",href:"#",role:"button",title:rcmail.gettext("showunread")}).on("click",
function(a){$(rcmail.gui_objects.search_filter).val($(a.target).is(".selected")?"ALL":"UNSEEN");rcmail.command("search")}).insertBefore(c));c.on("click",function(b){var d=$(this).data("target"),g=$("#"+d),e=$(a).is(".open");if(g.length){if(!e)if(C[d])C[d](g.get(0),this,b);else if("function"==typeof window[d])window[d](g.get(0),this,b);g.next()[e?"show":"hide"]();g.toggleClass("hidden");$(".floating-action-buttons").toggleClass("hidden");$(a).toggleClass("open");$("button.search",g).off("click.search").on("click.search",
function(){c.click();m()})}});d.on("input change",m).on("focus blur",function(a){d.attr("placeholder","blur"==a.type?e:"")});$("a.reset",a).on("click",function(b){d.val("").change().trigger("keyup.treelist",{keyCode:27});$(a).is(".open")&&c.click();rcmail.gui_objects.search_filter&&$(rcmail.gui_objects.search_filter).val("ALL");rcmail.gui_objects.foldersfilter&&($(rcmail.gui_objects.foldersfilter).val("---").change(),rcmail.folder_filter("---"));m()});rcmail.addEventListener("init",m).addEventListener("responsebeforesearch",
m).addEventListener("beforelist",k).addEventListener("afterlist",m).addEventListener("beforesearch",k)}function D(a,b){if(n&&u())return parent.UI.popup_init(a,b||window);b||(b=window);var c,d=$(a).data("popup"),e=$(b.$("#"+d).get(0)),g=e,k=$(a).attr("title");$(a).attr({"aria-haspopup":"true","aria-expanded":"false","aria-owns":d}).popover({content:function(){b!=window&&(e=g.clone(!0,!0),e.attr("id",d+"-clone").appendTo(document.body).find("li > a").attr("onclick","").off("click").on("click",function(d){$(this).is(".disabled")||
($(a).popover("hide"),b.$("#"+$(this).attr("id")).click());return!1}));return e.get(0)},trigger:$(a).data("popup-trigger")||"click",placement:$(a).data("popup-pos")||"bottom",animation:!0,boundary:"window",html:!0}).on("show.bs.popover",function(g){var k=e.data("popup-init");d&&q[d]&&(q[d].transitioning=!0);if(k&&C[k])C[k](e.get(0),a,g);else if(k&&b[k])b[k](e.get(0),a,g);c=$("div.popover:visible").length+1;e.removeClass("hidden").attr("aria-hidden",!1).find('[aria-haspopup="true"]').data("level",
c+1).off("click.popup").on("click.popup",function(a){a.stopPropagation()});u()||e.css("max-height",Math.min(539,$(window).height()-30))}).on("shown.bs.popover",function(b){b=u();var g=$("#"+$(a).attr("aria-describedby"));c=$(a).data("level")||1;if(b){var e=1<c?"back":"close",k=rcmail.gettext(e);e="button icon "+("back"==e?"back":"cancel");$(".popover-header",g).empty().append($("<a>").attr("class",e).text(k).on("click",function(b){$(a).popover("hide");1<c&&b.stopPropagation()}).on("mousedown",function(a){a.stopPropagation()}))}$.each(q,
function(a,b){$(b.target).data("level")==c&&a!=d&&I(a)});"key"==$(a).data("event")&&(g.off("keydown.popup").on("keydown.popup","a.active",function(b){var d,c="next";switch(b.which){case 27:case 9:return $(a).popover("toggle").focus(),!1;case 38:case 63232:c="previous";case 40:case 63233:for(b=b.target.parentNode;b=b[c+"Sibling"];)if(d=$(b).children(".active")[0]){d.focus();break}return!1}}),g.find("a.active").first().focus());d&&q[d]&&(q[d].transitioning=!1);b&&!$(".popover-overlay").length&&$("<div>").attr("class",
"popover-overlay").appendTo("body").click(function(){$(this).remove()});$(".popover-body",g).addClass("webkit-scroller")}).on("hide.bs.popover",function(){1==c&&$(".popover-overlay").remove();d&&q[d]&&e.is(":visible")&&(q[d].transitioning=!0)}).on("hidden.bs.popover",function(){/-clone$/.test(e.attr("id"))?e.remove():e.attr("aria-hidden",!0).addClass("hidden").appendTo(e.data("popup-parent")||document.body);$(".popover-body:empty").each(function(){$(this).parent().remove()});d&&q[d]&&delete q[d]}).on("click",
function(){$(this).data("event","mouse")}).on("keydown",function(a){if(a.originalEvent)switch(a.originalEvent.which){case 13:case 32:a.preventDefault();$(this).data("event","key").popover("toggle");break;case 27:$(this).popover("hide")}});k&&$(a).attr("title",k);e.attr("aria-hidden","true").data("button",a);if(e.data("editable"))e.on("click mousedown",function(a){a.stopPropagation()})}function x(a){Q&&Q>(new Date).getTime()-250||$(".popover.show").each(function(){var b=$(".popover-body",this).children().first().data("button");
b&&a.target!=b&&!$(b).find(a.target).length&&"string"!==typeof b&&$(b).popover("hide");b||$(this).remove()})}function R(a){if(a&&a.name&&(!a.props||!1!==a.props.skinable)){if(n&&u())return a.win||(a.win=window),parent.UI.menu_toggle(a);if("messagelistmenu"==a.name)sa(a);else if("menu-open"==a.event){var b=$("ul",a.obj).first(),c=a.props&&a.props.link?a.props.link:a.originalEvent.target;$(c).is("span")&&(c=$(c).parents("a,li")[0]);if(a.name.match(/^drag/)){var d=rcube_event.get_mouse_pos(a.originalEvent);
c=$("<a>").css({position:"absolute",left:d.x,top:d.y,height:"1px",width:"1px",visibility:"hidden"}).appendTo(document.body).get(0)}d=$(c).data("popup-pos")||"right";"folder-selector"==a.name?b.addClass("listing folderlist"):"addressbook-selector"==a.name||"contactgroup-selector"==a.name?b.addClass("listing contactlist"):b.hasClass("menu")&&b.addClass("listing");"pagejump-selector"==a.name&&(b.addClass("simplelist"),a.obj.addClass("simplelist"),d="top");q[a.name]&&I(a.name,a.originalEvent);var e=function(){if(q[a.name]&&
q[a.name].transitioning)return setTimeout(e,50);$(c).data("popup")||($(c).data({event:rcube_event.is_keyboard(a.originalEvent)?"key":"mouse",popup:a.name,"popup-pos":d,"popup-trigger":"manual"}),D(c,a.win));q[a.name]={target:c};$(c).popover("show")};e()}else I(a.name,a.originalEvent);a.originalEvent.stopPropagation()}}function I(a,b){var c=a;if(q[c])var d=q[c].target;else d=$("#"+c).data("button"),d||(c.match(/(?!-)menu$/)&&(c=c.substr(0,c.length-4)),d=$("#"+c+"-menu").data("button"));c=d;a.match(/^drag/)?
$(c).popover("dispose").remove():($(c).popover("hide"),"forwardmenu"==a&&x(b))}function sa(a){a=$("#listoptions-menu");a.width();var b=a.clone(!0);$('select[name="sort_col"]',b).val(rcmail.env.sort_col||"");$('select[name="sort_ord"]',b).val(rcmail.env.sort_order||"ASC");$('select[name="mode"]',b).val(rcmail.env.threading?"threads":"list");$("select",b).each(function(){this.id+="-clone"});$("label",b).each(function(){$(this).attr("for",$(this).attr("for")+"-clone")});b=rcmail.simple_dialog(b,rcmail.gettext("listoptionstitle"),
function(a){rcube_event.is_keyboard(a.originalEvent)&&$("#listmenulink").focus();a=$('select[name="sort_col"]',b).val();var d=$('select[name="sort_ord"]',b).val(),c=$('select[name="mode"]',b).val();rcmail.set_list_options([],a,d,"threads"==c?1:0);return!0},{closeOnEscape:!0,minWidth:400})}function ba(a,b){var c=rcmail.env.task;var d=rcmail.env.search_mods,e=rcmail.env.mailbox,g=$("#s_scope",a).val(),k=$("#s_interval",a).val();"all"==g&&(e="*");d||(d={});if("mail"==c){d[e]||(d[e]=rcube_clone_object(d["*"]));
var f=d[e];c="text";rcmail.env.search_scope=g;rcmail.env.search_interval=k}else f=d,c="*";b&&(b.checked?f[b.value]=1:delete f[b.value],b.value==c&&$('input[name="s_mods[]"]',a).map(function(){this!=b&&(this.checked=!0,b.checked?(this.disabled=!0,delete f[this.value]):(this.disabled=!1,f[this.value]=1))}),rcmail.set_searchmods(f))}function V(a,b){var c=$("#composestatusbar"),d=c.find("a.button.icon."+a);b?d.length||$("<a>").attr("class","button icon "+a).on("click",function(){O()}).appendTo(c):d.remove()}
function ca(a,b,c){var d=$(b).parent().attr("id").replace(/^attach/,"");$.each(["open","download","rename"],function(){var b=this;$("#attachmenu"+b,a).off("click").attr("onclick","").click(function(a){return rcmail.command(b+"-attachment",d,this,a.originalEvent)})});return rcmail.command("menu-open",{menu:"attachmentmenu",id:d},a,c)}function U(a){a=$(a);if(!a.is(".no-menu")&&!a.children(".dropdown").length){var b=rcmail.gettext("options"),c=a.find("a.filename"),d=$("<a>").attr({href:"#",tabindex:c.attr("tabindex")||
0,title:b,"class":"button icon dropdown skip-content"}).on("click",function(a){return ca($("#attachmentmenu"),d,a)}).append($("<span>").attr("class","inner").text(b));c.length?d.insertAfter(c):d.appendTo(a)}}function da(a,b,c,d){var e=$(b).attr("href").replace(/^mailto:/,"");if(0>e.indexOf("@"))return!0;a.find("a").off("click").removeClass("active");if(rcmail.env.has_writeable_addressbook)$(".addressbook",a).addClass("active").on("click",function(a){var d=e,c=$(b).filter(".rcmContactAddress").text();
d=d.split("?")[0].split(",")[0].replace(/(^<|>$)/g,"");c&&(c=c.replace("<"+d+">",""),d='"'+$.trim(c)+'" <'+d+">");return rcmail.command("add-contact",d,this,a.originalEvent)});$(".compose",a).addClass("active").on("click",function(a){d?(b.onclick=d,$(b).trigger("click",[!0]),b.onclick=null):rcmail.command("compose",e,this,a.originalEvent);return!1});return rcmail.command("menu-open",{menu:"mailto-menu",link:b},b,c.originalEvent)}function ia(a){var b=a.onclick;a.onclick=null;$(a).on("click",function(c,
d){return d||da($("#mailto-menu"),a,c,b)})}function ta(a){var b=$("#quotadisplay"),c=b.find(".bar"),d=a.total?a.percent:0;c.length||(c=$('<span class="bar"><span class="value"></span></span>').appendTo(b));0<d&&10>d&&(d=10);c.find(".value").css("width",d+"%")[90<=d?"addClass":"removeClass"]("warning");b.attr({"data-original-title":"",title:b.find(".count").attr("title")});if(a.table)b.css("cursor","pointer").data("popup-pos","top").off("click").on("click",function(b){rcmail.simple_dialog(a.table,
"quota",null,{cancel_button:"close"})});else b.tooltip("dispose").tooltip({trigger:u()?"click":"hover"})}function ua(a){var b="",c=function(){k.css("width",Math.max(5,15*k.val().length+10))},d=function(){$(a).val(f.text()+k.val())},e=function(a,b,c){var g=$('<li class="recipient">'),f=$('<span class="name">').html(va(a||b)).on("dblclick",function(a){wa(a,e)}),m=$('<span class="email">'),h=$("<a>").attr({"class":"button icon remove"}).click(function(){g.remove();d();k.focus();return!1});a&&(b=" <"+
b+">");m.text((a?b:"")+",");g.attr("title",a?a+b:null).append([f,m,h]);c?c.replaceWith(g):g.insertBefore(k.parent());d()},g=function(a){a=(a||k.val()).replace(/[,;\s]+$/,"");a=ea(a);$.each(a.recipients,function(){e(this.name,this.email)});k.val(a.text);d();c();return 0<a.recipients.length};var k=$("<input>").attr({type:"text",tabindex:$(a).attr("tabindex")}).on("paste change",function(a){var b=this.value;if("paste"==a.type){var d=(a.originalEvent.clipboardData||window.clipboardData).getData("text")||
"";b=b.substring(0,this.selectionStart)+d+b.substring(this.selectionEnd);a.preventDefault()}g(b)}).on("input",c).on("keydown",function(a){if(8==a.keyCode&&!k.val().length)return f.children("li.recipient").last().remove(),d(),!1;if((","==a.key||";"==a.key||"Enter"==a.key&&!rcmail.ksearch_visible())&&g())return!1;c()}).on("blur",function(){f.removeClass("focus")}).on("focus mousedown",function(){f.addClass("focus")});var f=$("<ul>").addClass("form-control recipient-input ac-input rounded-left").append($("<li>").append(k)).on("mouseup",
function(){b=window.getSelection().toString()}).on("click",function(){b.length||k.focus()});$(a).css({position:"absolute",opacity:0,left:"-5000px",width:"10px"}).attr("tabindex",-1).after(f).on("focus",function(a){k.focus();a.preventDefault()}).on("change",function(){$("li.recipient",f).remove();k.val(this.value).change()}).change();rcmail.init_address_input_events(k)}function ea(a){a=$.trim(a.replace(/[,;\s]*[\r\n]+/g,","));var b=[],c=/(<(\S+|("[^"]+"))@\S+>)/,d=/((\S+|("[^"]+"))@\S+)/,e=a.match(/(?=\S)[^",;]*(?:"[^\\"]*(?:\\[,;\S][^\\"]*)*"[^",;]*)*/g);
$.each(e||[],function(){if(this.length&&(c.test(this)||d.test(this))){var g=RegExp.$1,e=$.trim(this.replace(g,""));b.push({name:e,email:g.replace(/(^<|>$)/g,""),text:this});a=a.replace(this,"")}});a=a.replace(/[,;]+/,",").replace(/^[,;\s]+/,"");return{recipients:b,text:a}}function va(a){var b,c="",d=a.length;'"'!=a.charAt(0)&&-1<a.indexOf('"')&&(a='"'+a.replace("\\","\\\\").replace('"','\\"')+'"');for(b=0;b<d;b++){var e=a.charAt(b);switch(e){case '"':if(0<b&&b<d-1){c+='"';break}c+='<span class="quotes">'+
e+"</span>";break;case "\\":c+='<span class="quotes">'+e+"</span>";"\\"==a.charAt(b+1)&&(c+=e,b++);break;case "<":c+="&lt;";break;case ">":c+="&gt;";break;default:c+=e}}return c}function wa(a,b){var c=$(a.target).parents(".recipient"),d=c.text().replace(/,+$/,""),e=$("<input>").attr({type:"text",size:50}).val(d);a=$("<label>").text(rcmail.gettext("recipient")).append(e);rcmail.simple_dialog(a,"recipientedit",function(){var a;if(a=e.val()){if(a!=d){a=ea(a);if(1!=a.recipients.length)return!1;b(a.recipients[0].name,
a.recipients[0].email,c)}return!0}})}function xa(a){var b=$("<a>").attr({"class":"icon button delete",href:"#"}).click(function(a){rcmail.command("delete-photo","",this,a);return!1}),c=$(a).find("img")[0],d=function(){var b=-1!=(c.currentSrc||c.src).indexOf(rcmail.env.photo_placeholder);$(a)[b?"removeClass":"addClass"]("changed")};$(a).append(b).click(function(){rcmail.upload_input("upload-form")});d();$(c).on("load",d)}function G(a){a=$(a);if(a.length){var b=$('<div class="iframe-loader">').append($('<div class="spinner spinner-border" role="status">').append($('<span class="sr-only">').text(rcmail.gettext("loading"))));
a.on("load error loaded",function(){setTimeout(function(){b.remove()},500)}).parent().append(b);fa&&a.parent().addClass("ios-scroll")}}function F(a){var b;a=$(a);if(!a.is(".custom-control-input")){(b=a.attr("id"))||(b="icochk"+ ++h.checkboxes,a.attr("id",b));if(a.parent().is("label")){var c=a.parent();a=a.detach();c.before(a)}else c=$("<label>");c.attr({"for":b,"class":"custom-control-label",title:a.attr("title")||""}).on("click",function(a){a.stopPropagation()});a.addClass("form-check-input custom-control-input").wrap('<div class="custom-control custom-switch">').parent().append(c)}}
function ya(a){var b=$(a.row).find("input[id^=icochk]");b.length&&(a="icochk"+ ++h.checkboxes,b.attr("id",a).next("label").attr("for",a))}function K(a){if(!bw.iphone&&!bw.ipad&&(a=$(a),!a.is(".pretty-select"))){var b="select"+a.attr("id")+a.attr("name"),c=function(){if(a[0].ownerDocument.defaultView.$(".select-menu .listing").data("ident")==b)return!0},d=function(){var b=c();a.popover("dispose").focus();return!b},e=function(c){var g,e=-1,f=[],h=[],l=a.closest(".ui-dialog")[0],n=(document.documentElement.clientHeight||
$(document.body).height())-75,q=$(document.body).width()-20,r=Math.min(a.outerWidth(),q),t=a.val();u()||(n*=.5);x(c);$("option",a).each(function(){var a=$(this).text(),b=$('<a href="#">').data("value",this.value).addClass(this.disabled?"disabled":"active"+(this.value==t?" selected":""));a.length?(b.text(a),h.push(this.disabled?"":a.charAt(0).toLowerCase())):(b.html("&nbsp;"),h.push(""));f.push($("<li>").append(b))});var p=$('<ul class="listing selectable iconized">').attr("data-ident",b).data("button",
a[0]).append(f).on("click","a.active",function(){var b=$(this).data("value"),c=d();a.val(b).change();return c}).on("keydown","a.active",function(a){var b;var c="next";switch(a.which){case 27:case 9:return d();case 13:case 32:return $(this).click(),!1;case 38:case 63232:c="previous";case 40:case 63233:for(a=a.target.parentNode;a=a[c+"Sibling"];)if(b=$(a).children(".active")[0]){b.focus();break}return!1;default:(c=a.originalEvent.key)&&1==c.length&&(c=c.toLowerCase(),g!=c&&(e=-1),a=h.indexOf(c,e+1),
(-1<a||-1<(a=h.indexOf(c)))&&p.find("a").eq(a).focus(),g=c,e=a)}});a.popover("dispose").popover({container:l||document.body,content:p[0],placement:"bottom",trigger:"manual",boundary:"viewport",html:!0,offset:"0,2",sanitize:!1,template:'<div class="popover select-menu" style="min-width: '+r+"px; max-width: "+q+'px"><div class="popover-header"></div><div class="popover-body" style="max-height: '+n+'px"></div></div>'}).on("shown.bs.popover",function(){a.focus();p.parent().prev().empty().append($('<a class="button icon cancel">').text(rcmail.gettext("close")).on("click",
function(a){a.stopPropagation();return d()}));var b=p.find("a.selected").first();if(b.focus().length){var f=p.parent();e=p.find("a").index(b[0]);g=h[e];5<e&&f.scrollTop(f.scrollTop()+f.height()/2)}else rcube_event.is_keyboard(c)&&p.find("a.active").first().focus();p.on("mousedown",function(a){a.stopPropagation()})}).popover("show")};a.addClass("pretty-select custom-select form-control").on("mousedown keydown",function(b){a=$(b.target);if(!a.prop("disabled")){if(9==b.which)return d(),!0;if(27==b.which||
"mousedown"==b.type&&c())return d();a.focus();a.prop("disabled",!0);setTimeout(function(){a.prop("disabled",!1)},0);b.stopPropagation();if("mousedown"==b.type||13==b.which||32==b.which||40==b.which||63233==b.which)return e(b),Q=(new Date).getTime(),!1}})}}function za(a){var b=!1,c=$(a),d=c.parent(),e=$('<a class="mce-i-html" href="#" tabindex="-1"></a>').attr("title",rcmail.gettext("htmltoggle")).on("click",function(a){rcmail.command("toggle-editor",{id:c.attr("id"),html:!0},"",a.originalEvent)&&
d.addClass("ishtml")}).on("keydown",function(a){if(9==a.which)return c.focus(),!1}),g=$('<div class="editor-toolbar">').append(e);d.is("td")?(a=$('input[type="checkbox"]',d.parent().next()),b=!0):a=c.next("select.hidden");Aa(c);1==a.length&&(d.addClass("html-editor"),c.after(g).data("control",a).on("keydown",function(a){a.altKey&&121==a.which&&e.focus()}),b&&(a.parents("tr").first().hide(),d.prev().hide(),d.addClass("col-sm-12")))}function Aa(a){$(a).css("overflow-y","hidden").on("input",function(a){clearTimeout(h.textarea_timer);
h.textarea_timer=setTimeout(function(){var b=$(a.target),d=b.data("initial-height"),e=b[0].scrollHeight;e&&(d||b.data("initial-height",d=e),2==b.outerHeight()-e&&(e-=19),b.outerHeight(Math.max(d,e)))},10)}).trigger("input");setInterval(function(){$(a).trigger("input")},1E3)}function S(a,b,c,d,e,g){d=$('<div class="input-group"><input type="text" class="form-control"><span class="input-group-append"><a class="icon reset input-group-text" href="#"></a></span></div>');b={value:b,name:c+"[]"};e&&(b.size=
e);$("input",d).attr(b).keydown(function(b){var d=$(this);if(13==b.which){b=d.attr("name").replace(/\[\]$/,"");var c=(new Date).getTime();d=S(a,"",b,c,e,d.parent());$("input",d).focus()}else if((8==b.which||46==b.which)&&""==d.val()&&(d=d.parent(),1<a.children().length))return d.prev().length?d.prev().children("input").focus():d.next().children("input").focus(),d.remove(),!1});$("a.reset",d).click(function(){var b=$(this.parentNode.parentNode);1<a.children().length?($("input",b.next().length?b.next():
b.prev()).focus(),b.remove()):$("input",b).val("").focus()});$(d).find("input,a").on("focus",function(){a.addClass("focused")}).on("blur",function(){a.removeClass("focused")});g?g.after(d):d.appendTo(a);return d}function ha(a){var b=a.find(".scroller .listing").first().attr("id"),c=rcmail.env.task+"."+(b||rcmail.env.action+"."+a.attr("id"));b=Ba(c);var d=a.is(".sidebar-right"),e=function(b){a.css({width:Math.max(100,b),flex:"none"})};a[d?"prev":"next"]().length&&($('<div class="column-resizer">').appendTo(a).on("mousedown",
function(b){var g,f=$(this),h=a.position().left;f.width(1E4).css(d?"left":"right",-5E3);document.body.style.userSelect="none";$(document).on("mousemove.resizer",function(b){clearTimeout(g);g=setTimeout(function(){d&&(h=a.position().left);var c=rcube_event.get_mouse_pos(b).x;c=d?a.width()+(h-c):c-h;e(c)},5)}).on("mouseup.resizer",function(){$(document).off(".resizer");$("iframe").off(".resizer");document.body.style.userSelect="auto";f.width(6).css(d?"left":"right",-3);var b=a.width();v[c]=b;if(!rcmail.local_storage_set_item("prefs.elastic",
v)){var e=new Date;e.setYear(e.getFullYear()+1);rcmail.set_cookie(c,b,e)}})}),b&&e(b))}function Ca(a){if(!u()||!0===arguments[3])return h.open_window.apply(rcmail,arguments);a=rcmail.add_url(a,"_framed",1);a=rcmail.add_url(a,"_extwin",1);var b,c="",d={cancel_button:"close",width:768,height:768},e=$("<iframe>").attr({id:"windowframe",src:a});/_action=([a-z_]+)/.test(a)&&(b=rcmail.labels[RegExp.$1])&&(c=b);/_frame=1/.test(a)&&(d.dialogClass="no-titlebar");rcmail.simple_dialog(e,c,null,d);return!0}function H(){if(n){var a=
$(parent.document.documentElement);return{mode:a[0].className.match(/layout-([a-z]+)/)?RegExp.$1:r,touch:a.is(".touch")}}return{mode:r,touch:J}}function u(){var a=H();return"phone"==a.mode||"small"==a.mode}function Ba(a){v||(v=rcmail.local_storage_get_item("prefs.elastic",{}));if(null==v[a]){var b=rcmail.get_cookie(a);null!=b&&(v[a]=b,rcmail.local_storage_set_item("prefs.elastic",v)&&rcmail.set_cookie(a,b,new Date))}return v[a]}var v,C=this,r="normal",J=!1,fa=!1,Q,n=rcmail.is_framed(),h={config:{standard_windows:rcmail.env.standard_windows,
message_extwin:rcmail.env.message_extwin,compose_extwin:rcmail.env.compose_extwin,help_open_extwin:rcmail.env.help_open_extwin},checkboxes:0,small_screen_config:{standard_windows:!0,message_extwin:!1,compose_extwin:!1,help_open_extwin:!1}},q={},N=[],T=[],f={menu:$("#layout-menu"),sidebar:$("#layout-sidebar"),list:$("#layout-list"),content:$("#layout-content")},z={menu:$("a.task-menu-button"),back_sidebar:$("a.back-sidebar-button"),back_list:$("a.back-list-button"),back_content:$("a.back-content-button")};
this.register_content_buttons=function(a){if(h.frame_nav&&a&&a.length){var b=h.frame_nav.children(".buttons");N=[];$.each(a,function(){this.data("target")&&N.push(this.data("target"))});b.html("").append(a)}};this.menu_hide=I;this.menu_toggle=R;this.menu_destroy=function(a){$("[aria-owns="+a+"]").popover("dispose").data("popup",null)};this.popup_init=D;this.about_dialog=function(a){var b,c=!1,d=$("<iframe>").attr({id:"aboutframe",src:rcmail.url("settings/about",{_framed:1})}),e=$("#supportlink");
if(e.length&&(b=e.attr("href"))){c=e.text();var g=function(a){0>b.indexOf("mailto:")?window.open(b):location.href=b}}rcmail.simple_dialog(d,$(a).text(),g,{button:c,button_class:"help",cancel_button:"close",height:400})};this.headers_dialog=function(){var a={_uid:rcmail.env.uid,_mbox:rcmail.env.mailbox,_framed:1};a=$("<iframe>").attr({id:"headersframe",src:rcmail.url("headers",a)});rcmail.simple_dialog(a,rcmail.gettext("arialabelmessageheaders"),null,{cancel_button:"close",height:400})};this.import_dialog=
function(){if(rcmail.commands["import-messages"]){var a=$("#uploadform").clone(!0);rcmail.simple_dialog(a,rcmail.gettext("importmessages"),function(b){return rcmail.command("import-messages",$(a.find("form")[0]))},{button:"import",closeOnEscape:!0,minWidth:400})}};this.headers_show=function(a){a=$(a).parent().prev();a[a.is(".hidden")?"removeClass":"addClass"]("hidden")};this.spellmenu=function(a){var b,c=[],d=rcmail.spellcheck_lang(),e=$("ul",a);if(!e.length){e=$('<ul class="selectable listing iconized" role="menu">');
for(b in rcmail.env.spell_langs){var g=$('<li role="menuitem">');var f=$('<a href="#'+b+'" tabindex="0"></a>').text(rcmail.env.spell_langs[b]).addClass("active").data("lang",b).on("click keypress",function(a){if("keypress"!=a.type||13==rcube_event.get_keycode(a))return rcmail.spellcheck_lang_set($(this).data("lang")),rcmail.hide_menu("spell-menu",a),!1});f.appendTo(g);c.push(g)}e.append(c).appendTo(a)}$("li",e).each(function(){var a=$("a",this);a.data("lang")==d?a.addClass("selected").attr("aria-selected",
"true"):a.hasClass("selected")&&a.removeClass("selected").removeAttr("aria-selected")})};this.searchmenu=function(a){var b,c=$('input[name="s_mods[]"]',a),d=$("#s_scope",a),e=rcmail.env.mailbox,g=rcmail.env.search_mods,f=rcmail.env.search_scope||"base";$(a).data("initialized")||($(a).data("initialized",!0),c.length&&(c.on("change",function(){ba(a,this)}),rcmail.addEventListener("beforesearch",function(){ba(a)})));if(rcmail.env.search_mods){if("mail"==rcmail.env.task){"all"==f&&(e="*");g=g[e]?g[e]:
g["*"];var h="text";d.val(f)}else h="*";if(g[h])c.map(function(){this.checked=!0;this.disabled=this.value!=h});else for(b in c.prop("disabled",!1).prop("checked",!1),g)c.filter('[value="'+b+'"]').prop("checked",!0)}};this.headersmenu=function(a,b,c){$("li > a",a).each(function(){var a=$(this),b="#compose_"+a.data("target");a[$(b).is(":visible")?"removeClass":"addClass"]("active").off().on("click",function(){$(b).removeClass("hidden").find(".recipient-input input").focus();a.removeClass("active");
rcmail.set_menu_buttons()})})};this.header_reset=function(a){$("#"+a).val("").change().closest(".form-group").nextAll(":not(.hidden)").first().find("input").focus();$("a[data-target="+a.replace(/^_/,"")+"]").addClass("active");rcmail.set_menu_buttons()};this.compose_status=V;this.attachmentmenu=ca;this.mailtomenu=da;this.recipient_selector=function(a,b){b||(b={});var c=rcmail.gettext(b.title||"insertcontact"),d=$("#recipient-dialog"),e=d.parent(),g=function(){d.is(":visible")&&rcmail.env.recipient_dialog.dialog("close")};
rcmail.env.recipient_selector_initialized||(rcmail.addEventListener("add-recipient",g),rcmail.env.recipient_selector_initialized=!0);a&&(rcmail.env.focused_field="#_"+a);rcmail.contact_list.clear_selection();rcmail.contact_list.multiselect="multiselect"in b?b.multiselect:!0;rcmail.env.recipient_dialog=rcmail.simple_dialog(d,c,function(){b.action?(b.action(),g()):rcmail.command("add-recipient")},{button:rcmail.gettext(b.button||"insert"),button_class:b.button_class||"insert recipient",height:600,classes:{"ui-dialog-content":"p-0"},
open:function(){$("#directorylist a").first().focus()},close:function(){d.appendTo(e);$(this).remove();$(b.focus||rcmail.env.focused_field).focus()}})};this.show_list=P;this.show_sidebar=O;this.smart_field_init=function(a){var b=a.id+"_list",c=$('<div class="multi-input"><div class="content"></div><div class="invalid-feedback"></div></div>'),d=a.value?a.value.split("\n"):[""];$("#"+b).length||($.each(d,function(b,d){S($(".content",c),d,a.name,b,$(a).data("size"))}),c.attr("id",b),a=$(a),a.attr("disabled")?
c.hide():a.prop("disabled",!0),a.data("hidden")&&c.hide(),a.after(c),a.hasClass("is-invalid")&&(c.addClass("is-invalid"),$(".invalid-feedback",c).text(a.data("error-msg"))))};this.smart_field_reset=function(a,b){b=b.length?b:[""];var c=$("#"+(a.id+"_list")).children(".content");c.empty();$.each(b,function(b,e){S(c,e,a.name,b,$(a).data("size"))})};this.form_errors=function(a){$.each(a,function(){var a=$("#"+this[0]).addClass("is-invalid");"list"==a.data("type")?(a.data("error-msg",this[2]),$("#"+this[0]+
"_list > .invalid-feedback").text(this[2])):a.after($('<span class="invalid-feedback">').text(this[2]))})};this.switch_nav_list=function(a){var b=$("a",a),c=$(a).next();if(c.height())c.animate({height:"0"},250),b.addClass("expand").removeClass("collapse"),$(a).removeClass("expanded");else{var d=$("tr,li",c).filter(function(){return"none"!=this.style.display});var e=$(d[0]).height()||50;c.animate({height:Math.min(5,d.length)*e+1+"px"},250);b.addClass("collapse").removeClass("expand");$(a).addClass("expanded")}};
this.searchbar_init=aa;this.pretty_checkbox=F;this.pretty_select=K;this.datepicker_init=function(a){window.MutationObserver&&$(a).not("[data-observed]").each(function(){var a,c=!0,d=n?parent:window;$(this).attr("data-observed","1");n&&($(this).detach().appendTo(parent.document.body),$('<div id="ui-datepicker-div" class="hidden">').appendTo(document.body));(new MutationObserver(function(b){$.each(b,function(b,e){"attributes"==e.type?(b="true"==$(e.target).attr("aria-hidden"),b!=c&&(b?a&&a.remove():
a=$("<div>").attr("class","ui-widget-overlay datepicker").appendTo(d.document.body).click(function(a){$(this).remove();n&&$.datepicker._hideDatepicker()}),c=b)):e.addedNodes.length&&(d.UI.bootstrap_style(e.target),n&&(d.$("select.ui-datepicker-month",e.target).on("change",function(){$.datepicker._selectMonthYear($.datepicker._lastInput,this,"M")}),d.$("select.ui-datepicker-year",e.target).on("change",function(){$.datepicker._selectMonthYear($.datepicker._lastInput,this,"Y")})))})})).observe(this,
{childList:!0,subtree:!1,attributes:!0,attributeFilter:["aria-hidden"]})})};this.bootstrap_style=p;X();(function(){h.last_selected=$("#layout > div.selected")[0];!h.last_selected&&f.content.length&&$.each(["sidebar","list","content"],function(){if(f[this].length)return h.last_selected=f[this][0],f[this].addClass("selected"),!1});$(window).on("resize",function(){clearTimeout(h.resize_timeout);h.resize_timeout=setTimeout(function(){E()},25)});h.open_window=rcmail.open_window;rcmail.open_window=Ca;rcmail.addEventListener("message",
ra).addEventListener("menu-open",R).addEventListener("menu-close",R).addEventListener("editor-init",la).addEventListener("autocomplete_create",W).addEventListener("googiespell_create",W).addEventListener("setquota",ta).addEventListener("enable-command",ma).addEventListener("clonerow",ya).addEventListener("init",A);window.MutationObserver&&window.tinymce&&(new MutationObserver(function(a){$.each(a,function(){$.each(this.addedNodes,function(){ja(this)})})})).observe(document.body,{childList:!0});if((f.list.length||
f.content.length)&&u()){var a=[];$("[data-fab]").each(function(){var b=$(this),c=b.data("fab-task")||"*",d=b.data("fab-action")||"*";"*"!=c&&c!=rcmail.env.task||"*"!=d&&d!=rcmail.env.action&&("none"!=d||rcmail.env.action)||a.push(t(b,!1,!1,!0))});a.length&&$('<div class="floating-action-buttons">').append(a).appendTo(f.list.length?f.list:f.content)}f.sidebar.length&&ha(f.sidebar);f.list.length&&ha(f.list)})();p();(function(){if(!h.got_smart_toolbar){h.got_smart_toolbar=!0;var a,b=[],c=[],d=H(),e=
function(a,b,d){var c=$('<li role="menuitem">');a=d?t($(a),!0,"hidden-big hidden-large"):$(a).detach();a.contents().filter(function(){3!=this.nodeType||$.trim(this.nodeValue).length||$(this).remove()});a.is(".spacer")?c.addClass("spacer"):c.append(a);b.push(c)};f.content.find(".header > .menu").each(function(){var a=$(this);a.children().each(function(){e(this,b)});a.remove()});f.list.find(".header > .menu").each(function(){var g=$(this);a=g.next();g.children().each(function(){"large"!=d.mode&&$(this).data("popup-pos",
"right");e(this,b,!0);e(this,c)});g.remove()});$('ul[data-menu="toolbar-small"] > li > a').each(function(){var a=$(this).clone();a.attr("id",this.id+"_clone");b.push($('<li role="menuitem">').addClass("hidden-big").append(a))});if(c.length){var g=f.list.children(".header"),k={"class":"menu toolbar popupmenu listing iconized",id:"toolbar-list-menu"},m=$('<a class="button icon toolbar-list-button" href="#list-menu">').attr({"data-popup":"toolbar-list-menu"});k=$("<ul>").attr(k).data("popup-parent",
g).append(c);a.length?k.insertBefore(a):g.append(k);g.append(m)}b.length&&(g=f.content.children(".header"),k={"class":"menu toolbar popupmenu listing iconized",id:"toolbar-menu"},m=$('<a class="button icon toolbar-menu-button" href="#menu">').attr({"data-popup":"toolbar-menu"}),g.append($("<ul>").attr(k).data("popup-parent",g).append(b)).append(m),f.list.find("a.toolbar-menu-button").click(function(a){a.stopPropagation();m.click()}))}})();(function(){if(f.list.length){var a=h.last_selected,b=function(a){"string"===
typeof a&&a.length||(a=$("h1.voice").text()||$("title").text()||"");f.content.find(".header > .header-title").text(a)},c=function(d,c,e,l){u()&&h.frame_nav&&ka(c,d);e&&!f.content.is(":visible")?h.last_selected=f.content[0]:e||h.last_selected==a||h.content_lock||(h.last_selected=a);M();b(l&&e?l:null);h.content_lock=!1},d=function(a){"large"!=r&&!h.content_lock&&a.force&&P();h.content_lock=!1;a.title&&$(".header > .header-title",f.list).text(a.title)},e=function(a){var b={};if("addressbook"==rcmail.env.task||
"mail"==rcmail.env.task)b.force=!0;"mail"!=rcmail.env.task||rcmail.env.action||(a="string"==$.type(a)?a:rcmail.env.mailbox,a=rcmail.env.mailboxes[a],b.title=a?a.name:"");d(b)};f.content.find("iframe").on("load",function(a){var d="",e=!0;$(this).parent(".iframe-wrapper").scrollTop(0);try{d=a.target.contentWindow.location.href,e=!d.endsWith(rcmail.env.blankpage),$(a.target.contentWindow).on("unload",b)}catch(Da){}c(a,d,e)});rcmail.addEventListener("afterlist",e).addEventListener("afterlistgroup",e).addEventListener("afterlistsearch",
e).addEventListener("show-list",function(a){a.force=!0;d(a)}).addEventListener("show-content",function(a){a.obj&&!$(a.obj).is("iframe")&&($(a.scrollElement||a.obj).scrollTop(0),u()&&G(a.obj));c(a.event||new Event,"_action="+(a.mode||"edit"),!0,a.title)})}})();(function(){$("[data-popup]").each(function(){D(this)});$(document).on("click",x);rcube_webmail.set_iframe_events({mousedown:x,touchstart:x})})();(function(){var a,b,c=[];$.ui&&$.widget("ui.dialog",$.ui.dialog,{open:function(){$(this.element).is(".iframe")&&
(this.options.width=Math.max(576,this.options.width));this._super();var a=$(this.uiDialog),b=a.width(),c=a.height(),f=$(window).width(),h=$(window).height();480>=f?a.css({width:"100%",height:"100%"}):(c>h&&a.css("height","100%"),b>f&&a.css("width","100%"));$(document).click();G($("div.popup > iframe",a));p(this.uiDialog);return this},close:function(){this._super();$(".select-menu:visible").remove();return this}});z.menu.on("click",function(){y(!0);return!1});z.back_sidebar.on("click",function(){O();
return!1});z.back_list.on("click",function(){P();return!1});z.back_content.on("click",function(){f.list.addClass("hidden");f.sidebar.addClass("hidden");f.content.removeClass("hidden");f.sidebar.removeClass("layout-sticky");B();h.last_selected=f.content[0];return!1});$(".searchbar").each(function(){aa(this)});!n||rcmail.env.extwin||parent.$(".ui-dialog:visible").length?n||((a=f.content.find(".boxtitle").first().detach().text())||(a=$("h1.voice").first().text()),a&&f.content.find(".header > .header-title").text(a)):
(a=$("h1.voice").first().text())&&parent.$("#layout-content > .header > .header-title:not(.constant)").text(a);n||!f.content.length||f.content.is(".no-navbar")||f.content.children(".frame-content").length||(h.frame_nav=$('<div class="footer menu toolbar content-frame-navigation hide-nav-buttons">').append($('<a class="button prev">').append($('<span class="inner"></span>').text(rcmail.gettext("previous")))).append($('<span class="buttons">')).append($('<a class="button next">').append($('<span class="inner"></span>').text(rcmail.gettext("next")))).appendTo(f.content));
$("a[data-content-button]").each(function(){c.push(t($(this)))});$(".formbuttons").filter(function(){return!$(this).parent(".searchoptions").length}).children().each(function(){var a=$(this);if(n||a.parents("#layout-content").length)a.is(".cancel")?a.addClass("hidden"):c.push(t(a))});(n?parent.UI:C).register_content_buttons(c);if(b=rcmail.gui_objects.messageform)b=$('form[name="'+b+'"]'),$("#_cc, #_bcc, #_replyto, #_followupto",$(".compose-headers")).each(function(){$(this).on("change",function(){$("#compose"+
$(this).attr("id"))[this.value?"removeClass":"addClass"]("hidden")})}),$("#compose-options").find("textarea,input,select").each(function(){var a=$("<input>").attr({type:"hidden",name:$(this).attr("name")}).appendTo(b);$(this).attr("tabindex",2).on("change",function(){a.val("checkbox"!=this.type||this.checked?$(this).val():"")}).change()});$("[data-recipient-input]").each(function(){ua(this)});$(".image-upload").each(function(){xa(this)});$("textarea[data-html-editor]").each(function(){za(this)});
$("#dragmessage-menu,#dragcontact-menu").each(function(){rcmail.gui_object("dragmenu",this.id)});$("#taskmenu > a").each(function(){if(/button-([a-z]+)/.test(this.className)){var a,b=RegExp.$1,c=w(this.id);c&&(a=c.data)&&(a.sel&&(a.sel=a.sel.replace("button-selected","selected")+" "+b),a.act&&(a.act+=" "+b),rcmail.buttons[c.command][c.index]=a,rcmail.init_button(c.command,a));$(this).addClass(b);$(".button-inner",this).addClass("inner")}$(this).on("mouseover",function(){rcube_webmail.long_subject_title(this,
0,$("span.inner",this))})});$(".listbutton").each(function(){var a=w(this.id);$(this).addClass("button").removeClass("listbutton");a.data.sel&&(a.data.sel=a.data.sel.replace("listbutton","button"));a.data.act&&(a.data.act=a.data.act.replace("listbutton","button"));rcmail.buttons[a.command][a.index]=a.data;rcmail.init_button(a.command,a.data)});$("[data-hidden]").each(function(){for(var a,b=$(this).data("hidden"),c=$(this).parent("li"),f=/(large|big|small|phone|lbs)/g;a=f.exec(b);)$(c.length?c:this).addClass("hidden-"+
a[1])});$("[data-list]").each(function(){$("input[type=checkbox]",this).each(function(){F(this)})});n&&$(".formcontent").each(function(){$(this).next(".formbuttons").length&&$(this).parent().addClass("formcontainer")});$("#attachment-list + a.zipdownload").appendTo(".header-links");(fa=$("html").is(".ipad,.iphone"))&&$(".iframe-wrapper, .scroller").addClass("ios-scroll");$("html").filter(".ipad,.iphone,.webkit.mobile,.webkit.tablet").addClass("webkit-scroller").length&&$(f.menu).addClass("webkit-scroller");
$(".treelist").each(function(){var a=this,b=function(){$(a)[0<$(".treetoggle",a).length?"removeClass":"addClass"]("notree")};window.MutationObserver&&(new MutationObserver(b)).observe(a,{childList:!0,subtree:!0});b();$("li.mailbox > a").on("mouseover",function(){rcube_webmail.long_subject_title_ex(this)})});$("#logo").data("src-default")||$("#logo").data("src-default",$("#logo").attr("src"))})();E()}
if(window.rcmail)rcmail.show_menu=function(l,t,w){var A="object"==typeof l?l.menu:l,p=$("#"+A);"string"==typeof l&&(l={menu:A});return rcmail.triggerEvent(!1===t?"menu-close":"menu-open",{name:A,obj:p,props:l,originalEvent:w})},rcmail.hide_menu=function(l,t){return rcmail.triggerEvent("menu-close",{name:l,props:{menu:l},originalEvent:t})};else var rcmail=parent.rcmail,rcube_webmail=parent.rcube_webmail,bw={};var UI=new rcube_elastic_ui;
if($&&$.datepicker){var __newInst=$.datepicker._newInst;$.extend($.datepicker,{_newInst:function(l,t){l=__newInst.call(this,l,t);l.inline||UI.datepicker_init(l.dpDiv);return l}})};
function rcube_elastic_ui(){function t(a,b,e){(a=F(a))&&rcmail.register_button(a.command,b,a.data.type,e,a.data.sel)}function A(a,b,e,c){var f=!0,d=$("<a>"),h=a.attr("id")||(new Date).getTime(),g=h+"-clone";e=a[0].className+(e?" "+e:"");if(!b)e=$.trim(e.replace("btn-primary","primary").replace(/(btn[a-z-]*|button|disabled)/g,"")),e+=" button"+(c?"":" disabled");else if(c=a.data("popup"))d.data({popup:c,"toggle-button":a.data("toggle-button")}),N(d[0]),f=!1,rcmail.register_menu_button(d[0],c);d.attr({id:g,
href:"#","class":e}).append($('<span class="inner">').text(a.text()));if(f)d.on("click",function(l){a.click()});u&&!b?(d.data("target",a),ea.push($.extend({button_id:g},F(a[0].id)))):t(h,g,e.replace(" disabled",""));return d}function F(a){var b,e;for(e in rcmail.buttons)for(b=0;b<rcmail.buttons[e].length;b++){var c=rcmail.buttons[e][b];if(c.id==a)return{command:e,index:b,data:c}}}function K(){$("[data-list]").filter("ul,table").each(function(){var d,h=$(this),g=h.data("list");if(rcmail[g]&&rcmail[g].multiselect){var l=
h.parents("layout-sidebar,#layout-list,#layout-content").last();var m=l.find(".header");var p=m.find("ul");if(!p.length)p=m;else if(d=p.find("a.select").data("toggle-button"))d=$("#"+d);rcmail[g].enable_checkbox_selection();d||(d=$("<a>").attr({"class":"button selection disabled",role:"button",title:rcmail.gettext("select")}).on("click",function(){$(this).is(".active")&&h.toggleClass("withselection")}).append($('<span class="inner">').text(rcmail.gettext("select"))),p.is(".menu")?(d.prependTo(p).wrap('<li role="menuitem">'),
k.content&&(l=A(d,!0,"hidden-big hidden-large"),$('<li role="menuitem">').append(l).appendTo("#toolbar-menu"),d=d.add(l))):(m=h.data("list-select-replace"))?$(m).replaceWith(d):(d.appendTo(p).addClass("icon"),l.is("#layout-sidebar")||d.addClass("toolbar-button")));rcmail.addEventListener("listupdate",function(q){q.list&&q.list==rcmail[g]&&(q.rowcount?d.addClass("active").removeClass("disabled").attr("tabindex",0):d.removeClass("active").addClass("disabled").attr("tabindex",-1))})}T&&rcmail[g]&&("function"==
typeof rcmail[g].draggable?rcmail[g].draggable("destroy"):"boolean"==typeof rcmail[g].draggable&&(rcmail[g].draggable=!1))});window.MutationObserver&&$("[data-label-msg]").filter("ul,table").each(function(){var d=$('<div class="listing-info hidden">').insertAfter(this),h=$(this);var g=function(){var m=h.data("label-msg");var p=h.is("ul")?h:h.children("tbody");if(rcmail.env.search_request||rcmail.env.qsearch||!m||p.children(":visible").length)d.addClass("hidden");else{p=h.data("label-ext");var q=h.data("create-command");
!p||q&&!rcmail.commands[q]||(m+=" "+p);d.text(m).removeClass("hidden")}};var l=function(){if(rcmail.busy||!h.is(":visible"))return setTimeout(l,250);clearTimeout(n.list_timer);n.list_timer=setTimeout(g,50)};(new MutationObserver(l)).observe(h[0],{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]});l()});"print"!=rcmail.env.action&&$("#attachment-list > li").each(function(){fa(this)});var a=function(d){"phone"==w&&rcmail.display_message(rcmail.gettext(d),"confirmation")};rcmail.addEventListener("fileappended",
function(d){d.attachment.complete&&(fa(d.item),"text/vcard"==d.attachment.mimetype&&rcmail.commands["attach-vcard"]&&a("vcard_attachments.vcardattached"))}).addEventListener("managesieve.insertrow",function(d){B(d.obj)}).addEventListener("add-recipient",function(){a("recipientsadded")});rcmail.init_pagejumper(".pagenav > input");if("mail"==rcmail.task){if("compose"==rcmail.env.action&&(rcmail.addEventListener("compose-encrypted",function(d){$("a.mode-html, button.attach").prop("disabled",d.active);
$("a.attach, a.responses:not(.edit)")[d.active?"addClass":"removeClass"]("disabled")}),$("#layout-sidebar > .footer:not(.pagenav) > a.button").click(function(){$(this).is(".disabled")&&rcmail.display_message(rcmail.gettext("nocontactselected"),"warning")}),window.MutationObserver)){var b=$("#attachment-list"),e=function(){ha("attach",0<b.children().length)};(new MutationObserver(e)).observe(b[0],{childList:!0});e()}rcmail.env.extwin||"compose"!=rcmail.env.action&&"show"!=rcmail.env.action||$("a.mail",
k.menu).attr({"aria-disabled":!1,onclick:"return rcmail.command('list','',this,event);"});"preview"!=rcmail.env.action&&"show"!=rcmail.env.action||$("a").filter('[href^="mailto:"]').each(function(){ta(this)})}else"settings"==rcmail.task&&(rcmail.addEventListener("identity-encryption-show",function(d){B(d.container)}),rcmail.addEventListener("identity-encryption-update",function(d){B(d.container)}));rcmail.set_env({thread_padding:"1.5rem",popup_width_small:1025,popup_width:1200});rcmail.env.devel_mode&&
window.less?less.pageLoadFinished.then(function(){O();rcmail.env.compose_focus_elem&&$(rcmail.env.compose_focus_elem).focus()}):O();var c=rcmail.env.date_format_localized;if(c){var f=function(d){$(d).filter(".datepicker").attr("placeholder",c);$(d).parent().find("select").each(function(){U(this)})};$("input.datepicker").each(function(){f(this)});rcmail.addEventListener("insert-edit-field",f)}}function B(a){a||(a=document);$("input.button,button",a).not(".btn").addClass("btn").not(".btn-primary,.primary,.mainaction").addClass("btn-secondary");
$("input.button.mainaction,button.primary,button.mainaction",a).addClass("btn-primary");$("button.btn.delete,button.btn.discard",a).addClass("btn-danger");$.each(["warning","error","information","confirmation"],function(){var f=this;$(".box"+f+":not(.ui.alert)",a).each(function(){V(this,f,!0)})});if(a!=document&&1==$(".popup",a).children().length){var b=$(".popup",a).children().first();if(b.is("img"))$(".popup",a).addClass("justified");else if(b.is("label")){var e=b.find("input").detach();b=b.detach();
var c=e.attr("id");c||e.attr("id",c="dialog-input-elastic");$(".popup",a).addClass("formcontent").append($('<div class="form-group row">').append(b.attr("for",c).addClass("col-sm-2 col-form-label")).append($('<div class="col-sm-10">').append(e)));e.focus()}}$("input:not(.button,.no-bs,[type=button],[type=radio],[type=checkbox]),textarea",$(".propform",a)).addClass("form-control");$("[type=checkbox]",$(".propform",a)).addClass("form-check-input");$("select",a).addClass("form-control custom-select");
a!=document&&$("input:not(.button,.no-bs,[type=button],[type=radio],[type=checkbox]),textarea",a).addClass("form-control");$("table.propform",a).each(function(){var f=0,d=0,h=["sm",4,8];$(this).attr("class").match(/cols-([a-z]+)-(\d)-(\d)/)&&(h=[RegExp.$1,RegExp.$2,RegExp.$3]);$(this).find("> tbody > tr, > tr").each(function(){var g=$(this),l=["form-group","row"];var m=g.children("td");if(2==m.length){var p=m.first();m=m.last();$("label",p).addClass("col-form-label");p.addClass("col-"+h[0]+"-"+h[1]);
m.addClass("col-"+h[0]+"-"+h[2]);1!=m.find("[type=checkbox]").length||m.find(".proplist").length?m.find("input:not([type=hidden]),textarea,radio,select").length?d++:(m.addClass("form-control-plaintext"),f++):(l.push("form-check"),m.find("a").length&&l.push("with-link"),d++);m.children(".datepicker")&&2==m.children("input").length&&m.addClass("datetime")}else 1==m.length&&m.css("width","100%");g.addClass(l.join(" "))});f>d&&$(this).addClass("text-only")});$("td.input-group",a).each(function(){$(this).children().slice(1).addClass("input-group-append")});
$("fieldset.propform:not(.groupped) div.row",a).each(function(){var f=0<$("input:not([type=hidden]),select,textarea",this).length;f&&$("input:not(.button,.no-bs,[type=button],[type=radio],[type=checkbox]),textarea",this).addClass("form-control");$(this).children().last().addClass("col-sm-8"+(f?"":" form-control-plaintext"));$(this).children().first().addClass("col-sm-4 col-form-label");$(this).addClass("form-group")});$("fieldset.propform.groupped fieldset",a).each(function(){$(".row",this).each(function(){var f=
0<$("input,select,textarea",this).length,d=$(this).children();f&&$("input:not(.button,.no-bs,[type=button],[type=radio],[type=checkbox]),textarea",this).addClass("form-control");if(!(2>d.length)){var h=d.first();h.is("select")?h.addClass("input-group-prepend"):h.wrap('<span class="input-group-prepend">').addClass("input-group-text");f||d.last().addClass("form-control-plaintext");$(".content",this).addClass("input-group-prepend input-group-append input-group-text");$("a.deletebutton",this).addClass("input-group-text icon delete").wrap('<span class="input-group-append">');
$(this).addClass("input-group")}})});$("fieldset.advanced",a).each(function(){var f=$(this).children(".propform").first();f.wrap($("<div>").addClass("collapse"));$(this).children("legend").first().addClass("closed").on("click",function(){f.parent().collapse("toggle");$(this).toggleClass("closed")})});$(".propform > .prop.block:not(.row)",a).each(function(){$(this).addClass("form-group row").each(function(){$("label",this).addClass("col-form-label").wrap($('<div class="col-sm-4">'));$("input,select,textarea",
this).wrap($('<div class="col-sm-8">'));$("input:not(.button,.no-bs,[type=button],[type=radio],[type=checkbox]),textarea",this).addClass("form-control")})});$("td.rowbuttons > a",a).addClass("btn");$("form.tabbed,div.tabbed",a).each(function(f,d){var h=[],g=$("<ul>").attr({"class":"nav nav-tabs",role:"tablist"});$(this).addClass("tab-content").children("fieldset").each(function(l,m){l=m.id||"tab"+f+"-"+l;var p=$(m).data("navlink-class");$(m).addClass("tab-pane").attr({id:l,role:"tabpanel"});l=$("<li>").addClass("nav-item").append($("<a>").addClass("nav-link"+
(p?" "+p:"")).attr({role:"tab",href:"#"+l}).text($("legend",m).first().text()).click(function(q){$(this).tab("show");G(q);return!1}));$("legend",m).first().hide();h.push(l)});g.append(h).insertBefore(d);$("a.nav-link",g).first().click()});$("input[type=file]:not(.custom-file-input)",a).each(function(){var f=rcmail.gettext("choosefile"+(this.multiple?"s":"")),d=$("<label>").attr({"class":"custom-file-label","data-browse":rcmail.gettext("browse")}).text(f);$(this).addClass("custom-file-input").wrap('<div class="custom-file">');
$(this).on("change",function(){var h=f;this.files.length&&(h=this.files[0].name,1<this.files.length&&(h+=", ..."));$(this).next().text(h)}).parent().append(d)});$("table:not(.table,.compact-table,.propform,.listing,.ui-datepicker-calendar)",a).filter(function(){return!$(this).parent().is(".propform")&&!$(this).parents(".message-htmlpart,.message-partheaders,.boxinformation,.raw-tables").length}).each(function(){var f=$(this).addClass("table");f.parent().addClass("table-responsive-sm");f.find("thead").addClass("thead-default")});
$("input.pretty-checkbox, .propform input[type=checkbox], .form-check input, .popupmenu.form input[type=checkbox], .menu input[type=checkbox]",a).each(function(){P(this)});$(a).is(".actionrow")&&$("input[type=checkbox]",a).each(function(){P(this)});$(".input-group-combo > select",a).first().on("change",function(){var f=$(this),d=function(){f[f.next().is(":visible")?"removeClass":"addClass"]("alone")};setTimeout(d,50);setTimeout(d,2E3)}).trigger("change");$("#message-objects",a).children(":not(.ui.alert)").add(".part-notice").each(function(){var f=
String($(this).removeClass("notice part-notice").attr("class")).split(/\s/)[0]||"warning";V(this,f);$(this).addClass("box"+f);$("a",this).addClass("btn btn-primary btn-sm")});$(".error",a).addClass("is-invalid");"login"==rcmail.env.task&&a==document&&($("#rcmloginsubmit").addClass("btn-lg text-uppercase w-100"),$("#login-form table tr").each(function(){var f=$("input,select",this),d=$("label",this),h=f.data("icon"),g=$("<i>").attr("class","input-group-text icon "+f.attr("name").replace("_",""));h&&
g.addClass(h);$(this).addClass("form-group row");d.parent().css("display","none");f.addClass(f.is("select")?"custom-select":"form-control").attr("placeholder",d.text()).before($('<span class="input-group-prepend">').append(g)).parent().addClass("input-group input-group-lg")}));$("select:not([multiple])",a).each(function(){U(this)})}function ua(a){if($(a).is(".mce-window")){var b=$(a).find(".mce-window-body"),e=$(a).find(".mce-foot > .mce-container-body");b.length&&B(b[0]);b.find("button").filter(function(){return 0<
$(this).parent(".mce-btn").length}).removeClass("btn btn-secondary");5===e.children(".mce-widget").length&&e.addClass("mce-search-foot");$(a).find(".mce-charmap").parent().parent().addClass("mce-charmap-dialog");$(a).find(".mce-combobox").each(function(){$(this).children(".mce-btn").length||$(this).addClass("mce-combobox-fake")});$(a).find(".mce-form > .mce-container-body").each(function(){4<$(this).children(".mce-formitem").length&&$(this).addClass("mce-form-split")});$(a).find(".mce-form").next(":not(.mce-formitem)").addClass("mce-form");
if(!y()){var c=0;e=b.height();$(a).find(".mce-form").each(function(){c=Math.max(c,$(this).height())});e<c&&(c+=(b.find(".mce-tabs").height()||0)+25,b.height(c),$(a).height($(a).height()+(c-e)),$(a).css("top",($(window).height()-$(a).height())/2+"px"))}}else $(a).is(".mce-menu")&&($(a).prepend($('<h3 class="popover-header">').append($('<a class="button icon "cancel">').text(rcmail.gettext("close")).on("click",function(){$(document.body).click()}))),window.MutationObserver&&(new MutationObserver(function(){"phone"==
w&&($(".mce-menu:visible").length?$("div.mce-overlay").length||$("<div>").attr("class","popover-overlay mce-overlay").appendTo("body").click(function(){$(this).remove()}):$("div.mce-overlay").click())})).observe(a,{attributes:!0}))}function va(a,b){if(a.match(/_action=(create|add)/)||a.match(/_nav=hide/))$(n.frame_nav).addClass("hide-nav-buttons");else{var e,c,f;if((a=$("[data-list]",k.list).data("list"))&&(f=rcmail[a])){$(n.frame_nav).removeClass("hide-nav-buttons hidden");if(c=f.get_single_selection())f.rows&&
f.rows[c]&&!f.rows[c].expanded?f.expand_row(b,c):f.get_node&&(e=f.get_node(c))&&e.collapsed&&f.expand(c);var d,h,g=$("#"+rcmail.env.contentframe);b=$("a.button.next",n.frame_nav).off("click").addClass("disabled");e=$("a.button.prev",n.frame_nav).off("click").addClass("disabled");if((h=f.get_next())||rcmail.env.current_page<rcmail.env.pagecount)b.removeClass("disabled").on("click",function(){n.content_lock=!0;Q(g);h?f.select(h):(rcmail.env.list_uid="FIRST",rcmail.command("nextpage"))});if((d=f.get_prev())&&
("*"!=d||"subscription_list"!=a)||1<rcmail.env.current_page)e.removeClass("disabled").on("click",function(){n.content_lock=!0;Q(g);d?f.select(d):(rcmail.env.list_uid="LAST",rcmail.command("previouspage"))})}else $(n.frame_nav).is(".hide-nav-buttons")&&!$(".buttons",n.frame_nav).children().length&&$(n.frame_nav).addClass("hidden")}}function wa(a){var b=[],e=$("#"+a.id).parent().is(".html-editor");a.config.plugins+=" autoresize";R().touch&&(a.config.toolbar_items_size=null,a.config.toolbar="undo redo | insert | styleselect",
a.config.plugins.match(/emoticons/)&&(a.config.toolbar+=" emoticons"));if("mail"==rcmail.task&&"compose"==rcmail.env.action){var c=$("#compose-content > form"),f=function(d){"Tab"==d.key&&d.shiftKey&&$("#compose-content > form").scrollTop(0)};b.push(function(d){d.on("keypress",f)});$("#composebody").on("keypress",f);c.on("scroll",function(){var d=$(".mce-container-body",c),h=$(".mce-top-part",d),g=d.offset(),l=c.offset().top;g&&0>g.top-l?h.css({position:"fixed",top:l+"px",width:d.width()+"px"}):h.css({position:"relative",
top:0,width:"auto"})});$(window).resize(function(){c.trigger("scroll")})}e&&(a.config.toolbar="plaintext | "+a.config.toolbar,a.config.setup_callback=function(d){d.addButton("plaintext",{tooltip:rcmail.gettext("plaintoggle"),icon:"plaintext",onclick:function(h){rcmail.command("toggle-editor",{id:d.id,html:!1},"",h.originalEvent)&&$("#"+d.id).parent().removeClass("ishtml")}})});rcmail.addEventListener("editor-load",function(d){$.each(b,function(){this(d.ref.editor)})})}function ia(a){$("ul",a.obj).addClass("menu listing iconized");
$(a.obj).addClass("popupmenu popover");B(a.obj);$("input",a.obj).addClass("form-control");if(y()&&$(a.obj).is(".googie_window")){var b=rcmail.gettext("close");b=$("<a>").attr("class","button icon cancel").text(b).click(function(e){e.stopPropagation();$(".popover-overlay").remove();$(a.obj).hide()});$('<h3 class="popover-header">').append(b).prependTo(a.obj);$(".popover-overlay").length||$("<div>").attr("class","popover-overlay").appendTo("body").click(function(){$(this).remove()});$("ul,button",a.obj).click(function(e){$(e.target).is("input")||
$(".popover-overlay").remove()})}}function xa(a){u&&$.each(ea,function(e,c){if(a.command==c.command)parent.$("#"+c.button_id)[a.status?"removeClass":"addClass"]("disabled")});if("mail"==rcmail.task)switch(a.command){case "reply-list":if(1==rcmail.env.reply_all_mode){var b=rcmail.gettext(a.status?"replylist":"replyall");$(".toolbar a.reply-all").attr("title",b).find(".inner").text(b)}break;case "compose-encrypted":$(".toolbar a.encrypt").parent().show();break;case "compose-encrypted-signed":$("#encryption-menu-button").show()}}
function ja(){var a=$(window).width();T=1024>=a;w=480>=a?"phone":1200<a?"large":768<a?"normal":"small"}function O(){var a;ja();W();ya();(a=y())?(rcmail.set_env(n.small_screen_config),rcmail.enable_command("extwin",!1)):(rcmail.set_env(n.config),rcmail.enable_command("extwin",!0));$.each(X,function(){$(this)[a?"hide":"show"]()})}function W(){if(!u||k.sidebar.length||k.list.length){switch(w){case "phone":ka();H(!1);break;case "small":ka();H(!0);break;case "normal":za();break;case "large":Aa()}"phone"==
w&&$("#logo").data("src-small")?$("#logo").attr("src",$("#logo").data("src-small")):$("#logo").attr("src",$("#logo").data("src-default"));L();bw.webkit&&bw.ipad&&bw.agent.match(/OS 9/)&&$(".iframe-wrapper").each(function(){var a=$(this).height();a&&$(this).children("iframe").height(a)})}else L()}function ya(){var a=R(),b=$(document.documentElement);b[0].className.match(/layout-([a-z]+)/)?RegExp.$1!=a.mode&&b.removeClass("layout-"+RegExp.$1).addClass("layout-"+a.mode):b.addClass("layout-"+a.mode);
a.touch&&!b.is(".touch")?b.addClass("touch"):!a.touch&&b.is(".touch")&&b.removeClass("touch")}function L(){$("#layout > div > .header").each(function(){var a,b=0,e=0,c={left:0,right:0};$(this).children(":visible:not(.position-absolute)").each(function(){!a&&$(this).is(".header-title")?a=$(this):c[a?"right":"left"]+=this.offsetWidth});0+c.right>=c.left?(b=0,e=c.right+0-c.left):(e=0,b=c.left-(0+c.right));$(a).css({"margin-right":b+"px","margin-left":e+"px","padding-right":"0px"})})}function za(){if(k.list.length){var a=
k.list.is(n.last_selected)||!k.sidebar.is(n.last_selected)&&!k.sidebar.is(".layout-sticky");k.list[a?"removeClass":"addClass"]("hidden")}k.sidebar.length&&(a=!k.list.length||k.sidebar.is(n.last_selected)||k.sidebar.is(".layout-sticky"),k.sidebar[a?"removeClass":"addClass"]("hidden"));k.content.removeClass("hidden");H(!0);la();k.list.length&&$(".header > ul.menu",k.list).addClass("popupmenu")}function Aa(){$.each(k,function(a,b){b.removeClass("hidden")});la();k.list&&$(".header > ul.menu.popupmenu",
k.list).removeClass("popupmenu")}function ka(){var a=!1;if(k.content.length){var b=a=k.content.is(n.last_selected);k.content[b?"removeClass":"addClass"]("hidden");$(".header > ul.menu",k.content).addClass("popupmenu")}k.list.length&&(b=!a&&k.list.is(n.last_selected),k.list[b?"removeClass":"addClass"]("hidden"),$(".header > ul.menu",k.list).addClass("popupmenu"));k.sidebar.length&&(b=!a&&(k.sidebar.is(n.last_selected)||!k.list.length),k.sidebar[b?"removeClass":"addClass"]("hidden"));a&&I.back_list.show()}
function la(){I.back_list.filter(function(){return 0==$(this).parents("#layout-sidebar").length}).hide();$("ul.menu.popupmenu").removeClass("popupmenu")}function Y(a){k.list.addClass("hidden");k.sidebar.removeClass("hidden");a&&k.sidebar.addClass("layout-sticky");"small"!=w&&"phone"!=w||k.content.addClass("hidden");L();n.last_selected=k.sidebar[0]}function Z(a){k.list.length||k.sidebar.length?(k.sidebar.addClass("hidden").removeClass("layout-sticky"),k.list.removeClass("hidden"),"small"!=w&&"phone"!=
w||Ba(),a&&k.list.children(".scroller").scrollTop(0),n.last_selected=k.list[0]):history.back();L()}function Ba(){n.last_selected=k.list[0]||k.sidebar[0];W();rcmail.show_contentframe(!1);$("[data-list]",k.list).each(function(){var a=$(this).data("list");rcmail[a]&&(rcmail[a].clear_selection?rcmail[a].clear_selection():rcmail[a].select&&rcmail[a].select())})}function H(a){a?("phone"==w&&($('<div id="menu-overlay" class="popover-overlay">').on("click",function(){H(!1)}).appendTo("body"),n.menu_initialized||
(n.menu_initialized=!0,$("a",k.menu).on("click",function(b){"phone"==w&&H()})),k.menu.addClass("popover")),k.menu.removeClass("hidden")):($("#menu-overlay").remove(),k.menu.addClass("hidden").removeClass("popover"))}function Ca(a){"loading"==a.type&&$(".iframe-loader:visible").length?rcmail.hide_message(a.object):(V(a.object,a.type,!0),$(a.object).attr("role","alert"))}function V(a,b,e){var c="ui alert",f=!$(a).is(".noicon");e&&f&&!$(a).is(".aligned-buttons")&&$(a).html($("<span>").html($(a).html()));
b=b.split(" ")[0];if(b={information:"alert-info",notice:"alert-info",confirmation:"alert-success",warning:"alert-warning",error:"alert-danger",loading:"alert-info loading",uploading:"alert-info loading",vcardattachment:"alert-info"}[b])c+=" "+b,f&&$("<i>").attr("class","icon").prependTo(a);$(a).addClass(c)}function ma(a){var b=$(),e=$("a.button.options",a),c=$("input:not([type=hidden])",a),f=c.attr("placeholder");$("form",a);var d=function(){if(c.val()||"mail"==rcmail.task&&$("#s_interval").val()||
rcmail.gui_objects.search_filter&&"ALL"!=$(rcmail.gui_objects.search_filter).val()||rcmail.gui_objects.foldersfilter&&"---"!=$(rcmail.gui_objects.foldersfilter).val())return!0},h=function(){$(a).is(".open")&&e.click()},g=function(){$(a)[d()?"addClass":"removeClass"]("active");b[rcmail.gui_objects.search_filter&&"UNSEEN"==$(rcmail.gui_objects.search_filter).val()?"addClass":"removeClass"]("selected")};c.is("#mailsearchform")&&(b=$("<a>").attr({"class":"button unread",href:"#",role:"button",title:rcmail.gettext("showunread")}).on("click",
function(l){$(rcmail.gui_objects.search_filter).val($(l.target).is(".selected")?"ALL":"UNSEEN");rcmail.command("search")}).insertBefore(e));e.on("click",function(l){var m=$(this).data("target"),p=$("#"+m),q=$(a).is(".open");if(p.length){if(!q)if(M[m])M[m](p.get(0),this,l);else if("function"==typeof window[m])window[m](p.get(0),this,l);p.next()[q?"show":"hide"]();p.toggleClass("hidden");$(".floating-action-buttons").toggleClass("hidden");$(a).toggleClass("open");$("button.search",p).off("click.search").on("click.search",
function(){e.click();g()})}});c.on("input change",g).on("focus blur",function(l){c.attr("placeholder","blur"==l.type?f:"")});$("a.reset",a).on("click",function(l){c.val("").change().trigger("keyup.treelist",{keyCode:27});$(a).is(".open")&&e.click();rcmail.gui_objects.search_filter&&$(rcmail.gui_objects.search_filter).val("ALL");rcmail.gui_objects.foldersfilter&&($(rcmail.gui_objects.foldersfilter).val("---").change(),rcmail.folder_filter("---"));g()});rcmail.addEventListener("init",g).addEventListener("responsebeforesearch",
g).addEventListener("beforelist",h).addEventListener("afterlist",g).addEventListener("beforesearch",h)}function N(a,b){if(u&&y())return parent.UI.popup_init(a,b||window);b||(b=window);var e,c=$(a).data("popup"),f=$(b.$("#"+c).get(0)),d=f,h=$(a).attr("title");$(a).attr({"aria-haspopup":"true","aria-expanded":"false","aria-owns":c}).popover({content:function(){b!=window&&(f=d.clone(!0,!0),f.attr("id",c+"-clone").appendTo(document.body).find("li > a").attr("onclick","").off("click").on("click",function(g){$(this).is(".disabled")||
($(a).popover("hide"),b.$("#"+$(this).attr("id")).click());return!1}));return f.get(0)},trigger:$(a).data("popup-trigger")||"click",placement:$(a).data("popup-pos")||"bottom",animation:!0,boundary:"window",html:!0}).on("show.bs.popover",function(g){var l=f.data("popup-init");c&&v[c]&&(v[c].transitioning=!0);if(l&&M[l])M[l](f.get(0),a,g);else if(l&&b[l])b[l](f.get(0),a,g);e=$("div.popover:visible").length+1;f.removeClass("hidden").attr("aria-hidden",!1).find('[aria-haspopup="true"]').data("level",
e+1).off("click.popup").on("click.popup",function(m){m.stopPropagation()});y()||f.css("max-height",Math.min(539,$(window).height()-30))}).on("shown.bs.popover",function(g){g=y();var l=$("#"+$(a).attr("aria-describedby"));e=$(a).data("level")||1;if(g){var m=1<e?"back":"close",p=rcmail.gettext(m);m="button icon "+("back"==m?"back":"cancel");$(".popover-header",l).empty().append($("<a>").attr("class",m).text(p).on("click",function(q){$(a).popover("hide");1<e&&q.stopPropagation()}).on("mousedown",function(q){q.stopPropagation()}))}$.each(v,
function(q,C){$(C.target).data("level")==e&&q!=c&&S(q)});"key"==$(a).data("event")&&(l.off("keydown.popup").on("keydown.popup","a.active",function(q){var C,J="next";switch(q.which){case 27:case 9:return $(a).popover("toggle").focus(),!1;case 38:case 63232:J="previous";case 40:case 63233:for(q=q.target.parentNode;q=q[J+"Sibling"];)if(C=$(q).children(".active")[0]){C.focus();break}return!1}}),l.find("a.active").first().focus());c&&v[c]&&(v[c].transitioning=!1);g&&!$(".popover-overlay").length&&$("<div>").attr("class",
"popover-overlay").appendTo("body").click(function(){$(this).remove()});$(".popover-body",l).addClass("webkit-scroller")}).on("hide.bs.popover",function(){1==e&&$(".popover-overlay").remove();c&&v[c]&&f.is(":visible")&&(v[c].transitioning=!0)}).on("hidden.bs.popover",function(){/-clone$/.test(f.attr("id"))?f.remove():f.attr("aria-hidden",!0).addClass("hidden").appendTo(f.data("popup-parent")||document.body);$(".popover-body:empty").each(function(){$(this).parent().remove()});c&&v[c]&&delete v[c]}).on("click",
function(){$(this).data("event","mouse")}).on("keydown",function(g){if(g.originalEvent)switch(g.originalEvent.which){case 13:case 32:g.preventDefault();$(this).data("event","key").popover("toggle");break;case 27:$(this).popover("hide")}});h&&$(a).attr("title",h);f.attr("aria-hidden","true").data("button",a);if(f.data("editable"))f.on("click mousedown",function(g){g.stopPropagation()})}function G(a){aa&&aa>(new Date).getTime()-250||$(".popover.show").each(function(){var b=$(".popover-body",this).children().first().data("button");
b&&a.target!=b&&!$(b).find(a.target).length&&"string"!==typeof b&&$(b).popover("hide");b||$(this).remove()})}function ba(a){if(a&&a.name&&(!a.props||!1!==a.props.skinable)){if(u&&y())return a.win||(a.win=window),parent.UI.menu_toggle(a);if("messagelistmenu"==a.name)Da(a);else if("menu-open"==a.event){var b=$("ul",a.obj).first(),e=a.props&&a.props.link?a.props.link:a.originalEvent.target;$(e).is("span")&&(e=$(e).parents("a,li")[0]);if(a.name.match(/^drag/)){var c=rcube_event.get_mouse_pos(a.originalEvent);
e=$("<a>").css({position:"absolute",left:c.x,top:c.y,height:"1px",width:"1px",visibility:"hidden"}).appendTo(document.body).get(0)}c=$(e).data("popup-pos")||"right";"folder-selector"==a.name?b.addClass("listing folderlist"):"addressbook-selector"==a.name||"contactgroup-selector"==a.name?b.addClass("listing contactlist"):b.hasClass("menu")&&b.addClass("listing");"pagejump-selector"==a.name&&(b.addClass("simplelist"),a.obj.addClass("simplelist"),c="top");v[a.name]&&S(a.name,a.originalEvent);var f=function(){if(v[a.name]&&
v[a.name].transitioning)return setTimeout(f,50);$(e).data("popup")||($(e).data({event:rcube_event.is_keyboard(a.originalEvent)?"key":"mouse",popup:a.name,"popup-pos":c,"popup-trigger":"manual"}),N(e,a.win));v[a.name]={target:e};$(e).popover("show")};f()}else S(a.name,a.originalEvent);a.originalEvent.stopPropagation()}}function S(a,b){var e=a;if(v[e])var c=v[e].target;else c=$("#"+e).data("button"),c||(e.match(/(?!-)menu$/)&&(e=e.substr(0,e.length-4)),c=$("#"+e+"-menu").data("button"));e=c;a.match(/^drag/)?
$(e).popover("dispose").remove():($(e).popover("hide"),"forwardmenu"==a&&G(b))}function Da(a){a=$("#listoptions-menu");a.width();var b=a.clone(!0);$('select[name="sort_col"]',b).val(rcmail.env.sort_col||"");$('select[name="sort_ord"]',b).val(rcmail.env.sort_order||"ASC");$('select[name="mode"]',b).val(rcmail.env.threading?"threads":"list");$("select",b).each(function(){this.id+="-clone"});$("label",b).each(function(){$(this).attr("for",$(this).attr("for")+"-clone")});b=rcmail.simple_dialog(b,rcmail.gettext("listoptionstitle"),
function(e){rcube_event.is_keyboard(e.originalEvent)&&$("#listmenulink").focus();e=$('select[name="sort_col"]',b).val();var c=$('select[name="sort_ord"]',b).val(),f=$('select[name="mode"]',b).val();rcmail.set_list_options([],e,c,"threads"==f?1:0);return!0},{closeOnEscape:!0,minWidth:400})}function na(a,b){var e=rcmail.env.task;var c=rcmail.env.search_mods,f=rcmail.env.mailbox,d=$("#s_scope",a).val(),h=$("#s_interval",a).val();"all"==d&&(f="*");c||(c={});if("mail"==e){c[f]||(c[f]=rcube_clone_object(c["*"]));
var g=c[f];e="text";rcmail.env.search_scope=d;rcmail.env.search_interval=h}else g=c,e="*";b&&(b.checked?g[b.value]=1:delete g[b.value],b.value==e&&$('input[name="s_mods[]"]',a).map(function(){this!=b&&(this.checked=!0,b.checked?(this.disabled=!0,delete g[this.value]):(this.disabled=!1,g[this.value]=1))}),rcmail.set_searchmods(g))}function ha(a,b){var e=$("#composestatusbar"),c=e.find("a.button.icon."+a);b?c.length||$("<a>").attr("class","button icon "+a).on("click",function(){Y()}).appendTo(e):c.remove()}
function oa(a,b,e){var c=$(b).parent().attr("id").replace(/^attach/,"");$.each(["open","download","rename"],function(){var f=this;$("#attachmenu"+f,a).off("click").attr("onclick","").click(function(d){return rcmail.command(f+"-attachment",c,this,d.originalEvent)})});return rcmail.command("menu-open",{menu:"attachmentmenu",id:c},a,e)}function fa(a){a=$(a);if(!a.is(".no-menu")&&!a.children(".dropdown").length){var b=rcmail.gettext("options"),e=a.find("a.filename"),c=$("<a>").attr({href:"#",tabindex:e.attr("tabindex")||
0,title:b,"class":"button icon dropdown skip-content"}).on("click",function(f){return oa($("#attachmentmenu"),c,f)}).append($("<span>").attr("class","inner").text(b));e.length?c.insertAfter(e):c.appendTo(a)}}function pa(a,b,e,c){var f=$(b).attr("href").replace(/^mailto:/,"");if(0>f.indexOf("@"))return!0;a.find("a").off("click").removeClass("active");if(rcmail.env.has_writeable_addressbook)$(".addressbook",a).addClass("active").on("click",function(d){var h=f,g=$(b).filter(".rcmContactAddress").text();
h=h.split("?")[0].split(",")[0].replace(/(^<|>$)/g,"");g&&(g=g.replace("<"+h+">",""),h='"'+$.trim(g)+'" <'+h+">");return rcmail.command("add-contact",h,this,d.originalEvent)});$(".compose",a).addClass("active").on("click",function(d){c?(b.onclick=c,$(b).trigger("click",[!0]),b.onclick=null):rcmail.command("compose",f,this,d.originalEvent);return!1});return rcmail.command("menu-open",{menu:"mailto-menu",link:b},b,e.originalEvent)}function ta(a){var b=a.onclick;a.onclick=null;$(a).on("click",function(e,
c){return c||pa($("#mailto-menu"),a,e,b)})}function Ea(a){var b=$("#quotadisplay"),e=b.find(".bar"),c=a.total?a.percent:0;e.length||(e=$('<span class="bar"><span class="value"></span></span>').appendTo(b));0<c&&10>c&&(c=10);e.find(".value").css("width",c+"%")[90<=c?"addClass":"removeClass"]("warning");b.attr({"data-original-title":"",title:b.find(".count").attr("title")});if(a.table)b.css("cursor","pointer").data("popup-pos","top").off("click").on("click",function(f){rcmail.simple_dialog(a.table,
"quota",null,{cancel_button:"close"})});else b.tooltip("dispose").tooltip({trigger:y()?"click":"hover"})}function Fa(a){var b="",e=function(){$(a).val(h.text()+d.val())},c=function(g,l,m){var p=$('<li class="recipient">'),q=$('<span class="name">').html(Ga(g||l)).on("dblclick",function(ca){Ha(ca,c)}),C=$('<span class="email">'),J=$("<a>").attr({"class":"button icon remove"}).click(function(){p.remove();e();d.focus();return!1});g&&(l=" <"+l+">");C.text((g?l:"")+",");p.attr("title",g?g+l:null).append([q,
C,J]);m?m.replaceWith(p):p.insertBefore(d.parent());e()},f=function(g){g=(g||d.val()).replace(/[,;\s]+$/,"");g=qa(g);$.each(g.recipients,function(){c(this.name,this.email)});d.val(g.text);e();return 0<g.recipients.length};var d=$("<input>").attr({type:"text",tabindex:$(a).attr("tabindex")}).on("paste change",function(g,l){var m=this.value;"paste"==g.type?(l=(g.originalEvent.clipboardData||window.clipboardData).getData("text")||"",m=m.substring(0,this.selectionStart)+l+m.substring(this.selectionEnd),
g.preventDefault()):l&&(g=h.find("li.recipient").last(),g.length&&-1<this.value.indexOf(g.text().replace(/[ ,]+$/,""))&&g.remove());f(m)}).on("keydown",function(g){if(8==g.keyCode&&!d.val().length)return h.children("li.recipient").last().remove(),e(),!1;if((","==g.key||";"==g.key||"Enter"==g.key&&!rcmail.ksearch_visible())&&f())return!1}).on("blur",function(){h.removeClass("focus")}).on("focus mousedown",function(){h.addClass("focus")});var h=$("<ul>").addClass("form-control recipient-input ac-input rounded-left").append($('<li class="input">').append(d)).on("mouseup",
function(){b=window.getSelection().toString()}).on("click",function(){b.length||d.focus()});$(a).css({position:"absolute",opacity:0,left:"-5000px",width:"10px"}).attr("tabindex",-1).after(h).on("focus",function(g){d.focus();g.preventDefault()}).on("change",function(){$("li.recipient",h).remove();d.val(this.value).change()}).change();rcmail.init_address_input_events(d)}function qa(a){a=$.trim(a.replace(/[,;\s]*[\r\n]+/g,","));var b=[],e=/(<(\S+|("[^"]+"))@\S+>)/,c=/((\S+|("[^"]+"))@\S+)/,f=a.match(/(?=\S)[^",;]*(?:"[^\\"]*(?:\\[,;\S][^\\"]*)*"[^",;]*)*/g);
$.each(f||[],function(){if(this.length&&(e.test(this)||c.test(this))){var d=RegExp.$1,h=$.trim(this.replace(d,""));b.push({name:h,email:d.replace(/(^<|>$)/g,""),text:this});a=a.replace(this,"")}});a=a.replace(/[,;]+/,",").replace(/^[,;\s]+/,"");return{recipients:b,text:a}}function Ga(a){var b,e="",c=a.length;'"'!=a.charAt(0)&&-1<a.indexOf('"')&&(a='"'+a.replace("\\","\\\\").replace('"','\\"')+'"');for(b=0;b<c;b++){var f=a.charAt(b);switch(f){case '"':if(0<b&&b<c-1){e+='"';break}e+='<span class="quotes">'+
f+"</span>";break;case "\\":e+='<span class="quotes">'+f+"</span>";"\\"==a.charAt(b+1)&&(e+=f,b++);break;case "<":e+="&lt;";break;case ">":e+="&gt;";break;default:e+=f}}return e}function Ha(a,b){var e=$(a.target).parents(".recipient"),c=e.text().replace(/,+$/,""),f=$("<input>").attr({type:"text",size:50}).val(c);a=$("<label>").text(rcmail.gettext("recipient")).append(f);rcmail.simple_dialog(a,"recipientedit",function(){var d;if(d=f.val()){if(d!=c){d=qa(d);if(1!=d.recipients.length)return!1;b(d.recipients[0].name,
d.recipients[0].email,e)}return!0}})}function Ia(a){var b=$("<a>").attr({"class":"icon button delete",href:"#"}).click(function(f){rcmail.command("delete-photo","",this,f);return!1}),e=$(a).find("img")[0],c=function(){var f=-1!=(e.currentSrc||e.src).indexOf(rcmail.env.photo_placeholder);$(a)[f?"removeClass":"addClass"]("changed")};$(a).append(b).click(function(){rcmail.upload_input("upload-form")});c();$(e).on("load",c)}function Q(a){a=$(a);if(a.length){var b=$('<div class="iframe-loader">').append($('<div class="spinner spinner-border" role="status">').append($('<span class="sr-only">').text(rcmail.gettext("loading"))));
a.on("load error loaded",function(){setTimeout(function(){b.remove()},500)}).parent().append(b);ra&&a.parent().addClass("ios-scroll")}}function P(a){var b;a=$(a);if(!a.is(".custom-control-input")){(b=a.attr("id"))||(b="icochk"+ ++n.checkboxes,a.attr("id",b));if(a.parent().is("label")){var e=a.parent();a=a.detach();e.before(a)}else e=$("<label>");e.attr({"for":b,"class":"custom-control-label",title:a.attr("title")||""}).on("click",function(c){c.stopPropagation()});a.addClass("form-check-input custom-control-input").wrap('<div class="custom-control custom-switch">').parent().append(e)}}
function Ja(a){var b=$(a.row).find("input[id^=icochk]");b.length&&(a="icochk"+ ++n.checkboxes,b.attr("id",a).next("label").attr("for",a))}function U(a){if(!bw.iphone&&!bw.ipad&&(a=$(a),!a.is(".pretty-select"))){var b="select"+a.attr("id")+a.attr("name"),e=function(){if(a[0].ownerDocument.defaultView.$(".select-menu .listing").data("ident")==b)return!0},c=function(){var d=e();a.popover("dispose").focus();return!d},f=function(d){var h,g=-1,l=[],m=[],p=a.closest(".ui-dialog")[0],q=(document.documentElement.clientHeight||
$(document.body).height())-75,C=$(document.body).width()-20,J=Math.min(a.outerWidth(),C),ca=a.val();y()||(q*=.5);G(d);$("option",a).each(function(){var r=$(this).text(),z=$('<a href="#">').data("value",this.value).addClass(this.disabled?"disabled":"active"+(this.value==ca?" selected":""));r.length?(z.text(r),m.push(this.disabled?"":r.charAt(0).toLowerCase())):(z.html("&nbsp;"),m.push(""));l.push($("<li>").append(z))});var D=$('<ul class="listing selectable iconized">').attr("data-ident",b).data("button",
a[0]).append(l).on("click","a.active",function(){var r=$(this).data("value"),z=c();a.val(r).change();return z}).on("keydown","a.active",function(r){var z;var x="next";switch(r.which){case 27:case 9:return c();case 13:case 32:return $(this).click(),!1;case 38:case 63232:x="previous";case 40:case 63233:for(r=r.target.parentNode;r=r[x+"Sibling"];)if(z=$(r).children(".active")[0]){z.focus();break}return!1;default:(x=r.originalEvent.key)&&1==x.length&&(x=x.toLowerCase(),h!=x&&(g=-1),r=m.indexOf(x,g+1),
(-1<r||-1<(r=m.indexOf(x)))&&D.find("a").eq(r).focus(),h=x,g=r)}});a.popover("dispose").popover({container:p||document.body,content:D[0],placement:"bottom",trigger:"manual",boundary:"viewport",html:!0,offset:"0,2",sanitize:!1,template:'<div class="popover select-menu" style="min-width: '+J+"px; max-width: "+C+'px"><div class="popover-header"></div><div class="popover-body" style="max-height: '+q+'px"></div></div>'}).on("shown.bs.popover",function(){a.focus();D.parent().prev().empty().append($('<a class="button icon cancel">').text(rcmail.gettext("close")).on("click",
function(x){x.stopPropagation();return c()}));var r=D.find("a.selected").first();if(r.focus().length){var z=D.parent();g=D.find("a").index(r[0]);h=m[g];5<g&&z.scrollTop(z.scrollTop()+z.height()/2)}else rcube_event.is_keyboard(d)&&D.find("a.active").first().focus();D.on("mousedown",function(x){x.stopPropagation()})}).popover("show")};a.addClass("pretty-select custom-select form-control").on("mousedown keydown",function(d){a=$(d.target);if(!a.prop("disabled")){if(9==d.which)return c(),!0;if(27==d.which||
"mousedown"==d.type&&e())return c();a.focus();a.prop("disabled",!0);setTimeout(function(){a.prop("disabled",!1)},0);d.stopPropagation();if("mousedown"==d.type||13==d.which||32==d.which||40==d.which||63233==d.which)return f(d),aa=(new Date).getTime(),!1}})}}function Ka(a){var b=!1,e=$(a),c=e.parent(),f=$('<a class="mce-i-html" href="#" tabindex="-1"></a>').attr("title",rcmail.gettext("htmltoggle")).on("click",function(g){rcmail.command("toggle-editor",{id:e.attr("id"),html:!0},"",g.originalEvent)&&
c.addClass("ishtml")}).on("keydown",function(g){if(9==g.which)return e.focus(),!1}),d=$('<div class="editor-toolbar">').append(f);if(c.is("td")){var h=$('input[type="checkbox"]',c.parent().next());b=!0}else h=e.next("select.hidden");La(a);1==h.length&&(c.addClass("html-editor"),e.after(d).data("control",h).on("keydown",function(g){g.altKey&&121==g.which&&f.focus()}),b&&(h.parents("tr").first().hide(),c.prev().hide(),c.addClass("col-sm-12")))}function La(a){var b,e,c=function(){if(!a.scrollHeight)return setTimeout(c,
250);b||(b=parseInt($(a).css("padding-top"))+parseInt($(a).css("padding-bottom"))+2,e=$(a).height());if(!(a.scrollHeight-b<=e)){var f,d=0;$(a).parents().each(function(){if(0<this.scrollTop)return f=this,d=this.scrollTop,!1});var h=$(a).outerHeight();$(a).outerHeight(0);var g=Math.max(e,a.scrollHeight);$(a).outerHeight(h);g!==h&&$(a).height(g);d&&(f.scrollTop=d)}};$(a).on("input",c).trigger("input")}function da(a,b,e,c,f,d){c=$('<div class="input-group"><input type="text" class="form-control"><span class="input-group-append"><a class="icon reset input-group-text" href="#"></a></span></div>');
b={value:b,name:e+"[]"};f&&(b.size=f);$("input",c).attr(b).keydown(function(h){var g=$(this);if(13==h.which){h=g.attr("name").replace(/\[\]$/,"");var l=(new Date).getTime();g=da(a,"",h,l,f,g.parent());$("input",g).focus()}else if((8==h.which||46==h.which)&&""==g.val()&&(g=g.parent(),1<a.children().length))return g.prev().length?g.prev().children("input").focus():g.next().children("input").focus(),g.remove(),!1});$("a.reset",c).click(function(){var h=$(this.parentNode.parentNode);1<a.children().length?
($("input",h.next().length?h.next():h.prev()).focus(),h.remove()):$("input",h).val("").focus()});$(c).find("input,a").on("focus",function(){a.addClass("focused")}).on("blur",function(){a.removeClass("focused")});d?d.after(c):c.appendTo(a);return c}function sa(a){var b=a.find(".scroller .listing").first().attr("id"),e=rcmail.env.task+"."+(b||rcmail.env.action+"."+a.attr("id"));b=Ma(e);var c=a.is(".sidebar-right"),f=function(d){a.css({width:Math.max(100,d),flex:"none"})};a[c?"prev":"next"]().length&&
($('<div class="column-resizer">').appendTo(a).on("mousedown",function(d){var h,g=$(this),l=a.position().left;g.width(1E4).css(c?"left":"right",-5E3);document.body.style.userSelect="none";$(document).on("mousemove.resizer",function(m){clearTimeout(h);h=setTimeout(function(){c&&(l=a.position().left);var p=rcube_event.get_mouse_pos(m).x;p=c?a.width()+(l-p):p-l;f(p)},5)}).on("mouseup.resizer",function(){$(document).off(".resizer");$("iframe").off(".resizer");document.body.style.userSelect="auto";g.width(6).css(c?
"left":"right",-3);var m=a.width();E[e]=m;if(!rcmail.local_storage_set_item("prefs.elastic",E)){var p=new Date;p.setYear(p.getFullYear()+1);rcmail.set_cookie(e,m,p)}})}),b&&f(b))}function Na(a){if(!y()||!0===arguments[3])return n.open_window.apply(rcmail,arguments);a=rcmail.add_url(a,"_framed",1);a=rcmail.add_url(a,"_extwin",1);var b,e="",c={cancel_button:"close",width:768,height:768},f=$("<iframe>").attr({id:"windowframe",src:a});/_action=([a-z_]+)/.test(a)&&(b=rcmail.labels[RegExp.$1])&&(e=b);/_frame=1/.test(a)&&
(c.dialogClass="no-titlebar");rcmail.simple_dialog(f,e,null,c);return!0}function R(){if(u){var a=$(parent.document.documentElement);return{mode:a[0].className.match(/layout-([a-z]+)/)?RegExp.$1:w,touch:a.is(".touch")}}return{mode:w,touch:T}}function y(){var a=R();return"phone"==a.mode||"small"==a.mode}function Ma(a){E||(E=rcmail.local_storage_get_item("prefs.elastic",{}));if(null==E[a]){var b=rcmail.get_cookie(a);null!=b&&(E[a]=b,rcmail.local_storage_set_item("prefs.elastic",E)&&rcmail.set_cookie(a,
b,new Date))}return E[a]}var E,M=this,w="normal",T=!1,ra=!1,aa,u=rcmail.is_framed(),n={config:{standard_windows:rcmail.env.standard_windows,message_extwin:rcmail.env.message_extwin,compose_extwin:rcmail.env.compose_extwin,help_open_extwin:rcmail.env.help_open_extwin},checkboxes:0,small_screen_config:{standard_windows:!0,message_extwin:!1,compose_extwin:!1,help_open_extwin:!1}},v={},X=[],ea=[],k={menu:$("#layout-menu"),sidebar:$("#layout-sidebar"),list:$("#layout-list"),content:$("#layout-content")},
I={menu:$("a.task-menu-button"),back_sidebar:$("a.back-sidebar-button"),back_list:$("a.back-list-button"),back_content:$("a.back-content-button")};this.register_content_buttons=function(a){if(n.frame_nav&&a&&a.length){var b=n.frame_nav.children(".buttons");X=[];$.each(a,function(){this.data("target")&&X.push(this.data("target"))});b.html("").append(a)}};this.menu_hide=S;this.menu_toggle=ba;this.menu_destroy=function(a){$("[aria-owns="+a+"]").popover("dispose").data("popup",null)};this.popup_init=
N;this.about_dialog=function(a){var b,e=!1,c=$("<iframe>").attr({id:"aboutframe",src:rcmail.url("settings/about",{_framed:1})}),f=$("#supportlink");if(f.length&&(b=f.attr("href"))){e=f.text();var d=function(h){0>b.indexOf("mailto:")?window.open(b):location.href=b}}rcmail.simple_dialog(c,$(a).text(),d,{button:e,button_class:"help",cancel_button:"close",height:400})};this.headers_dialog=function(){var a={_uid:rcmail.env.uid,_mbox:rcmail.env.mailbox,_framed:1};a=$("<iframe>").attr({id:"headersframe",
src:rcmail.url("headers",a)});rcmail.simple_dialog(a,rcmail.gettext("arialabelmessageheaders"),null,{cancel_button:"close",height:400})};this.import_dialog=function(){if(rcmail.commands["import-messages"]){var a=$("#uploadform").clone(!0);rcmail.simple_dialog(a,rcmail.gettext("importmessages"),function(b){return rcmail.command("import-messages",$(a.find("form")[0]))},{button:"import",closeOnEscape:!0,minWidth:400})}};this.headers_show=function(a){a=$(a).parent().prev();a[a.is(".hidden")?"removeClass":
"addClass"]("hidden")};this.spellmenu=function(a){var b,e=[],c=rcmail.spellcheck_lang(),f=$("ul",a);if(!f.length){f=$('<ul class="selectable listing iconized" role="menu">');for(b in rcmail.env.spell_langs){var d=$('<li role="menuitem">');var h=$('<a href="#'+b+'" tabindex="0"></a>').text(rcmail.env.spell_langs[b]).addClass("active").data("lang",b).on("click keypress",function(g){if("keypress"!=g.type||13==rcube_event.get_keycode(g))return rcmail.spellcheck_lang_set($(this).data("lang")),rcmail.hide_menu("spell-menu",
g),!1});h.appendTo(d);e.push(d)}f.append(e).appendTo(a)}$("li",f).each(function(){var g=$("a",this);g.data("lang")==c?g.addClass("selected").attr("aria-selected","true"):g.hasClass("selected")&&g.removeClass("selected").removeAttr("aria-selected")})};this.searchmenu=function(a){var b,e=$('input[name="s_mods[]"]',a),c=$("#s_scope",a),f=rcmail.env.mailbox,d=rcmail.env.search_mods,h=rcmail.env.search_scope||"base";$(a).data("initialized")||($(a).data("initialized",!0),e.length&&(e.on("change",function(){na(a,
this)}),rcmail.addEventListener("beforesearch",function(){na(a)})));if(rcmail.env.search_mods){if("mail"==rcmail.env.task){"all"==h&&(f="*");d=d[f]?d[f]:d["*"];var g="text";c.val(h)}else g="*";if(d[g])e.map(function(){this.checked=!0;this.disabled=this.value!=g});else for(b in e.prop("disabled",!1).prop("checked",!1),d)e.filter('[value="'+b+'"]').prop("checked",!0)}};this.headersmenu=function(a,b,e){$("li > a",a).each(function(){var c=$(this),f="#compose_"+c.data("target");c[$(f).is(":visible")?"removeClass":
"addClass"]("active").off().on("click",function(){$(f).removeClass("hidden").find(".recipient-input input").focus();c.removeClass("active");rcmail.set_menu_buttons()})})};this.header_reset=function(a){$("#"+a).val("").change().closest(".form-group").nextAll(":not(.hidden)").first().find("input").focus();$("a[data-target="+a.replace(/^_/,"")+"]").addClass("active");rcmail.set_menu_buttons()};this.compose_status=ha;this.attachmentmenu=oa;this.mailtomenu=pa;this.recipient_selector=function(a,b){b||(b=
{});var e=rcmail.gettext(b.title||"insertcontact"),c=$("#recipient-dialog"),f=c.parent(),d=function(){c.is(":visible")&&rcmail.env.recipient_dialog.dialog("close")};rcmail.env.recipient_selector_initialized||(rcmail.addEventListener("add-recipient",d),rcmail.env.recipient_selector_initialized=!0);a&&(rcmail.env.focused_field="#_"+a);rcmail.contact_list.clear_selection();rcmail.contact_list.multiselect="multiselect"in b?b.multiselect:!0;rcmail.env.recipient_dialog=rcmail.simple_dialog(c,e,function(){b.action?
(b.action(),d()):rcmail.command("add-recipient")},{button:rcmail.gettext(b.button||"insert"),button_class:b.button_class||"insert recipient",height:600,classes:{"ui-dialog-content":"p-0"},open:function(){$("#directorylist a").first().focus()},close:function(){c.appendTo(f);$(this).remove();$(b.focus||rcmail.env.focused_field).focus()}})};this.show_list=Z;this.show_sidebar=Y;this.smart_field_init=function(a){var b=a.id+"_list",e=$('<div class="multi-input"><div class="content"></div><div class="invalid-feedback"></div></div>'),
c=a.value?a.value.split("\n"):[""];$("#"+b).length||($.each(c,function(f,d){da($(".content",e),d,a.name,f,$(a).data("size"))}),e.attr("id",b),a=$(a),a.attr("disabled")?e.hide():a.prop("disabled",!0),a.data("hidden")&&e.hide(),a.after(e),a.hasClass("is-invalid")&&(e.addClass("is-invalid"),$(".invalid-feedback",e).text(a.data("error-msg"))))};this.smart_field_reset=function(a,b){b=b.length?b:[""];var e=$("#"+(a.id+"_list")).children(".content");e.empty();$.each(b,function(c,f){da(e,f,a.name,c,$(a).data("size"))})};
this.form_errors=function(a){$.each(a,function(){var b=$("#"+this[0]).addClass("is-invalid");"list"==b.data("type")?(b.data("error-msg",this[2]),$("#"+this[0]+"_list > .invalid-feedback").text(this[2])):b.after($('<span class="invalid-feedback">').text(this[2]))})};this.switch_nav_list=function(a){var b=$("a",a),e=$(a).next();if(e.height())e.animate({height:"0"},250),b.addClass("expand").removeClass("collapse"),$(a).removeClass("expanded");else{var c=$("tr,li",e).filter(function(){return"none"!=this.style.display});
var f=$(c[0]).height()||50;e.animate({height:Math.min(5,c.length)*f+1+"px"},250);b.addClass("collapse").removeClass("expand");$(a).addClass("expanded")}};this.searchbar_init=ma;this.pretty_checkbox=P;this.pretty_select=U;this.datepicker_init=function(a){window.MutationObserver&&$(a).not("[data-observed]").each(function(){var b,e=!0,c=u?parent:window;$(this).attr("data-observed","1");u&&($(this).detach().appendTo(parent.document.body),$('<div id="ui-datepicker-div" class="hidden">').appendTo(document.body));
(new MutationObserver(function(f){$.each(f,function(d,h){"attributes"==h.type?(d="true"==$(h.target).attr("aria-hidden"),d!=e&&(d?b&&b.remove():b=$("<div>").attr("class","ui-widget-overlay datepicker").appendTo(c.document.body).click(function(g){$(this).remove();u&&$.datepicker._hideDatepicker()}),e=d)):h.addedNodes.length&&(c.UI.bootstrap_style(h.target),u&&(c.$("select.ui-datepicker-month",h.target).on("change",function(){$.datepicker._selectMonthYear($.datepicker._lastInput,this,"M")}),c.$("select.ui-datepicker-year",
h.target).on("change",function(){$.datepicker._selectMonthYear($.datepicker._lastInput,this,"Y")})))})})).observe(this,{childList:!0,subtree:!1,attributes:!0,attributeFilter:["aria-hidden"]})})};this.bootstrap_style=B;ja();(function(){n.last_selected=$("#layout > div.selected")[0];!n.last_selected&&k.content.length&&$.each(["sidebar","list","content"],function(){if(k[this].length)return n.last_selected=k[this][0],k[this].addClass("selected"),!1});$(window).on("resize",function(){clearTimeout(n.resize_timeout);
n.resize_timeout=setTimeout(function(){O()},25)});n.open_window=rcmail.open_window;rcmail.open_window=Na;rcmail.addEventListener("message",Ca).addEventListener("menu-open",ba).addEventListener("menu-close",ba).addEventListener("editor-init",wa).addEventListener("autocomplete_create",ia).addEventListener("googiespell_create",ia).addEventListener("setquota",Ea).addEventListener("enable-command",xa).addEventListener("clonerow",Ja).addEventListener("init",K);window.MutationObserver&&window.tinymce&&(new MutationObserver(function(b){$.each(b,
function(){$.each(this.addedNodes,function(){ua(this)})})})).observe(document.body,{childList:!0});if((k.list.length||k.content.length)&&y()){var a=[];$("[data-fab]").each(function(){var b=$(this),e=b.data("fab-task")||"*",c=b.data("fab-action")||"*";"*"!=e&&e!=rcmail.env.task||"*"!=c&&c!=rcmail.env.action&&("none"!=c||rcmail.env.action)||a.push(A(b,!1,!1,!0))});a.length&&$('<div class="floating-action-buttons">').append(a).appendTo(k.list.length?k.list:k.content)}k.sidebar.length&&sa(k.sidebar);
k.list.length&&sa(k.list)})();B();(function(){if(!n.got_smart_toolbar){n.got_smart_toolbar=!0;var a,b=[],e=[],c=R(),f=function(l,m,p){var q=$('<li role="menuitem">');l=p?A($(l),!0,"hidden-big hidden-large"):$(l).detach();l.contents().filter(function(){3!=this.nodeType||$.trim(this.nodeValue).length||$(this).remove()});l.is(".spacer")?q.addClass("spacer"):q.append(l);m.push(q)};k.content.find(".header > .menu").each(function(){var l=$(this);l.children().each(function(){f(this,b)});l.remove()});k.list.find(".header > .menu").each(function(){var l=
$(this);a=l.next();l.children().each(function(){"large"!=c.mode&&$(this).data("popup-pos","right");f(this,b,!0);f(this,e)});l.remove()});$('ul[data-menu="toolbar-small"] > li > a').each(function(){var l=$(this).clone();l.attr("id",this.id+"_clone");b.push($('<li role="menuitem">').addClass("hidden-big").append(l))});if(e.length){var d=k.list.children(".header"),h={"class":"menu toolbar popupmenu listing iconized",id:"toolbar-list-menu"},g=$('<a class="button icon toolbar-list-button" href="#list-menu">').attr({"data-popup":"toolbar-list-menu"});
h=$("<ul>").attr(h).data("popup-parent",d).append(e);a.length?h.insertBefore(a):d.append(h);d.append(g)}b.length&&(d=k.content.children(".header"),h={"class":"menu toolbar popupmenu listing iconized",id:"toolbar-menu"},g=$('<a class="button icon toolbar-menu-button" href="#menu">').attr({"data-popup":"toolbar-menu"}),d.append($("<ul>").attr(h).data("popup-parent",d).append(b)).append(g),k.list.find("a.toolbar-menu-button").click(function(l){l.stopPropagation();g.click()}))}})();(function(){if(k.list.length){var a=
n.last_selected,b=function(d){"string"===typeof d&&d.length||(d=$("h1.voice").text()||$("title").text()||"");k.content.find(".header > .header-title").text(d)},e=function(d,h,g,l){y()&&n.frame_nav&&va(h,d);g&&!k.content.is(":visible")?n.last_selected=k.content[0]:g||n.last_selected==a||n.content_lock||(n.last_selected=a);W();b(l&&g?l:null);n.content_lock=!1},c=function(d){"large"!=w&&!n.content_lock&&d.force&&Z();n.content_lock=!1;d.title&&$(".header > .header-title",k.list).text(d.title)},f=function(d){var h=
{};if("addressbook"==rcmail.env.task||"mail"==rcmail.env.task)h.force=!0;"mail"!=rcmail.env.task||rcmail.env.action||(d="string"==$.type(d)?d:rcmail.env.mailbox,d=rcmail.env.mailboxes[d],h.title=d?d.name:"");c(h)};k.content.find("iframe").on("load",function(d){var h="",g=!0;$(this).parent(".iframe-wrapper").scrollTop(0);try{h=d.target.contentWindow.location.href,g=!h.endsWith(rcmail.env.blankpage),$(d.target.contentWindow).on("unload",b)}catch(l){}e(d,h,g)});rcmail.addEventListener("afterlist",f).addEventListener("afterlistgroup",
f).addEventListener("afterlistsearch",f).addEventListener("show-list",function(d){d.force=!0;c(d)}).addEventListener("show-content",function(d){d.obj&&!$(d.obj).is("iframe")&&($(d.scrollElement||d.obj).scrollTop(0),y()&&Q(d.obj));e(d.event||new Event,"_action="+(d.mode||"edit"),!0,d.title)})}})();(function(){$("[data-popup]").each(function(){N(this)});$(document).on("click",G);rcube_webmail.set_iframe_events({mousedown:G,touchstart:G})})();(function(){var a,b,e=[];$.ui&&$.widget("ui.dialog",$.ui.dialog,
{open:function(){$(this.element).is(".iframe")&&(this.options.width=Math.max(576,this.options.width));this._super();var c=$(this.uiDialog),f=c.width(),d=c.height(),h=$(window).width(),g=$(window).height();480>=h?c.css({width:"100%",height:"100%"}):(d>g&&c.css("height","100%"),f>h&&c.css("width","100%"));$(document).click();Q($("div.popup > iframe",c));B(this.uiDialog);return this},close:function(){this._super();$(".select-menu:visible").remove();return this}});I.menu.on("click",function(){H(!0);return!1});
I.back_sidebar.on("click",function(){Y();return!1});I.back_list.on("click",function(){Z();return!1});I.back_content.on("click",function(){k.list.addClass("hidden");k.sidebar.addClass("hidden");k.content.removeClass("hidden");k.sidebar.removeClass("layout-sticky");L();n.last_selected=k.content[0];return!1});$(".searchbar").each(function(){ma(this)});!u||rcmail.env.extwin||parent.$(".ui-dialog:visible").length?u||((a=k.content.find(".boxtitle").first().detach().text())||(a=$("h1.voice").first().text()),
a&&k.content.find(".header > .header-title").text(a)):(a=$("h1.voice").first().text())&&parent.$("#layout-content > .header > .header-title:not(.constant)").text(a);u||!k.content.length||k.content.is(".no-navbar")||k.content.children(".frame-content").length||(n.frame_nav=$('<div class="footer menu toolbar content-frame-navigation hide-nav-buttons">').append($('<a class="button prev">').append($('<span class="inner"></span>').text(rcmail.gettext("previous")))).append($('<span class="buttons">')).append($('<a class="button next">').append($('<span class="inner"></span>').text(rcmail.gettext("next")))).appendTo(k.content));
$("a[data-content-button]").each(function(){e.push(A($(this)))});$(".formbuttons").filter(function(){return!$(this).parent(".searchoptions").length}).children().each(function(){var c=$(this);if(u||c.parents("#layout-content").length)c.is(".cancel")?c.addClass("hidden"):e.push(A(c))});(u?parent.UI:M).register_content_buttons(e);if(b=rcmail.gui_objects.messageform)b=$('form[name="'+b+'"]'),$("#_cc, #_bcc, #_replyto, #_followupto",$(".compose-headers")).each(function(){$(this).on("change",function(){$("#compose"+
$(this).attr("id"))[this.value?"removeClass":"addClass"]("hidden")})}),$("#compose-options").find("textarea,input,select").each(function(){var c=$("<input>").attr({type:"hidden",name:$(this).attr("name")}).appendTo(b);$(this).attr("tabindex",2).on("change",function(){c.val("checkbox"!=this.type||this.checked?$(this).val():"")}).change()});$("[data-recipient-input]").each(function(){Fa(this)});$(".image-upload").each(function(){Ia(this)});$("textarea[data-html-editor]").each(function(){Ka(this)});
$("#dragmessage-menu,#dragcontact-menu").each(function(){rcmail.gui_object("dragmenu",this.id)});$("#taskmenu > a").each(function(){if(/button-([a-z]+)/.test(this.className)){var c,f=RegExp.$1,d=F(this.id);d&&(c=d.data)&&(c.sel&&(c.sel=c.sel.replace("button-selected","selected")+" "+f),c.act&&(c.act+=" "+f),rcmail.buttons[d.command][d.index]=c,rcmail.init_button(d.command,c));$(this).addClass(f);$(".button-inner",this).addClass("inner")}$(this).on("mouseover",function(){rcube_webmail.long_subject_title(this,
0,$("span.inner",this))})});$(".listbutton").each(function(){var c=F(this.id);$(this).addClass("button").removeClass("listbutton");c.data.sel&&(c.data.sel=c.data.sel.replace("listbutton","button"));c.data.act&&(c.data.act=c.data.act.replace("listbutton","button"));rcmail.buttons[c.command][c.index]=c.data;rcmail.init_button(c.command,c.data)});$("[data-hidden]").each(function(){for(var c,f=$(this).data("hidden"),d=$(this).parent("li"),h=/(large|big|small|phone|lbs)/g;c=h.exec(f);)$(d.length?d:this).addClass("hidden-"+
c[1])});$("[data-list]").each(function(){$("input[type=checkbox]",this).each(function(){P(this)})});u&&$(".formcontent").each(function(){$(this).next(".formbuttons").length&&$(this).parent().addClass("formcontainer")});$("#attachment-list + a.zipdownload").appendTo(".header-links");(ra=$("html").is(".ipad,.iphone"))&&$(".iframe-wrapper, .scroller").addClass("ios-scroll");$("html").filter(".ipad,.iphone,.webkit.mobile,.webkit.tablet").addClass("webkit-scroller").length&&$(k.menu).addClass("webkit-scroller");
$(".treelist").each(function(){var c=this,f=function(){$(c)[0<$(".treetoggle",c).length?"removeClass":"addClass"]("notree")};window.MutationObserver&&(new MutationObserver(f)).observe(c,{childList:!0,subtree:!0});f();$("li.mailbox > a").on("mouseover",function(){rcube_webmail.long_subject_title_ex(this)})});$("#logo").data("src-default")||$("#logo").data("src-default",$("#logo").attr("src"))})();O()}
if(window.rcmail)rcmail.show_menu=function(t,A,F){var K="object"==typeof t?t.menu:t,B=$("#"+K);"string"==typeof t&&(t={menu:K});return rcmail.triggerEvent(!1===A?"menu-close":"menu-open",{name:K,obj:B,props:t,originalEvent:F})},rcmail.hide_menu=function(t,A){return rcmail.triggerEvent("menu-close",{name:t,props:{menu:t},originalEvent:A})};else var rcmail=parent.rcmail,rcube_webmail=parent.rcube_webmail,bw={};var UI=new rcube_elastic_ui;
if($&&$.datepicker){var __newInst=$.datepicker._newInst;$.extend($.datepicker,{_newInst:function(t,A){t=__newInst.call(this,t,A);t.inline||UI.datepicker_init(t.dpDiv);return t}})};