Show spam aliases #

This commit is contained in:
andryyy
2017-02-21 22:27:11 +01:00
parent 76426b65b2
commit 0eb932b3ab
2737 changed files with 357639 additions and 22 deletions

View File

@@ -0,0 +1,22 @@
Roundcube Webmail Skin "Larry"
==============================
This skin package contains the default theme of the Roundcube Webmail
software. It can be used, modified and redistributed according to
the terms described in the LICENSE section.
For information about building or modifiying Roundcube skins please visit
https://github.com/roundcube/roundcubemail/wiki/Skins
Screendesign by FLINT / Büro für Gestaltung, Bern, Switzerland
http://bueroflint.com
LICENSE
-------
The contents of this folder 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
autors in the README file.
See http://creativecommons.org/licenses/by-sa/3.0/ for details.

View File

@@ -0,0 +1,414 @@
/**
* Roundcube webmail styles for the Address Book section
*
* Copyright (c) 2012, The Roundcube Dev Team
* Screendesign by FLINT / B<>ro f<>r Gestaltung, bueroflint.com
*
* 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 autors in the README file.
* See http://creativecommons.org/licenses/by-sa/3.0/ for details.
*/
#addressview-left {
position: absolute;
top: 0;
left: 0;
width: 200px;
bottom: 0;
z-index: 2;
}
#addressview-right {
position: absolute;
top: 0;
left: 212px;
right: 0;
bottom: 0;
z-index: 3;
}
#addressbooktoolbar {
position: absolute;
top: -6px;
left: 0;
height: 40px;
white-space: nowrap;
z-index: 10;
}
#directorylistbox {
position: absolute;
top: 0;
left: 0;
width: 100%;
bottom: 0;
}
#addresslist {
position: absolute;
top: 0;
left: 0;
width: 260px;
bottom: 0;
}
#contacts-box {
position: absolute;
top: 0;
left: 272px;
right: 0;
bottom: 0;
}
#addressview-left #quicksearchbar input {
width: 156px;
}
#directorylist li a,
.treelist li.contactsearch a,
#contacts-table .contact td.name {
background-image: url(images/listicons.png?v=e9f1.12614);
background-position: -100px 0;
background-repeat: no-repeat;
overflow: hidden;
text-overflow: ellipsis;
}
#directorylist li.addressbook a {
background-position: 6px -766px;
}
#directorylist ul li.addressbook a {
background-position: 32px -766px;
}
#directorylist ul ul li.addressbook a {
background-position: 58px -766px;
}
#directorylist li.addressbook.selected > a {
background-position: 6px -791px;
}
#directorylist ul li.addressbook.selected > a {
background-position: 32px -791px;
}
#directorylist ul ul li.addressbook.selected > a {
background-position: 58px -791px;
}
#directorylist li.contactgroup a {
background-position: 6px -1555px;
}
#directorylist ul li.contactgroup a {
background-position: 32px -1555px;
}
#directorylist ul ul li.contactgroup a {
background-position: 58px -1555px;
}
#directorylist ul ul ul li.contactgroup a {
background-position: 84px -1555px;
}
#directorylist li.contactgroup.selected a {
background-position: 32px -1579px;
}
#directorylist ul ul li.contactgroup.selected a {
background-position: 58px -1579px;
}
#directorylist ul ul ul li.contactgroup.selected a {
background-position: 84px -1579px;
}
.treelist li.contactsearch a {
background-position: 6px -1651px;
}
.treelist li.contactsearch.selected a {
background-position: 6px -1675px;
}
#directorylist li.addressbook div.collapsed,
#directorylist li.addressbook div.expanded {
top: 15px;
}
#contacts-table .contact.readonly td {
font-style: italic;
}
#contacts-table td.name {
width: 95%;
}
#contacts-table td.action {
width: 24px;
padding: 4px;
}
#contacts-table td.action a {
display: block;
width: 16px;
height: 14px;
text-indent: -5000px;
overflow: hidden;
background: url(images/listicons.png?v=e9f1.12614) -2px -1180px no-repeat;
}
#contacts-table .contact td.name {
background-position: 4px -1603px;
}
#contacts-table .contact.selected td.name {
background-position: 4px -1627px;
font-weight: bold;
}
#contacts-table .group td.name {
background-position: 4px -1555px;
}
#contacts-table .group.selected td.name {
background-position: 4px -1579px;
font-weight: bold;
}
#contacts-table.focus .group.selected.focused td.name {
background-position: 4px -1579px;
}
#addresslist .boxtitle {
padding-right: 95px;
overflow: hidden;
text-overflow: ellipsis;
}
#addresslist .boxtitle a.poplink {
color: #004458;
font-size: 14px;
line-height: 12px;
text-decoration: none;
}
#contact-frame {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0px;
border: 0;
border-radius: 4px;
}
#headerbuttons {
position: absolute;
top: 48px;
right: 10px;
width: auto;
z-index: 10;
}
#sourcename {
color: #999;
font-size: 10px;
margin: -5px 0 8px 2px;
}
#contactphoto {
float: left;
margin: 0 18px 20px 0;
width: 112px;
border: 0;
padding: 0;
}
#contactpic {
width: 112px;
min-height: 112px;
background: white;
}
#contactpic img {
max-width: 112px;
visibility: inherit;
}
#contactpic.droptarget {
background-image: url(images/filedrop.png?v=be5d.415);
background-position: center;
background-repeat: no-repeat;
}
#contactpic.droptarget.hover {
background-color: #d9ecf4;
box-shadow: 0 0 5px 2px rgba(71,135,177, 0.9);
}
#contactpic.droptarget.active img {
opacity: 0.15;
}
#contactpic.droptarget.hover img {
opacity: 0.05;
}
#contactphoto .formlinks a[aria-disabled='true'] {
visibility: hidden;
}
#contacthead {
border: 0;
margin: 0 16em 1em 0;
padding: 0;
line-height: 1.5em;
font-size: 12px;
}
#contacthead > legend {
display: none;
}
form #contacthead {
margin-right: 0;
}
#contacthead .names span.namefield,
#contacthead .names input {
font-size: 140%;
font-weight: bold;
}
#contacthead .displayname span.namefield {
font-size: 120%;
font-weight: bold;
}
#contacthead span.nickname:before,
#contacthead span.nickname:after {
content: '"';
}
#contacthead input {
margin-right: 6px;
margin-bottom: 0.2em;
}
#contacthead .names input,
#contacthead .addnames input {
width: 180px;
}
#contacthead input.ff_prefix,
#contacthead input.ff_suffix {
width: 90px;
}
.contactfieldgroup {
border: 0;
border-radius: 5px;
background: #f7f7f7;
background: -moz-linear-gradient(top, #f7f7f7 0%, #eee 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f7f7f7), color-stop(100%,#eee));
background: -ms-linear-gradient(top, #f7f7f7 0%, #eee 100%);
background: linear-gradient(to bottom, #f7f7f7 0%, #eee 100%);
margin: 0 0 12px 0;
padding: 8px;
}
.contactfieldgroup legend {
display: block;
margin: 0 -8px;
width: 100%;
font-weight: bold;
text-shadow: 0px 1px 1px #fff;
padding: 6px 8px 3px 8px;
background: #f0f0f0;
background: -moz-linear-gradient(top, #f0f0f0 0%, #d6d6d6 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f0f0f0), color-stop(100%,#d6d6d6));
background: -ms-linear-gradient(top, #f0f0f0 0%, #d6d6d6 100%);
background: linear-gradient(to bottom, #f0f0f0 0%, #d6d6d6 100%);
border-bottom: 1px solid #cfcfcf;
border-radius: 5px 5px 0 0;
}
.contactfieldgroup .row {
position: relative;
margin: 0.2em 0;
}
.contactfieldgroup .contactfieldlabel {
position: absolute;
top: 0;
left: 2px;
width: 110px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
color: #666;
}
.contactfieldgroup .contactfieldlabel select {
width: 100%;
color: #666;
}
.contactfieldgroup .contactfieldcontent {
padding-left: 120px;
min-height: 1em;
line-height: 1.3em;
}
.contactfieldgroup .contactfield {
line-height: 1.3em;
}
.contactcontrolleraddress .contactfieldcontent input {
margin-bottom: 0.1em;
}
.contactfieldcontent.composite {
padding-bottom: 8px;
}
.contactfieldcontent .contactfieldbutton {
vertical-align: middle;
margin-left: 0.5em;
}
.contactfield .ff_notes {
width: 99%;
}
a.deletebutton {
position: relative;
left: 5px;
top: -3px;
display: inline-block;
width: 24px;
height: 18px;
text-decoration: none;
text-indent: -5000px;
background: url(images/buttons.png?v=ed37.15893) -7px -377px no-repeat;
}
#import-box {
position: absolute;
bottom: 0px;
top: 34px;
left: 0;
right: 0;
overflow: auto;
padding: 10px;
}
#import-box p,
#import-box .propform {
max-width: 50em;
}

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,34 @@
/**
* Roundcube webmail "embedded" stylesheets
*
* Copyright (c) 2012, 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 autors in the README file.
* See http://creativecommons.org/licenses/by-sa/3.0/ for details.
*/
.rcmail-inline-message {
font-family: sans-serif;
font-size: 11px;
font-weight: bold;
color: #996600;
border: 1px solid #ffdf0e;
background: url(images/messages.png?v=6ff4.1430) no-repeat scroll 5px -83px #fef893;
padding: 6px 12px 4px 30px;
margin-bottom: 0.8em;
}
.rcmail-inline-message > button {
margin-left: 1em;
vertical-align: baseline;
}
.rcmail-inline-message em {
font-size: 90%;
}
.rcmail-inline-buttons {
margin-bottom: 0;
}

1
data/web/rc/skins/larry/embed.min.css vendored Normal file
View File

@@ -0,0 +1 @@
.rcmail-inline-message{font-family:sans-serif;font-size:11px;font-weight:bold;color:#960;border:1px solid #ffdf0e;background:url(images/messages.png?v=6ff4.1430) no-repeat scroll 5px -83px #fef893;padding:6px 12px 4px 30px;margin-bottom:.8em}.rcmail-inline-message>button{margin-left:1em;vertical-align:baseline}.rcmail-inline-message em{font-size:90%}.rcmail-inline-buttons{margin-bottom:0}

View File

@@ -0,0 +1,94 @@
/***** modified styles for GoogieSpell *****/
.googie_window {
font-size: 11px;
width: 185px;
margin: 0;
padding: 0;
}
.googie_edit_layer {
padding: 4px;
font-size: 9pt;
font-family: monospace;
background-color: #fff;
border: 0;
}
.googie_edit_layer span {
font-family: monospace;
}
.googie_list {
width: 100%;
margin: 0;
padding: 0;
border-spacing: 0;
}
.googie_list td {
min-width: 80px;
width: auto;
}
.googie_list td.googie_list_selected {
background: #4db0d2;
}
.googie_list_close {
font-size: 11px;
color: #b91414;
}
.googie_list_onhover .googie_list_close {
color: #fff;
}
.googie_list_revert {
font-size: 11px;
color: #b91414;
}
.googie_list_revert:hover {
color: #fff;
}
.googie_link {
color: #b91414;
text-decoration: underline;
cursor: pointer;
font-size: 9pt;
font-family: monospace;
}
.googie_check_spelling_link {
color: #0069A6;
font-size: 11px;
text-decoration: underline;
cursor: pointer;
}
.googie_no_style {
text-decoration: none;
}
.googie_check_spelling_ok,
.googie_resume_editing {
color: green;
font-size: 11px;
cursor: pointer;
text-decoration: underline;
}
.googie_check_spelling_ok:hover,
.googie_resume_editing:hover {
text-decoration: underline;
}
.googie_lang_3d_click img,
.googie_lang_3d_on img {
vertical-align: middle;
cursor: pointer;
border: 0;
}

View File

@@ -0,0 +1 @@
.googie_window{font-size:11px;width:185px;margin:0;padding:0}.googie_edit_layer{padding:4px;font-size:9pt;font-family:monospace;background-color:#fff;border:0}.googie_edit_layer span{font-family:monospace}.googie_list{width:100%;margin:0;padding:0;border-spacing:0}.googie_list td{min-width:80px;width:auto}.googie_list td.googie_list_selected{background:#4db0d2}.googie_list_close{font-size:11px;color:#b91414}.googie_list_onhover .googie_list_close{color:#fff}.googie_list_revert{font-size:11px;color:#b91414}.googie_list_revert:hover{color:#fff}.googie_link{color:#b91414;text-decoration:underline;cursor:pointer;font-size:9pt;font-family:monospace}.googie_check_spelling_link{color:#0069a6;font-size:11px;text-decoration:underline;cursor:pointer}.googie_no_style{text-decoration:none}.googie_check_spelling_ok,.googie_resume_editing{color:green;font-size:11px;cursor:pointer;text-decoration:underline}.googie_check_spelling_ok:hover,.googie_resume_editing:hover{text-decoration:underline}.googie_lang_3d_click img,.googie_lang_3d_on img{vertical-align:middle;cursor:pointer;border:0}

Binary file not shown.

After

Width:  |  Height:  |  Size: 265 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 935 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 831 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 274 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 353 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 415 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 722 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 354 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 580 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 591 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

View File

@@ -0,0 +1,5 @@
<roundcube:object name="message" id="messagestack" condition="env:task != 'login'" />
<script type="text/javascript">
if (!window.UI) { var UI = new rcube_mail_ui(); }
</script>

View File

@@ -0,0 +1,44 @@
<script type="text/javascript">
var UI = new rcube_mail_ui();
</script>
<div id="header">
<div id="topline" role="banner" aria-labelledby="aria-label-topnav">
<h2 id="aria-label-topnav" class="voice"><roundcube:label name="arialabeltopnav" /></h2>
<div class="topleft">
<roundcube:container name="topline-left" id="topline-left" />
<roundcube:if condition="template:name != 'error'" />
<roundcube:button name="about" type="link" label="about" class="about-link" onclick="UI.show_about(this);return false" condition="!env:extwin" />
<roundcube:endif />
<roundcube:if condition="config:support_url" />
<a href="<roundcube:var name='config:support_url' />" target="_blank" class="support-link" id="supportlink"><roundcube:label name="support" /></a>
<roundcube:endif />
</div>
<roundcube:container name="topline-center" id="topline-center" />
<div class="topright">
<roundcube:container name="topline-right" id="topline-right" />
<roundcube:if condition="!env:extwin &amp;&amp; !env:framed" />
<span class="username"><roundcube:object name="username" /></span>
<roundcube:button command="logout" label="logout" class="button-logout" />
<roundcube:elseif condition="env:extwin" />
<roundcube:button name="close" type="link" label="close" class="closelink" onclick="self.close()" />
<roundcube:endif />
</div>
</div>
<roundcube:if condition="!env:extwin &amp;&amp; !env:framed" />
<div id="topnav">
<h2 id="aria-label-tasknav" class="voice"><roundcube:label name="arialabeltasknav" /></h2>
<div id="taskbar" class="topright" role="navigation" aria-labelledby="aria-label-tasknav">
<roundcube:button command="mail" label="mail" class="button-mail" classSel="button-mail button-selected" innerClass="button-inner" />
<roundcube:button command="addressbook" label="contacts" class="button-addressbook" classSel="button-addressbook button-selected" innerClass="button-inner" />
<roundcube:container name="taskbar" id="taskbar" />
<roundcube:button command="settings" label="settings" class="button-settings" classSel="button-settings button-selected" innerClass="button-inner" />
<roundcube:button command="logout" label="logout" class="button-logout" classSel="button-logout" innerClass="button-inner" />
<span class="minmodetoggle" role="presentation"></span>
</div>
<roundcube:object name="logo" src="/images/roundcube_logo.png" id="toplogo" alt="Logo" onclick="if(window.rcmail)rcmail.command('switch-task','mail')" />
</div>
<roundcube:endif />
<br style="clear:both" />
</div>

View File

@@ -0,0 +1,9 @@
<meta name="viewport" content="" id="viewport" />
<link rel="shortcut icon" href="/images/favicon.ico"/>
<link rel="stylesheet" type="text/css" href="/styles.css" />
<roundcube:if condition="in_array(env:task, array('mail','addressbook','settings'))" />
<link rel="stylesheet" type="text/css" href="/<roundcube:var name="env:task" />.css" />
<roundcube:endif />
<script type="text/javascript" src="/ui.js"></script>
<roundcube:add_label name="errortitle" />
<roundcube:add_label name="toggleadvancedoptions" />

View File

@@ -0,0 +1,62 @@
<roundcube:button command="compose" type="link" class="button compose disabled" classAct="button compose" classSel="button compose pressed" label="compose" title="writenewmessage" />
<span class="spacer"></span>
<roundcube:button command="reply" type="link" class="button reply disabled" classAct="button reply" classSel="button reply pressed" label="reply" title="replytomessage" />
<span class="dropbutton">
<roundcube:button command="reply-all" type="link" class="button reply-all disabled" classAct="button reply-all" classSel="button reply-all pressed" label="replyall" title="replytoallmessage" />
<a href="#reply-all" class="dropbuttontip" id="replyallmenulink" onclick="UI.toggle_popup('replyallmenu',event);return false" aria-haspopup="true" aria-expanded="false" aria-owns="replyallmenu-menu" tabindex="0"><roundcube:label name="arialabelreplyalloptions" /></a>
</span>
<span class="dropbutton">
<roundcube:button command="forward" type="link" class="button forward disabled" classAct="button forward" classSel="button forward pressed" label="forward" title="forwardmessage" />
<a href="#forward" class="dropbuttontip" id="forwardmenulink" onclick="UI.toggle_popup('forwardmenu',event);return false" aria-haspopup="true" aria-expanded="false" aria-owns="forwardmenu-menu" tabindex="0"><roundcube:label name="arialabelforwardingoptions" /></a>
</span>
<roundcube:button command="delete" type="link" class="button delete disabled" classAct="button delete" classSel="button delete pressed" label="delete" title="deletemessage" />
<roundcube:if condition="template:name == 'message'" />
<roundcube:button command="move" type="link" class="button move disabled" classAct="button move" classSel="button move pressed" label="move" title="moveto" data-menu-pos="bottom" />
<roundcube:button command="print" type="link" class="button print disabled" classAct="button print" classSel="button print pressed" label="print" title="printmessage" />
<roundcube:endif />
<roundcube:container name="toolbar" id="mailtoolbar" />
<roundcube:button name="markmenulink" id="markmessagemenulink" type="link" class="button markmessage" label="mark" title="markmessages" onclick="UI.toggle_popup('markmessagemenu',event);return false" aria-haspopup="true" aria-expanded="false" aria-owns="markmessagemenu-menu" />
<roundcube:button name="messagemenulink" id="messagemenulink" type="link" class="button more" label="more" title="moreactions" onclick="UI.toggle_popup('messagemenu',event);return false" aria-haspopup="true" aria-expanded="false" aria-owns="messagemenu-menu" />
<div id="forwardmenu" class="popupmenu" aria-hidden="true">
<h3 id="aria-label-forwardmenu" class="voice"><roundcube:label name="arialabelforwardingoptions" /></h3>
<ul id="forwardmenu-menu" class="toolbarmenu" role="menu" aria-labelledby="aria-label-forwardmenu">
<roundcube:button type="link-menuitem" command="forward-inline" label="forwardinline" prop="sub" classAct="forwardlink active" class="forwardlink" />
<roundcube:button type="link-menuitem" command="forward-attachment" label="forwardattachment" prop="sub" classAct="forwardattachmentlink active" class="forwardattachmentlink" />
<roundcube:container name="forwardmenu" id="forwardmenu-menu" />
</ul>
</div>
<div id="replyallmenu" class="popupmenu" aria-hidden="true">
<h3 id="aria-label-replyallmenu" class="voice"><roundcube:label name="arialabelreplyalloptions" /></h3>
<ul id="replyallmenu-menu" class="toolbarmenu" role="menu" aria-labelledby="aria-label-replyallmenu">
<roundcube:button type="link-menuitem" command="reply-all" label="replyall" prop="sub" class="replyalllink" classAct="replyalllink active" />
<roundcube:button type="link-menuitem" command="reply-list" label="replylist" prop="sub" class="replylistlink" classAct="replylistlink active" />
<roundcube:container name="replyallmenu" id="replyallmenu-menu" />
</ul>
</div>
<div id="messagemenu" class="popupmenu" aria-hidden="true">
<h3 id="aria-label-messagemenu" class="voice"><roundcube:label name="arialabelmoremessageactions" /></h3>
<ul id="messagemenu-menu" class="toolbarmenu iconized" role="menu" aria-labelledby="aria-label-messagemenu">
<roundcube:button type="link-menuitem" command="print" label="printmessage" class="icon" classAct="icon active" innerclass="icon print" />
<roundcube:button type="link-menuitem" command="download" label="emlsave" class="icon" classAct="icon active" innerclass="icon download" />
<roundcube:button type="link-menuitem" command="edit" prop="new" label="editasnew" class="icon" classAct="icon active" innerclass="icon edit" />
<roundcube:button type="link-menuitem" command="viewsource" label="viewsource" class="icon" classAct="icon active" innerclass="icon viewsource" />
<roundcube:button type="link-menuitem" command="move" label="moveto" class="icon" classAct="icon active" innerclass="icon move folder-selector-link" />
<roundcube:button type="link-menuitem" command="copy" label="copyto" class="icon" classAct="icon active" innerclass="icon copy folder-selector-link" />
<roundcube:button type="link-menuitem" command="open" label="openinextwin" target="_blank" class="icon" classAct="icon active" innerclass="icon extwin" />
<roundcube:container name="messagemenu" id="messagemenu-menu" />
</ul>
</div>
<div id="markmessagemenu" class="popupmenu" aria-hidden="true">
<h3 id="aria-label-markmessagemenu" class="voice"><roundcube:label name="arialabelmarkmessagesas" /></h3>
<ul id="markmessagemenu-menu" class="toolbarmenu iconized" role="menu" aria-labelledby="aria-label-markmessagemenu">
<roundcube:button type="link-menuitem" command="mark" prop="read" label="markread" classAct="icon active" class="icon" innerclass="icon read" />
<roundcube:button type="link-menuitem" command="mark" prop="unread" label="markunread" classAct="icon active" class="icon" innerclass="icon unread" />
<roundcube:button type="link-menuitem" command="mark" prop="flagged" label="markflagged" classAct="icon active" class="icon" innerclass="icon flagged" />
<roundcube:button type="link-menuitem" command="mark" prop="unflagged" label="markunflagged" classAct="icon active" class="icon" innerclass="icon unflagged" />
<roundcube:container name="markmenu" id="markmessagemenu-menu" />
</ul>
</div>

View File

@@ -0,0 +1,9 @@
<div id="settings-sections" class="uibox listbox" role="navigation" aria-labelledby="aria-label-settingstabs">
<h2 class="boxtitle" id="aria-label-settingstabs"><roundcube:label name="settings" /></h2>
<div id="settings-tabs" class="scroller">
<ul class="listing iconized">
<roundcube:object name="settingstabs" class="listitem" tagname="li" />
</ul>
<roundcube:container name="tabs" id="settings-tabs" />
</div>
</div>

File diff suppressed because it is too large Load Diff

1
data/web/rc/skins/larry/mail.min.css vendored Normal file

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,6 @@
{
"name": "Larry",
"author": "FLINT / Büro für Gestaltung, Switzerland",
"license": "Creative Commons Attribution-ShareAlike",
"license-url": "http://creativecommons.org/licenses/by-sa/3.0/"
}

View File

@@ -0,0 +1,206 @@
/**
* Roundcube webmail styles for message printing
*
* Copyright (c) 2012, 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 autors in the README file.
* See http://creativecommons.org/licenses/by-sa/3.0/ for details.
*/
body {
font-family: "Lucida Grande", Verdana, Arial, Helvetica, sans-serif;
background-color: #fff;
color: #000;
margin: 2mm;
}
body, td, th, div, p {
font-size: 9pt;
color: #000;
}
h3 {
font-size: 18px;
color: #000;
}
a, a:active, a:visited {
color: #000;
}
#header {
float: right;
margin: 0 5mm 3mm 5mm;
}
table.headers-table {
table-layout: fixed;
margin-top: 14px;
}
table.headers-table tr td {
font-size: 9pt;
vertical-align: top;
}
table.headers-table td.header-title {
color: #666;
padding-right: 4mm;
white-space: nowrap;
}
table.headers-table tr td.subject {
font-weight: bold;
}
#attachment-list {
margin-top: 2mm;
padding-top: 2mm;
border-top: 1pt solid #ccc;
}
#attachment-list li {
font-size: 9pt;
}
#attachment-list li a {
text-decoration: none;
}
#attachment-list li a:hover {
text-decoration: underline;
}
#messagebody {
position: relative;
border-top: none;
}
div.message-part,
div.message-htmlpart {
padding: 2mm 1mm;
margin-top: 2mm;
margin-bottom: 5mm;
border-top: 1pt solid #ccc;
}
div.message-part a {
color: #00c;
}
div.message-part div.pre {
margin: 0;
padding: 0;
font-family: monospace;
font-size: 12px;
}
div.message-part blockquote {
color: blue;
border-left: 2px solid blue;
border-right: 2px solid blue;
background-color: #F6F6F6;
margin: 2px 0;
padding: 0 0.4em;
}
div.message-part blockquote blockquote {
color: green;
border-left: 2px solid green;
border-right: 2px solid green;
}
div.message-part blockquote blockquote blockquote {
color: #900;
border-left: 2px solid #b00;
border-right: 2px solid #b00;
}
p.image-attachment {
position: relative;
padding: 1em;
border-top: 1px solid #ccc;
}
p.image-attachment a.image-link {
float: left;
display: block;
margin-right: 2em;
min-width: 160px;
min-height: 60px;
text-align: center;
}
p.image-attachment .image-filename {
display: block;
line-height: 1.6em;
}
p.image-attachment .attachment-links {
display: none;
}
/* contact print */
#contact-details fieldset {
color: #666;
border: 1px solid #999;
margin-top: 5px;
}
#contact-details fieldset.contactfieldgroup {
border: 0;
padding: 0;
margin: 0;
}
#contact-details div.row {
padding: 2px 0;
}
#contact-details .contactfieldlabel {
display: inline-block;
vertical-align: top;
width: 150px;
overflow: hidden;
text-overflow: ellipsis;
}
#contact-details .contactfieldcontent {
display: inline-block;
vertical-align: top;
font-weight: bold;
}
#contact-details #contactphoto {
float: left;
margin: 5px 15px 5px 3px;
width: 112px;
border: 0;
padding: 0;
}
#contact-details #contactpic {
width: 112px;
background: white;
}
#contact-details #contactpic img {
max-width: 112px;
visibility: inherit;
}
#contact-details #contacthead {
border: 0;
margin: 0 16em 0 0;
padding: 0;
}
#contact-details #contacthead > legend {
display: none;
}
#contact-details #contacthead .names span.namefield {
font-size: 140%;
font-weight: bold;
}

1
data/web/rc/skins/larry/print.min.css vendored Normal file
View File

@@ -0,0 +1 @@
body{font-family:"Lucida Grande",Verdana,Arial,Helvetica,sans-serif;background-color:#fff;color:#000;margin:2mm}body,td,th,div,p{font-size:9pt;color:#000}h3{font-size:18px;color:#000}a,a:active,a:visited{color:#000}#header{float:right;margin:0 5mm 3mm 5mm}table.headers-table{table-layout:fixed;margin-top:14px}table.headers-table tr td{font-size:9pt;vertical-align:top}table.headers-table td.header-title{color:#666;padding-right:4mm;white-space:nowrap}table.headers-table tr td.subject{font-weight:bold}#attachment-list{margin-top:2mm;padding-top:2mm;border-top:1pt solid #ccc}#attachment-list li{font-size:9pt}#attachment-list li a{text-decoration:none}#attachment-list li a:hover{text-decoration:underline}#messagebody{position:relative;border-top:0}div.message-part,div.message-htmlpart{padding:2mm 1mm;margin-top:2mm;margin-bottom:5mm;border-top:1pt solid #ccc}div.message-part a{color:#00c}div.message-part div.pre{margin:0;padding:0;font-family:monospace;font-size:12px}div.message-part blockquote{color:blue;border-left:2px solid blue;border-right:2px solid blue;background-color:#f6f6f6;margin:2px 0;padding:0 .4em}div.message-part blockquote blockquote{color:green;border-left:2px solid green;border-right:2px solid green}div.message-part blockquote blockquote blockquote{color:#900;border-left:2px solid #b00;border-right:2px solid #b00}p.image-attachment{position:relative;padding:1em;border-top:1px solid #ccc}p.image-attachment a.image-link{float:left;display:block;margin-right:2em;min-width:160px;min-height:60px;text-align:center}p.image-attachment .image-filename{display:block;line-height:1.6em}p.image-attachment .attachment-links{display:none}#contact-details fieldset{color:#666;border:1px solid #999;margin-top:5px}#contact-details fieldset.contactfieldgroup{border:0;padding:0;margin:0}#contact-details div.row{padding:2px 0}#contact-details .contactfieldlabel{display:inline-block;vertical-align:top;width:150px;overflow:hidden;text-overflow:ellipsis}#contact-details .contactfieldcontent{display:inline-block;vertical-align:top;font-weight:bold}#contact-details #contactphoto{float:left;margin:5px 15px 5px 3px;width:112px;border:0;padding:0}#contact-details #contactpic{width:112px;background:white}#contact-details #contactpic img{max-width:112px;visibility:inherit}#contact-details #contacthead{border:0;margin:0 16em 0 0;padding:0}#contact-details #contacthead>legend{display:none}#contact-details #contacthead .names span.namefield{font-size:140%;font-weight:bold}

View File

@@ -0,0 +1,368 @@
/**
* Roundcube webmail styles for the Settings section
*
* Copyright (c) 2012, The Roundcube Dev Team
* Screendesign by FLINT / Büro für Gestaltung, bueroflint.com
*
* 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 autors in the README file.
* See http://creativecommons.org/licenses/by-sa/3.0/ for details.
*/
#settings-sections {
position: absolute;
top: 0;
left: 0;
width: 200px;
bottom: 0;
}
#pluginbody,
#settings-right {
position: absolute;
top: 0;
left: 212px;
right: 0;
bottom: 0;
}
#sectionslist {
position: absolute;
top: 0;
left: 0;
width: 260px;
bottom: 0;
}
#preferences-box {
position: absolute;
top: 0;
left: 272px;
right: 0;
bottom: 0;
}
#preferences-frame {
border: 0;
border-radius: 4px;
}
#preferences-details fieldset.advanced legend {
position: relative;
display: block;
width: 100%;
cursor: pointer;
}
#preferences-details fieldset.advanced .propform {
display: none;
}
#preferences-details fieldset.advanced .advanced-toggle {
position: absolute;
display: block;
top: 0px;
right: 6px;
text-decoration: none;
color: #666;
font-size: 11px;
width: 20px;
height: 18px;
background: url(images/listicons.png?v=e9f1.12614) 0 -1157px no-repeat;
text-indent: -5000px;
overflow: hidden;
}
#preferences-details fieldset.advanced .collapsed .advanced-toggle {
background-position: -24px -1137px;
}
#sections-table tbody td,
#sections-table .listitem span,
#settings-sections .listitem a,
#settings-sections .tablink a {
padding-left: 36px;
background-image: url(images/listicons.png?v=e9f1.12614);
background-position: -100px 0;
background-repeat: no-repeat;
}
/* note: support span.tablink because this is used by plugins */
#settings-sections .listitem a,
#settings-sections .tablink a {
background-position: 6px -862px;
}
#settings-sections .selected a,
#settings-sections .tablink.selected a {
background-position: 6px -887px;
}
#settings-sections .preferences a {
background-position: 6px -431px;
}
#settings-sections .preferences.selected a {
background-position: 6px -455px;
}
#settings-sections .folders a {
background-position: 6px 2px;
}
#settings-sections .folders.selected a {
background-position: 6px -22px;
}
#sections-table #rcmrowfolders .section {
background-position: 4px 2px;
}
#sections-table #rcmrowfolders.selected .section {
background-position: 4px -22px;
}
#settings-sections .identities a {
background-position: 6px -478px;
}
#settings-sections .identities.selected a {
background-position: 6px -502px;
}
#settings-sections .filter a {
background-position: 6px -1746px;
}
#settings-sections .filter.selected a {
background-position: 6px -1770px;
}
#settings-sections .password a {
background-position: 6px -1795px;
}
#settings-sections .password.selected a {
background-position: 6px -1819px;
}
#settings-sections .responses a {
background-position: 6px -1972px;
}
#settings-sections .responses.selected a {
background-position: 6px -1996px;
}
#sections-table #rcmrowgeneral .section {
background-position: 4px -573px;
}
#sections-table #rcmrowgeneral.selected .section {
background-position: 4px -598px;
}
#sections-table #rcmrowmailbox .section {
background-position: 4px -621px;
}
#sections-table #rcmrowmailbox.selected .section {
background-position: 4px -646px;
}
#sections-table #rcmrowcompose .section {
background-position: 4px -670px;
}
#sections-table #rcmrowcompose.selected .section {
background-position: 4px -695px;
}
#sections-table #rcmrowmailview .section {
background-position: 4px -718px;
}
#sections-table #rcmrowmailview.selected .section {
background-position: 4px -742px;
}
#sections-table #rcmrowaddressbook .section {
background-position: 4px -766px;
}
#sections-table #rcmrowaddressbook.selected .section {
background-position: 4px -791px;
}
#sections-table #rcmrowserver .section {
background-position: 4px -814px;
}
#sections-table #rcmrowserver.selected .section {
background-position: 4px -838px;
}
#sections-table #rcmrowcalendar .section {
background-position: 4px -526px;
}
#sections-table #rcmrowcalendar.selected .section {
background-position: 4px -550px;
}
#folderslist .boxtitle a.iconbutton.search {
background-position: -2px -317px;
cursor: pointer;
position: absolute;
right: 8px;
top: 8px;
width: 16px;
}
#folderslist .listsearchbox + .scroller {
top: 34px;
}
.listsearchbox select {
width: 100%;
margin: 0 0 4px 0;
}
#folderslist,
#identitieslist {
position: absolute;
top: 0;
left: 0;
width: 260px;
bottom: 0;
}
#identities-table {
width: 100%;
table-layout: fixed;
}
#identities-table tbody td.mail {
width: 100%;
overflow: hidden;
text-overflow: ellipsis;
}
#identities-table tbody tr.readonly td {
font-style: italic;
}
#folder-details,
#identity-details {
position: absolute;
top: 0;
left: 272px;
right: 0;
bottom: 0;
}
#subscription-table li.root {
font-size: 5%;
line-height: 5px;
height: 5px;
padding: 2px;
}
#subscription-table li input {
position: absolute;
right: 8px;
top: 4px;
margin-right: 0;
}
#subscription-table li a {
padding-right: 28px;
}
.skinselection {
display: block;
}
.skinselection span {
display: inline-block;
vertical-align: middle;
padding-right: 1em;
}
.skinselection .skinname {
font-weight: bold;
}
.skinselection .skinlicense,
.skinselection .skinlicense a {
font-style: italic;
color: #666;
text-decoration: none;
}
.skinselection .skinlicense a:hover {
text-decoration: underline;
}
img.skinthumbnail {
width: 64px;
height: 64px;
border: 1px solid #ccc;
background: #fff;
border-radius: 4px;
}
#pluginlist td.version {
width: 5em;
}
.webkit #pluginlist td.version {
width: 6em;
}
#pluginlist td.license,
#pluginlist td.source {
width: 8em;
}
.webkit #pluginlist td.license,
.webkit #pluginlist td.source {
width: 9em;
}
#rcmfd_signature {
width: 99%;
min-width: 390px;
font-family: monospace;
}
#rcmfd_signature_toolbar1 td,
#rcmfd_signature_toolbar2 td {
width: auto;
}
.mailtoprotohandler-status {
padding-left: 1em;
font-style: italic;
}
#pluginlist {
table-layout: auto;
}
#pluginlist th.version {
width: 1%;
}
.readtext {
width: 45em;
padding: 12px;
font-size: 12px;
}
.readtext > h1,
.readtext > h2,
.readtext > h3 {
margin-top: 0;
}

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,32 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<roundcube:if condition="request:_framed" />
<body class="iframe fullheight">
<roundcube:else />
<body class="ui-widget-content">
<roundcube:endif />
<div class="readtext">
<roundcube:object name="aboutcontent" />
<h2 class="sysname">Roundcube Webmail <roundcube:object name="version" /></h2>
<p class="copyright">Copyright &copy; 2005-2016, The Roundcube Dev Team</p>
<p class="license">This program is free software; you can redistribute it and/or modify
it under the terms of the <a href="http://www.gnu.org/licenses/gpl.html" target="_blank">GNU General Public License</a>
as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.<br/>
Some <a href="https://roundcube.net/license" target="_blank">exceptions</a> for skins &amp; plugins apply.
</p>
</div>
<div class="readtext">
<h3><roundcube:label name="installedplugins" /></h3>
<roundcube:object name="pluginlist" id="pluginlist" class="records-table" />
</div>
</body>
</html>

View File

@@ -0,0 +1,145 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<roundcube:if condition="env:extwin" /><body class="noscroll extwin"><roundcube:else /><body class="noscroll"><roundcube:endif />
<roundcube:include file="/includes/header.html" />
<div id="mainscreen">
<h1 class="voice"><roundcube:label name="addressbook" /></h1>
<!-- toolbar -->
<h2 id="aria-label-toolbar" class="voice"><roundcube:label name="arialabeltoolbar" /></h2>
<div id="addressbooktoolbar" class="toolbar" role="toolbar" aria-labelledby="aria-label-toolbar">
<roundcube:button command="import" type="link" class="button import disabled" classAct="button import" classSel="button import pressed" label="import" title="importcontacts" />
<span class="dropbutton">
<roundcube:button command="export" type="link" class="button export disabled" classAct="button export" classSel="button export pressed" label="export" title="exportvcards" />
<a href="#export" class="dropbuttontip" id="exportmenulink" onclick="return UI.toggle_popup('exportmenu',event)" aria-haspopup="true" aria-expanded="false" aria-owns="exportmenu-menu" tabindex="0"><roundcube:label name="arialabelcontactexportoptions" /></a>
</span>
<span class="spacer"></span>
<roundcube:button command="compose" type="link" class="button compose disabled" classAct="button compose" classSel="button compose pressed" label="compose" title="writenewmessage" />
<roundcube:button command="print" type="link" class="button print disabled" classAct="button print" classSel="button print pressed" label="print" title="printcontact" />
<roundcube:button command="advanced-search" type="link" class="button search disabled" classAct="button search" classSel="button search pressed" label="advanced" title="advsearch" />
<roundcube:container name="toolbar" id="addressbooktoolbar" />
<div id="exportmenu" class="popupmenu" aria-hidden="true">
<h3 id="aria-label-exportmenu" class="voice"><roundcube:label name="arialabelcontactexportoptions" /></h3>
<ul id="exportmenu-menu" class="toolbarmenu" role="menu" aria-labelledby="aria-label-exportmenu">
<roundcube:button type="link-menuitem" command="export" label="exportall" prop="sub" class="exportalllink" classAct="exportalllink active" />
<roundcube:button type="link-menuitem" command="export-selected" label="exportsel" prop="sub" class="exportsellink" classAct="exportsellink active" />
</ul>
</div>
</div>
<!-- search box -->
<div id="quicksearchbar" class="searchbox" role="search" aria-labelledby="aria-label-searchform">
<h2 id="aria-label-searchform" class="voice"><roundcube:label name="arialabelcontactsearchform" /></h2>
<label for="quicksearchbox" class="voice"><roundcube:label name="arialabelquicksearchbox" /></label>
<roundcube:button command="menu-open" prop="searchmenu" id="searchmenulink" class="iconbutton searchoptions" title="searchmod" label="options" aria-haspopup="true" aria-expanded="false" aria-owns="searchmenu-menu" />
<roundcube:object name="searchform" id="quicksearchbox" />
<roundcube:button command="reset-search" id="searchreset" class="iconbutton reset" title="resetsearch" label="resetsearch" />
<div id="searchmenu" class="popupmenu" data-editable="true">
<h3 id="aria-label-searchmenu" class="voice"><roundcube:label name="searchmod" /></h3>
<ul class="toolbarmenu" id="searchmenu-menu" role="menu" aria-labelledby="aria-label-searchmenu">
<li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="name" id="s_mod_name" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="name" /></span></label></li>
<li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="firstname" id="s_mod_firstname" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="firstname" /></span></label></li>
<li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="surname" id="s_mod_surname" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="surname" /></span></label></li>
<li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="email" id="s_mod_email" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="email" /></span></label></li>
<li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="*" id="s_mod_all" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="allfields" /></span></label></li>
</ul>
<div class="buttons"><a class="button" href="#" onclick="if (rcmail.command('search')) UI.show_popup('searchmenu',false)"><roundcube:label name="search" /></a></div>
</div>
</div>
<div id="mainscreencontent">
<div id="addressview-left">
<!-- sources/groups list -->
<div id="directorylistbox" class="uibox listbox" role="navigation" aria-labelledby="directorylist-header">
<h2 id="directorylist-header" class="boxtitle"><roundcube:label name="groups" /></h2>
<div id="directorylist-content" class="scroller withfooter">
<roundcube:object name="directorylist" id="directorylist" class="treelist listing iconized" />
<h3 class="boxtitle voice"><roundcube:label name="savedsearches" /></h3>
<roundcube:object name="savedsearchlist" id="savedsearchlist" class="treelist listing iconized" />
</div>
<div id="directorylist-footer" class="boxfooter">
<roundcube:button command="group-create" type="link" title="newgroup" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" label="addgroup" /><roundcube:button name="groupoptions" id="groupoptionslink" type="link" title="moreactions" class="listbutton groupactions" onclick="return UI.toggle_popup('groupoptions',event)" innerClass="inner" label="arialabelabookgroupoptions" aria-haspopup="true" aria-expanded="false" aria-owns="groupoptionsmenu" />
</div>
</div>
<div id="groupoptions" class="popupmenu" aria-hidden="true">
<h3 id="aria-label-groupoptions" class="voice"><roundcube:label name="arialabelabookgroupoptions" /></h3>
<ul id="groupoptionsmenu" class="toolbarmenu" role="menu" aria-labelledby="aria-label-groupoptions">
<roundcube:button type="link-menuitem" command="group-rename" label="grouprename" classAct="active" />
<roundcube:button type="link-menuitem" command="group-delete" label="groupdelete" classAct="active" />
<roundcube:button type="link-menuitem" command="search-create" label="searchsave" classAct="active" />
<roundcube:button type="link-menuitem" command="search-delete" label="searchdelete" classAct="active" />
<roundcube:container name="groupoptions" id="groupoptionsmenu" />
</ul>
</div>
</div><!-- end addressview-left -->
<div id="addressview-right" role="main" aria-labelledby="aria-label-contactslist">
<!-- contacts list -->
<div id="addresslist" class="uibox listbox">
<roundcube:object name="addresslisttitle" label="contacts" tag="h2" class="boxtitle" id="aria-label-contactslist" />
<div class="scroller withfooter">
<roundcube:object name="addresslist" id="contacts-table" class="listing iconized" noheader="true" role="listbox" />
</div>
<div class="boxpagenav">
<roundcube:button command="firstpage" type="link" class="icon firstpage disabled" classAct="icon firstpage" title="firstpage" label="first" />
<roundcube:button command="previouspage" type="link" class="icon prevpage disabled" classAct="icon prevpage" title="previouspage" label="previous" />
<roundcube:button command="nextpage" type="link" class="icon nextpage disabled" classAct="icon nextpage" title="nextpage" label="next" />
<roundcube:button command="lastpage" type="link" class="icon lastpage disabled" classAct="icon lastpage" title="lastpage" label="last" />
</div>
<div class="boxfooter">
<roundcube:button command="add" type="link" title="newcontact" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" label="addcontact" /><roundcube:button command="delete" type="link" title="deletecontact" class="listbutton delete disabled" classAct="listbutton delete" innerClass="inner" label="deletecontact" /><roundcube:button command="group-remove-selected" type="link" title="groupremoveselected" class="listbutton removegroup disabled" classAct="listbutton removegroup" innerClass="inner" label="groupremoveselected" />
<span class="countdisplay" aria-live="polite" aria-relevant="text">
<span class="voice"><roundcube:label name="contacts" /></span>
<roundcube:object name="recordsCountDisplay" label="fromtoshort" />
</span>
</div>
</div>
<div class="voice" role="note">
<h3><roundcube:label name="helplistnavigation" /></h3>
<pre>
<roundcube:label name="helplistkeyboardnavigation" />
<roundcube:label name="helplistkeyboardnavcontacts" />
</pre>
</div>
<div id="contacts-box" class="uibox">
<div class="iframebox">
<roundcube:object name="addressframe" id="contact-frame" style="width:100%; height:100%" frameborder="0" src="/watermark.html" title="contactproperties" />
</div>
</div>
</div><!-- end addressview-right -->
</div><!-- end mainscreencontent -->
</div><!-- end mainscreen -->
<div id="dragcontactmenu" class="popupmenu" aria-hidden="true">
<ul class="toolbarmenu" role="menu">
<roundcube:button type="link-menuitem" command="move" onclick="return rcmail.drag_menu_action('move')" label="move" classAct="active" />
<roundcube:button type="link-menuitem" command="copy" onclick="return rcmail.drag_menu_action('copy')" label="copy" classAct="active" />
</ul>
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,229 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
<roundcube:if condition="config:enable_spellcheck" />
<link rel="stylesheet" type="text/css" href="/googiespell.css" />
<roundcube:endif />
</head>
<roundcube:if condition="env:extwin" /><body class="extwin"><roundcube:else /><body><roundcube:endif />
<roundcube:include file="/includes/header.html" />
<div id="mainscreen">
<h1 class="voice"><roundcube:object name="pagetitle" /></h1>
<!-- toolbar -->
<h2 id="aria-label-toolbar" class="voice"><roundcube:label name="arialabeltoolbar" /></h2>
<div id="messagetoolbar" class="toolbar fullwidth" role="toolbar" aria-labelledby="aria-label-toolbar">
<roundcube:button command="list" type="link" class="button back disabled" classAct="button back" label="cancel" condition="!env:extwin" tabindex="2" />
<roundcube:button command="close" type="link" class="button close disabled" classAct="button close" label="cancel" condition="env:extwin" tabindex="2" />
<span class="spacer"></span>
<roundcube:button command="send" type="link" class="button send disabled" classAct="button send" label="send" title="sendmessage" tabindex="2" />
<roundcube:button command="savedraft" type="link" class="button savedraft disabled" classAct="button savedraft" label="save" title="savemessage" tabindex="2" />
<span class="spacer"></span>
<roundcube:if condition="config:enable_spellcheck" />
<span class="dropbutton">
<roundcube:button command="spellcheck" type="link" class="button spellcheck disabled" classAct="button spellcheck" classSel="button spellcheck pressed" label="spellcheck" title="checkspelling" tabindex="2" />
<a href="#languages" class="dropbuttontip" id="spellmenulink" onclick="UI.toggle_popup('spellmenu',event);return false" aria-haspopup="true" aria-expanded="false" tabindex="2">Select Spell Language</a>
</span>
<roundcube:endif />
<roundcube:button name="addattachment" type="link" class="button attach" label="attach" title="addattachment" onclick="rcmail.upload_input('uploadform')" aria-haspopup="true" aria-expanded="false" tabindex="2" />
<roundcube:button command="insert-sig" type="link" class="button insertsig disabled" classAct="button insertsig" label="signature" title="insertsignature" tabindex="2" />
<a href="#responses" class="button responses" label="responses" title="<roundcube:label name='insertresponse' />" id="responsesmenulink" unselectable="on" onmousedown="return false" onclick="UI.toggle_popup('responsesmenu',event);return false" tabindex="2" aria-haspopup="true" aria-expanded="false" aria-owns="textresponsesmenu"><roundcube:label name="responses" /></a>
<roundcube:button command="compose-encrypted" type="link" class="button encrypt disabled" classAct="button encrypt" classSel="button encrypt selected" label="encrypt" title="encryptmessagemailvelope" tabindex="2" style="display:none" />
<roundcube:container name="toolbar" id="compose-toolbar" />
</div>
<div id="mainscreencontent">
<div id="composeview-left">
<!-- inline address book -->
<div id="compose-contacts" class="uibox listbox" role="region" aria-labelledby="aria-label-composecontacts">
<h2 id="aria-label-composecontacts" class="boxtitle"><roundcube:label name="contacts" /></h2>
<div class="listsearchbox" role="search" aria-labelledby="aria-label-composequicksearch">
<h3 id="aria-label-composequicksearch" class="voice"><roundcube:label name="arialabelcontactquicksearch" /></h3>
<div class="searchbox">
<label for="contactsearchbox" class="voice"><roundcube:label name="arialabelcontactsearchbox" /></label>
<roundcube:object name="searchform" id="contactsearchbox" />
<a id="searchmenulink" class="iconbutton searchicon"> </a>
<roundcube:button command="reset-search" class="iconbutton reset" title="resetsearch" content=" " />
</div>
</div>
<roundcube:object name="addressbooks" id="directorylist" class="treelist listing" summary="ariasummarycomposecontacts" />
<div class="scroller withfooter" tabindex="-1">
<roundcube:object name="addresslist" id="contacts-table" class="listing iconized" noheader="true" role="listbox" />
</div>
<div class="boxfooter">
<roundcube:button command="add-recipient" prop="to" type="link" title="to" class="listbutton addto disabled" classAct="listbutton addto" innerClass="inner" content="To+" /><roundcube:button command="add-recipient" prop="cc" type="link" title="cc" class="listbutton addcc disabled" classAct="listbutton addcc" innerClass="inner" content="Cc+" /><roundcube:button command="add-recipient" prop="bcc" type="link" title="bcc" class="listbutton addbcc disabled" classAct="listbutton addbcc" innerClass="inner" content="Bcc+" /><roundcube:container name="compose-contacts-toolbar" id="compose-contacts-toolbar" />
</div>
<div class="boxpagenav">
<roundcube:button command="firstpage" type="link" class="icon firstpage disabled" classAct="icon firstpage" title="firstpage" label="first" />
<roundcube:button command="previouspage" type="link" class="icon prevpage disabled" classAct="icon prevpage" title="previouspage" label="previous" />
<roundcube:button command="nextpage" type="link" class="icon nextpage disabled" classAct="icon nextpage" title="nextpage" label="next" />
<roundcube:button command="lastpage" type="link" class="icon lastpage disabled" classAct="icon lastpage" title="lastpage" label="last" />
</div>
</div>
</div>
<div id="composeview-right" role="main">
<roundcube:form name="form" method="post" id="compose-content" class="uibox">
<!-- message headers -->
<div id="composeheaders" role="region" aria-labelledby="aria-label-composeheaders">
<h2 id="aria-label-composeheaders" class="voice"><roundcube:label name="arialabelmessageheaders" /></h2>
<a href="#options" id="composeoptionstoggle" class="moreheaderstoggle" title="<roundcube:label name='togglecomposeoptions' />" aria-expanded="false"><span class="iconlink"></span></a>
<table class="headers-table compose-headers">
<tbody>
<tr>
<td class="title"><label for="_from"><roundcube:label name="from" /></label></td>
<td class="editfield">
<roundcube:object name="composeHeaders" part="from" form="form" id="_from" tabindex="1" />
<a href="#identities" onclick="return rcmail.command('identities')" class="iconlink edit" tabindex="0"><roundcube:label name="editidents" /></a>
</td>
</tr><tr>
<td class="title top"><label for="_to"><roundcube:label name="to" /></label></td>
<td class="editfield"><roundcube:object name="composeHeaders" part="to" form="form" id="_to" cols="70" rows="1" tabindex="1" aria-required="true" /></td>
</tr><tr id="compose-cc">
<td class="title top">
<label for="_cc"><roundcube:label name="cc" /></label>
<a href="#cc" onclick="return UI.hide_header_row('cc');" class="iconbutton cancel" title="<roundcube:label name='delete' />" tabindex="3"><roundcube:label name="delete" /> <roundcube:label name="cc" /></a>
</td>
<td class="editfield"><roundcube:object name="composeHeaders" part="cc" form="form" id="_cc" cols="70" rows="1" tabindex="1" /></td>
</tr><tr id="compose-bcc">
<td class="title top">
<label for="_bcc"><roundcube:label name="bcc" /></label>
<a href="#bcc" onclick="return UI.hide_header_row('bcc');" class="iconbutton cancel" title="<roundcube:label name='delete' />" tabindex="3"><roundcube:label name="delete" /> <roundcube:label name="bcc" /></a>
</td>
<td class="editfield"><roundcube:object name="composeHeaders" part="bcc" form="form" id="_bcc" cols="70" rows="1" tabindex="1" /></td>
</tr><tr id="compose-replyto">
<td class="title top">
<label for="_replyto"><roundcube:label name="replyto" /></label>
<a href="#replyto" onclick="return UI.hide_header_row('replyto');" class="iconbutton cancel" title="<roundcube:label name='delete' />" tabindex="3"><roundcube:label name="delete" /> <roundcube:label name="replyto" /></a>
</td>
<td class="editfield"><roundcube:object name="composeHeaders" part="replyto" form="form" id="_replyto" size="70" tabindex="1" /></td>
</tr><tr id="compose-followupto">
<td class="title top">
<label for="_followupto"><roundcube:label name="followupto" /></label>
<a href="#followupto" onclick="return UI.hide_header_row('followupto');" class="iconbutton cancel" title="<roundcube:label name='delete' />" tabindex="3"><roundcube:label name="delete" /> <roundcube:label name="followupto" /></a>
</td>
<td class="editfield"><roundcube:object name="composeHeaders" part="followupto" form="form" id="_followupto" size="70" tabindex="1" /></td>
</tr><tr>
<td></td>
<td class="formlinks">
<a href="#cc" onclick="return UI.show_header_row('cc')" id="cc-link" class="iconlink add" tabindex="3"><roundcube:label name="addcc" /></a>
<a href="#bcc" onclick="return UI.show_header_row('bcc')" id="bcc-link" class="iconlink add" tabindex="3"><roundcube:label name="addbcc" /></a>
<a href="#reply-to" onclick="return UI.show_header_row('replyto')" id="replyto-link" class="iconlink add" tabindex="3"><roundcube:label name="addreplyto" /></a>
<a href="#followup-to" onclick="return UI.show_header_row('followupto')" id="followupto-link" class="iconlink add" tabindex="3"><roundcube:label name="addfollowupto" /></a>
</td>
</tr><tr>
<td class="title"><label for="compose-subject"><roundcube:label name="subject" /></label></td>
<td class="editfield"><roundcube:object name="composeSubject" id="compose-subject" form="form" tabindex="1" /></td>
</tr>
</tbody>
</table>
<div id="composebuttons" class="formbuttons">
<roundcube:button command="extwin" type="link" class="button extwin" classSel="button extwin pressed" innerClass="icon" title="openinextwin" label="openinextwin" condition="!env:extwin" />
</div>
<!-- (collapsable) message options -->
<div id="composeoptions" role="region" aria-labelledby="aria-label-composeoptions">
<h2 id="aria-label-composeoptions" class="voice"><roundcube:label name="arialabelcomposeoptions" /></h2>
<roundcube:if condition="!in_array('htmleditor', (array)config:dont_override)" />
<span class="composeoption">
<label><roundcube:label name="editortype" />
<roundcube:object name="editorSelector" editorid="composebody" tabindex="4" /></label>
</span>
<roundcube:endif />
<span class="composeoption">
<label for="rcmcomposepriority"><roundcube:label name="priority" />
<roundcube:object name="prioritySelector" form="form" id="rcmcomposepriority" tabindex="4" /></label>
</span>
<roundcube:if condition="!in_array('mdn_default', (array)config:dont_override)" />
<span class="composeoption">
<label><roundcube:object name="mdnCheckBox" form="form" id="rcmcomposereceipt" tabindex="4" /> <roundcube:label name="returnreceipt" /></label>
</span>
<roundcube:endif />
<roundcube:if condition="!in_array('dsn_default', (array)config:dont_override)" />
<span class="composeoption">
<label><roundcube:object name="dsnCheckBox" form="form" id="rcmcomposedsn" tabindex="4" /> <roundcube:label name="dsn" /></label>
</span>
<roundcube:endif />
<roundcube:if condition="!config:no_save_sent_messages" />
<span class="composeoption">
<label><roundcube:label name="savesentmessagein" /> <roundcube:object name="storetarget" maxlength="30" style="max-width:12em" tabindex="4" /></label>
</span>
<roundcube:endif />
<roundcube:container name="composeoptions" id="composeoptions" />
</div>
</div>
<!-- message compose body -->
<div id="composeview-bottom">
<div id="composebodycontainer">
<label for="composebody" class="voice"><roundcube:label name="arialabelmessagebody" /></label>
<roundcube:object name="composeBody" id="composebody" form="form" cols="70" rows="20" tabindex="1" />
</div>
<div id="compose-attachments" class="rightcol" role="region" aria-labelledby="aria-label-composeattachments">
<h2 id="aria-label-composeattachments" class="voice"><roundcube:label name="attachments" /></h2>
<div style="text-align:center; margin-bottom:10px">
<roundcube:object name="composeAttachmentForm" mode="hint" />
<a class="button" tabindex="1" href="#" onclick="rcmail.upload_input('uploadform')"><roundcube:label name="addattachment" /></a>
</div>
<roundcube:object name="composeAttachmentList" id="attachment-list" class="attachmentslist" tabindex="1" />
<roundcube:object name="fileDropArea" id="compose-attachments" />
</div>
<!--
<div id="composeformbuttons" class="footerleft formbuttons floating">
<roundcube:button type="input" command="send" class="button mainaction" label="sendmessage" tabindex="11" />
<roundcube:button type="input" command="savedraft" class="button" label="savemessage" tabindex="12" />
<roundcube:button type="input" command="list" class="button" label="cancel" tabindex="13" />
</div>
-->
</div>
</form>
</div><!-- end mailview-right -->
</div><!-- end mainscreencontent -->
</div><!-- end mainscreen -->
<roundcube:object name="composeAttachmentForm" id="uploadform" mode="smart" />
<div id="spellmenu" class="popupmenu" aria-hidden="true"></div>
<div id="responsesmenu" class="popupmenu" aria-hidden="true">
<h3 id="aria-label-responsesmenu" class="voice"><roundcube:label name="arialabelresponsesmenu" /></h3>
<ul class="toolbarmenu" id="textresponsesmenu" role="menu" aria-labelledby="aria-label-responsesmenu">
<li role="separator" class="separator" id=""><label><roundcube:label name="insertresponse" /></label></li>
<roundcube:object name="responseslist" id="responseslist" tagname="ul" itemclass="active" />
<li role="separator" class="separator"><label><roundcube:label name="manageresponses" /></label></li>
<roundcube:button command="save-response" type="link-menuitem" label="newresponse" classAct="active" unselectable="on" />
<roundcube:button command="responses" type="link-menuitem" label="editresponses" classAct="active" />
</ul>
</div>
<div id="attachmentmenu" class="popupmenu" aria-hidden="true">
<ul class="toolbarmenu" id="attachmentoptionsmenu" role="menu">
<roundcube:button command="open-attachment" id="attachmenuopen" type="link-menuitem" label="open" class="icon" classAct="icon active" innerclass="icon extwin" />
<roundcube:button command="download-attachment" id="attachmenudownload" type="link-menuitem" label="download" class="icon" classAct="icon active" innerclass="icon download" />
<roundcube:button command="rename-attachment" id="attachmenurename" type="link-menuitem" label="rename" class="icon" classAct="icon active" innerclass="icon rename" />
<roundcube:container name="attachmentmenu" id="attachmentoptionsmenu" />
</ul>
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,36 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<body class="iframe">
<h1 class="boxtitle"><roundcube:label name="contactproperties" /></h1>
<div id="contact-details" class="boxcontent">
<roundcube:if condition="strlen(env:sourcename)" />
<div id="sourcename"><roundcube:label name="addressbook" />: <roundcube:var name="env:sourcename" /></div>
<roundcube:endif />
<div id="contactphoto"><roundcube:object name="contactphoto" id="contactpic" placeholder="/images/contactpic.png" placeholderGroup="/images/contactgroup.png" /></div>
<roundcube:object name="contacthead" id="contacthead" />
<br style="clear:both" />
<div id="contacttabs" class="tabbed">
<roundcube:object name="contactdetails" />
</div>
</div>
<div id="headerbuttons" class="formbuttons">
<roundcube:button command="edit" type="input" class="button mainaction" label="editcontact" condition="!ENV:readonly" />
<roundcube:if condition="env:qrcode" />
<roundcube:button command="qrcode" type="input" class="button" label="qrcode" />
<roundcube:endif />
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,48 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<body class="iframe">
<h1 class="boxtitle"><roundcube:object name="steptitle" /></h1>
<roundcube:form name="editform" method="post" id="contact-details" class="boxcontent">
<roundcube:if condition="strlen(env:sourcename)" />
<div id="sourcename"><roundcube:label name="addressbook" />: <roundcube:var name="env:sourcename" condition="env:action!='add'" /><roundcube:object name="sourceselector" id="sourceselect" condition="env:action=='add'" /></div>
<roundcube:endif />
<fieldset id="contactphoto">
<legend class="voice"><roundcube:label name="contactphoto" /></legend>
<roundcube:object name="contactphoto" id="contactpic" placeholder="/images/contactpic.png" />
<roundcube:if condition="env:photocol" />
<roundcube:object name="fileDropArea" id="contactpic" />
<div class="formlinks">
<roundcube:button command="upload-photo" id="uploadformlink" type="link" label="replacephoto" class="iconlink upload disabled" classAct="iconlink upload active" onclick="rcmail.upload_input('upload-form')" condition="env:photocol" /><br/>
<roundcube:button command="delete-photo" type="link" label="delete" class="iconlink delete disabled" classAct="iconlink delete active" condition="env:photocol" />
</div>
<roundcube:endif />
</fieldset>
<roundcube:object name="contactedithead" id="contacthead" size="16" form="editform" />
<br style="clear:both" />
<div id="contacttabs" class="tabbed">
<roundcube:object name="contacteditform" size="40" textareacols="60" form="editform" />
</div>
</form>
<div class="footerleft formbuttons">
<roundcube:button command="save" type="input" class="button mainaction" label="save" />
<roundcube:button command="show" type="input" class="button" label="cancel" condition="env:action=='edit'" />
<roundcube:button name="cancel" type="input" class="button" label="cancel" onclick="history.back()" condition="env:action=='add'" />
</div>
<roundcube:object name="photoUploadForm" id="upload-form" mode="smart" />
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,20 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<link rel="shortcut icon" href="/images/favicon.ico"/>
<link rel="stylesheet" type="text/css" href="/print.css" />
</head>
<body>
<div id="header"><roundcube:object name="logo" src="/images/roundcube_logo.png" id="toplogo" border="0" alt="Logo" /></div>
<div id="contact-details" class="boxcontent">
<div id="contactphoto"><roundcube:object name="contactphoto" id="contactpic" placeholder="/images/contactpic.png" placeholderGroup="/images/contactgroup.png" /></div>
<roundcube:object name="contacthead" id="contacthead" />
<br style="clear:both" />
<roundcube:object name="contactdetails" />
</div>
</body>
</html>

View File

@@ -0,0 +1,21 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<body class="iframe">
<h1 class="boxtitle"><roundcube:label name="advsearch" /></h1>
<div id="contact-details" class="boxcontent">
<roundcube:object name="searchform" id="advsearchform" class="tabbed" size=30 />
<p class="formbuttons">
<roundcube:button command="save" type="input" class="button mainaction" label="search" />
</p>
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,19 @@
<!DOCTYPE html>
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<roundcube:if condition="!env:framed" />
<roundcube:if condition="env:extwin" /><body class="error extwin"><roundcube:else /><body class="error"><roundcube:endif />
<roundcube:include file="/includes/header.html" />
<roundcube:else />
<body class="error iframe">
<roundcube:endif />
<div class="uibox centerbox errorbox">
$__page_content
</div>
</body>
</html>

View File

@@ -0,0 +1,25 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<body class="iframe">
<h1 class="boxtitle"><roundcube:label name="folderproperties" /></h1>
<div class="boxcontent">
<roundcube:object name="folderdetails" class="propform" />
</div>
<div class="footerleft formbuttons">
<roundcube:button command="save" type="input" class="button mainaction" label="save" />
<roundcube:if condition="!strlen(request:_mbox)" />
<input type="button" value="<roundcube:label name="cancel" />" class="button" onclick="history.back()" />&nbsp;
<roundcube:endif />
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,69 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<roundcube:if condition="env:extwin" /><body class="noscroll extwin"><roundcube:else /><body class="noscroll"><roundcube:endif />
<roundcube:include file="/includes/header.html" />
<div id="mainscreen" class="offset">
<h1 class="voice"><roundcube:label name="settings" /> : <roundcube:label name="folders" /></h1>
<roundcube:include file="/includes/settingstabs.html" />
<div id="settings-right" role="main">
<div id="folderslist" class="uibox listbox">
<h2 id="folderslist-header" class="boxtitle">
<roundcube:label name="folders" />
<a href="#folders" class="iconbutton search" title="<roundcube:label name='findfolders' />" tabindex="0"><roundcube:label name='findfolders' /></a>
</h2>
<div class="listsearchbox">
<roundcube:object name="folderfilter" id="folderlist-filter" />
<div class="searchbox" role="search" aria-labelledby="aria-label-foldersearchform">
<h3 id="aria-label-foldersearchform" class="voice"><roundcube:label name="arialabelfoldersearchform" /></h3>
<label for="foldersearch" class="voice"><roundcube:label name="arialabelsearchterms" /></label>
<input type="text" name="q" id="foldersearch" placeholder="<roundcube:label name='findfolders' />" />
<a class="iconbutton searchicon"></a>
<roundcube:button command="reset-foldersearch" id="folderlistsearch-reset" class="iconbutton reset" title="resetsearch" label="resetsearch" />
</div>
</div>
<div id="folderslist-content" class="scroller withfooter">
<roundcube:object name="foldersubscription" form="subscriptionform" id="subscription-table" class="treelist listing folderlist" />
</div>
<div id="folderslist-footer" class="boxfooter">
<roundcube:button command="create-folder" type="link" title="createfolder" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" label="createfolder" /><roundcube:button name="mailboxmenulink" id="mailboxmenulink" type="link" title="folderactions" class="listbutton groupactions" onclick="return UI.toggle_popup('mailboxmenu',event)" innerClass="inner" content="&#9881;" aria-haspopup="true" aria-expanded="false" aria-owns="mailboxoptionsmenu" />
<roundcube:if condition="env:quota" />
<span class="voice"><roundcube:label name="quota"></span>
<roundcube:object name="quotaDisplay" id="quotadisplay" class="countdisplay" display="text" />
<roundcube:endif />
</div>
<div id="mailboxmenu" class="popupmenu" aria-hidden="true">
<h3 id="aria-label-mailboxmenu" class="voice"><roundcube:label name="arialabelmailboxmenu" /></h3>
<ul class="toolbarmenu" id="mailboxoptionsmenu" role="menu" aria-labelledby="aria-label-mailboxmenu">
<roundcube:button command="delete-folder" type="link-menuitem" label="delete" classAct="active" />
<roundcube:button command="purge" type="link-menuitem" label="empty" classAct="active" />
<roundcube:container name="mailboxoptions" id="mailboxoptionsmenu" />
</ul>
</div>
</div>
<div id="folder-details" class="uibox contentbox">
<div class="iframebox">
<roundcube:object name="folderframe" id="preferences-frame" style="width:100%; height:100%" frameborder="0" src="/watermark.html" />
</div>
</div>
</div>
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,41 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<roundcube:if condition="env:extwin" /><body class="noscroll extwin"><roundcube:else /><body class="noscroll"><roundcube:endif />
<roundcube:include file="/includes/header.html" />
<div id="mainscreen" class="offset">
<h1 class="voice"><roundcube:label name="settings" /> : <roundcube:label name="identities" /></h1>
<roundcube:include file="/includes/settingstabs.html" />
<div id="settings-right" role="main" aria-labelledby="aria-label-identitieslist">
<div id="identitieslist" class="uibox listbox">
<h2 class="boxtitle" id="aria-label-identitieslist"><roundcube:label name="identities" /></h2>
<div class="scroller withfooter">
<roundcube:object name="identitiesList" id="identities-table" class="listing" noheader="true" editIcon="" role="listbox" />
</div>
<div class="boxfooter">
<roundcube:button command="add" type="link" title="newidentity" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" label="addidentity" condition="config:identities_level:0<2" /><roundcube:button command="delete" type="link" title="delete" class="listbutton delete disabled" classAct="listbutton delete" innerClass="inner" label="delete" condition="config:identities_level:0<2" />
</div>
</div>
<div id="identity-details" class="uibox contentbox">
<div class="iframebox">
<roundcube:object name="identityframe" id="preferences-frame" style="width:100%; height:100%" frameborder="0" src="/watermark.html" title="arialabelidentityeditfrom" />
</div>
</div>
</div>
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,22 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<body class="iframe">
<h1 class="boxtitle"><roundcube:object name="steptitle" /></h1>
<div id="preferences-details" class="boxcontent">
<roundcube:object name="identityform" class="propform" size="40" textareacols="40" textarearows="6" />
</div>
<div class="footerleft formbuttons">
<roundcube:button command="save" type="input" class="button mainaction" label="save" />
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,37 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<roundcube:if condition="env:extwin" /><body class="extwin"><roundcube:else /><body><roundcube:endif />
<roundcube:include file="/includes/header.html" />
<div id="mainscreen">
<h1 class="voice"><roundcube:label name="addressbook" /> : <roundcube:label name="importcontacts" /></h1>
<h2 id="aria-label-toolbar" class="voice"><roundcube:label name="arialabeltoolbar" /></h2>
<div id="addressbooktoolbar" class="toolbar" role="toolbar" aria-labelledby="aria-label-toolbar">
<roundcube:button command="list" type="link" class="button back disabled" classAct="button back" classSel="button back pressed" label="back" />
</div>
<div id="mainscreencontent" class="uibox contentbox">
<h2 class="boxtitle"><roundcube:label name="importcontacts" /></h2>
<div id="import-box" class="boxcontent">
<roundcube:object name="importstep" class="propform" />
<br/>
<p class="formbuttons">
<roundcube:object name="importnav" class="button" />
</p>
</div>
</div>
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,55 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<body>
<h1 class="voice"><roundcube:object name="productname" /> <roundcube:label name="login" /></h1>
<div id="login-form">
<div class="box-inner" role="main">
<roundcube:object name="logo" src="/images/roundcube_logo.png" id="logo" />
<roundcube:form name="form" method="post">
<roundcube:object name="loginform" form="form" size="40" submit=true />
</form>
</div>
<div class="box-bottom" role="complementary">
<roundcube:object name="message" id="message" />
<noscript>
<p class="noscriptwarning"><roundcube:label name="noscriptwarning" /></p>
</noscript>
</div>
<div id="bottomline" role="contentinfo">
<roundcube:object name="productname" /> <roundcube:object name="version" condition="config:display_version" />
<roundcube:if condition="config:support_url" />
&nbsp;&#9679;&nbsp; <a href="<roundcube:var name='config:support_url' />" target="_blank" class="support-link"><roundcube:label name="support" /></a>
<roundcube:endif />
<roundcube:container name="loginfooter" id="bottomline" />
</div>
</div>
<roundcube:include file="/includes/footer.html" />
<roundcube:object name="preloader" images="
/images/ajaxloader.gif
/images/ajaxloader_dark.gif
/images/buttons.png
/images/addcontact.png
/images/filetypes.png
/images/listicons.png
/images/messages.png
/images/messages_dark.png
/images/quota.png
/images/selector.png
/images/splitter.png
/images/watermark.jpg
" />
</body>
</html>

View File

@@ -0,0 +1,270 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
<style type="text/css">
<roundcube:if condition="env:layout != 'list'" />
#mailview-top { height: 270px; }
#mailview-bottom { top: 284px; height: auto; display: block; }
#mailpreviewframe { display: block; }
<roundcube:endif />
</style>
</head>
<body class="minwidth">
<roundcube:include file="/includes/header.html" />
<div id="mainscreen">
<h1 class="voice"><roundcube:label name="mail" /></h1>
<!-- toolbar -->
<h2 id="aria-label-toolbar" class="voice"><roundcube:label name="arialabeltoolbar" /></h2>
<div id="messagetoolbar" class="toolbar" role="toolbar" aria-labelledby="aria-label-toolbar">
<roundcube:button command="checkmail" type="link" class="button checkmail disabled" classAct="button checkmail" classSel="button checkmail pressed" label="refresh" title="checkmail" />
<roundcube:include file="/includes/mailtoolbar.html" />
</div>
<div id="messagesearchtools">
<!-- search filter -->
<div id="searchfilter">
<label for="messagessearchfilter" class="voice"><roundcube:label name="arialabelmessagessearchfilter" /></label>
<roundcube:object name="searchfilter" class="searchfilter decorated" id="messagessearchfilter" aria-controls="messagelist" />
</div>
<!-- search box -->
<div id="quicksearchbar" class="searchbox" role="search" aria-labelledby="aria-label-searchform">
<h2 id="aria-label-searchform" class="voice"><roundcube:label name="arialabelmailsearchform" /></h2>
<label for="quicksearchbox" class="voice"><roundcube:label name="arialabelmailquicksearchbox" /></label>
<roundcube:button command="menu-open" prop="searchmenu" id="searchmenulink" class="iconbutton searchoptions" title="searchmod" label="options" aria-haspopup="true" aria-expanded="false" aria-owns="searchmenu-menu" />
<roundcube:object name="searchform" id="quicksearchbox" />
<roundcube:button command="reset-search" id="searchreset" class="iconbutton reset" title="resetsearch" label="resetsearch" />
<div id="searchmenu" class="popupmenu" data-editable="true">
<h3 id="aria-label-searchmenu" class="voice"><roundcube:label name="searchmod" /></h3>
<ul class="toolbarmenu" id="searchmenu-menu" role="menu" aria-labelledby="aria-label-searchmenu">
<li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="subject" id="s_mod_subject" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="subject" /></span></label></li>
<li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="from" id="s_mod_from" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="from" /></span></label></li>
<li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="to" id="s_mod_to" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="to" /></span></label></li>
<li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="cc" id="s_mod_cc" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="cc" /></span></label></li>
<li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="bcc" id="s_mod_bcc" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="bcc" /></span></label></li>
<li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="body" id="s_mod_body" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="body" /></span></label></li>
<li role="menuitem"><label><input type="checkbox" name="s_mods[]" value="text" id="s_mod_text" onclick="UI.set_searchmod(this)" /> <span><roundcube:label name="msgtext" /></span></label></li>
<li role="separator" class="separator"><label><roundcube:label name="date" /></label></li>
<li role="menuitem"><roundcube:object name="searchinterval" id="s_interval" onchange="rcmail.set_searchinterval($(this).val())" /></li>
<li role="separator" class="separator"><label><roundcube:label name="searchscope" /></label></li>
<li role="menuitem"><label><input type="radio" name="s_scope" value="base" id="s_scope_base" onclick="UI.set_searchscope(this)" /> <span><roundcube:label name="currentfolder" /></span></label></li>
<li role="menuitem"><label><input type="radio" name="s_scope" value="sub" id="s_scope_sub" onclick="UI.set_searchscope(this)" /> <span><roundcube:label name="subfolders" /></span></label></li>
<li role="menuitem"><label><input type="radio" name="s_scope" value="all" id="s_scope_all" onclick="UI.set_searchscope(this)" /> <span><roundcube:label name="allfolders" /></span></label></li>
</ul>
<div class="buttons"><a class="button" href="#" onclick="if (rcmail.command('search')) UI.show_popup('searchmenu',false)"><roundcube:label name="search" /></a></div>
</div>
</div>
</div>
<div id="mainscreencontent" class="<roundcube:var name="env:layout" />">
<div id="mailview-left">
<!-- folders list -->
<div id="mailboxcontainer" class="uibox listbox" role="navigation" aria-labelledby="aria-label-folderlist">
<h2 id="aria-label-folderlist" class="voice"><roundcube:label name="arialabelfolderlist" /></h2>
<div id="folderlist-content" class="scroller withfooter">
<roundcube:object name="mailboxlist" id="mailboxlist" class="treelist listing folderlist" folder_filter="mail" unreadwrap="%s" />
</div>
<div id="folderlist-footer" class="boxfooter">
<roundcube:button name="mailboxmenulink" id="mailboxmenulink" type="link" title="folderactions" class="listbutton groupactions" onclick="UI.toggle_popup('mailboxmenu',event);return false" innerClass="inner" content="&#9881;" aria-haspopup="true" aria-expanded="false" aria-owns="mailboxoptionsmenu" />
<roundcube:if condition="env:quota" />
<span class="voice"><roundcube:label name="quota"></span>
<roundcube:object name="quotaDisplay" id="quotadisplay" class="countdisplay" display="text" />
<roundcube:endif />
</div>
</div>
</div>
<div id="mailview-right" role="main">
<roundcube:if condition="env:layout == 'desktop'" />
<div id="mailview-top" class="uibox">
<roundcube:else />
<div id="mailview-top" class="uibox fullheight">
<roundcube:endif />
<!-- messagelist -->
<div id="messagelistheader"><roundcube:object name="listmenulink" optionsmenuIcon="true" /></div>
<div id="messagelistcontainer" class="boxlistcontent" tabindex="-1">
<h2 id="aria-label-messagelist" class="voice"><roundcube:label name="arialabelmessagelist" /></h2>
<roundcube:object name="messages"
id="messagelist"
class="records-table messagelist sortheader fixedheader"
optionsmenuIcon="true"
aria-labelledby="aria-label-messagelist" />
</div>
<div class="voice" role="note">
<h3><roundcube:label name="helplistnavigation" /></h3>
<pre>
<roundcube:label name="helplistkeyboardnavigation" />
<roundcube:label name="helplistkeyboardnavmessages" />
</pre>
</div>
<!-- list footer -->
<div id="messagelistfooter">
<div id="listcontrols">
<roundcube:button href="#list" command="set-listmode" prop="list" class="iconbutton listmode disabled" classAct="iconbutton listmode" id="maillistmode" title="list" content="List" />
<roundcube:button href="#threads" command="set-listmode" prop="threads" class="iconbutton threadmode disabled" classAct="iconbutton threadmode" id="mailthreadmode" title="threads" content="Threads" />
</div>
<div id="listselectors">
<a href="#select" id="listselectmenulink" class="menuselector" onclick="UI.toggle_popup('listselectmenu', event);return false" aria-haspopup="true" aria-expanded="false" aria-owns="listselectmenu-menu"><span class="handle"><roundcube:label name="select" /></span></a>
<roundcube:if condition="env:threads" />
&nbsp; <a href="#threads" id="threadselectmenulink" class="menuselector" onclick="UI.toggle_popup('threadselectmenu', event);return false" aria-haspopup="true" aria-expanded="false" aria-owns="threadselectmenu-menu"><span class="handle"><roundcube:label name="threads" /></span></a>
<roundcube:endif />
</div>
<div id="countcontrols" class="pagenav dark">
<roundcube:object name="messageCountDisplay" class="countdisplay" aria-live="polite" aria-relevant="text" />
<span class="pagenavbuttons">
<roundcube:button command="firstpage" type="link" class="button firstpage disabled" classAct="button firstpage" classSel="button firstpage pressed" innerClass="inner" title="firstpage" label="first" />
<roundcube:button command="previouspage" type="link" class="button prevpage disabled" classAct="button prevpage" classSel="button prevpage pressed" innerClass="inner" title="previouspage" label="previous" />
<input id="pagejumper" class="pagejumper" type="text" size="3" disabled title="<roundcube:label name="currpage" />" />
<roundcube:button command="nextpage" type="link" class="button nextpage disabled" classAct="button nextpage" classSel="button nextpage pressed" innerClass="inner" title="nextpage" label="next" />
<roundcube:button command="lastpage" type="link" class="button lastpage disabled" classAct="button lastpage" classSel="button lastpage pressed" innerClass="inner" title="lastpage" label="last" />
</span>
</div>
<roundcube:container name="listcontrols" id="listcontrols" />
</div>
</div><!-- end mailview-top -->
<div id="mailview-bottom" class="uibox">
<div id="mailpreviewframe" class="iframebox" role="complementary" aria-labelledby="aria-label-mailpreviewframe">
<h2 id="aria-label-mailpreviewframe" class="voice"><roundcube:label name="arialabelmailpreviewframe" /></h2>
<roundcube:object name="messagecontentframe" id="messagecontframe" style="width:100%; height:100%" frameborder="0" src="/watermark.html" title="arialabelmailpreviewframe" />
</div>
</div><!-- end mailview-bottom -->
</div><!-- end mailview-right -->
</div><!-- end mainscreencontent -->
</div><!-- end mainscreen -->
<div id="dragmessagemenu" class="popupmenu" aria-hidden="true">
<ul class="toolbarmenu" role="menu">
<roundcube:button command="move" type="link-menuitem" onclick="return rcmail.drag_menu_action('move')" label="move" classAct="active" />
<roundcube:button command="copy" type="link-menuitem" onclick="return rcmail.drag_menu_action('copy')" label="copy" classAct="active" />
</ul>
</div>
<div id="mailboxmenu" class="popupmenu" aria-hidden="true">
<h3 id="aria-label-mailboxmenu" class="voice"><roundcube:label name="arialabelmailboxmenu" /></h3>
<ul class="toolbarmenu" id="mailboxoptionsmenu" role="menu" aria-labelledby="aria-label-mailboxmenu">
<roundcube:button command="expunge" type="link-menuitem" label="compact" classAct="active" />
<roundcube:button command="purge" type="link-menuitem" label="empty" classAct="active" />
<roundcube:button command="mark-all-read" type="link-menuitem" label="markallread" classAct="active" />
<roundcube:button command="import-messages" type="link-menuitem" name="messageimport" classAct="active" label="importmessages" onclick="if (rcmail.command_enabled('import-messages')) rcmail.upload_input('uploadform')" />
<roundcube:button command="folders" task="settings" type="link-menuitem" label="managefolders" classAct="active" />
<roundcube:container name="mailboxoptions" id="mailboxoptionsmenu" />
</ul>
</div>
<div id="listselectmenu" class="popupmenu dropdown" aria-hidden="true">
<h3 id="aria-label-listselectmenu" class="voice"><roundcube:label name="arialabellistselectmenu" /></h3>
<ul id="listselectmenu-menu" class="toolbarmenu iconized" role="menu" aria-labelledby="aria-label-listselectmenu">
<roundcube:button command="select-all" type="link-menuitem" label="all" class="icon" classAct="icon active" innerclass="icon mail" />
<roundcube:button command="select-all" type="link-menuitem" prop="page" label="currpage" class="icon" classAct="icon active" innerclass="icon list" />
<roundcube:button command="select-all" type="link-menuitem" prop="unread" label="unread" class="icon" classAct="icon active" innerclass="icon unread" />
<roundcube:button command="select-all" type="link-menuitem" prop="flagged" label="flagged" class="icon" classAct="icon active" innerclass="icon flagged" />
<roundcube:button command="select-all" type="link-menuitem" prop="invert" label="invert" class="icon" classAct="icon active" innerclass="icon invert" />
<roundcube:button command="select-none" type="link-menuitem" label="none" class="icon" classAct="icon active" innerclass="icon cross" />
</ul>
</div>
<div id="threadselectmenu" class="popupmenu dropdown" aria-hidden="true">
<h3 id="aria-label-threadselectmenu" class="voice"><roundcube:label name="arialabelthreadselectmenu" /></h3>
<ul id="threadselectmenu-menu" class="toolbarmenu" role="menu" aria-labelledby="aria-label-threadselectmenu">
<roundcube:button command="expand-all" type="link-menuitem" label="expand-all" class="icon" classAct="icon active" innerclass="icon conversation" />
<roundcube:button command="expand-unread" type="link-menuitem" label="expand-unread" class="icon" classAct="icon active" innerclass="icon conversation" />
<roundcube:button command="collapse-all" type="link-menuitem" label="collapse-all" class="icon" classAct="icon active" innerclass="icon conversation" />
</ul>
</div>
<div id="listoptions" class="propform popupdialog" role="dialog" aria-labelledby="aria-label-listoptions" aria-hidden="true">
<h2 id="aria-label-listoptions" class="voice"><roundcube:label name="arialabelmessagelistoptions" /></h2>
<roundcube:if condition="!in_array('layout', (array)config:dont_override)" />
<fieldset id="listoptions-layout" class="floating">
<legend><roundcube:label name="layout" /></legend>
<ul class="proplist">
<li><label><input type="radio" name="layout" value="widescreen" /> <span><roundcube:label name="layoutwidescreen" /></span></label></li>
<li><label><input type="radio" name="layout" value="desktop" /> <span><roundcube:label name="layoutdesktop" /></span></label></li>
<li><label><input type="radio" name="layout" value="list" /> <span><roundcube:label name="layoutlist" /></span></label></li>
</ul>
</fieldset>
<roundcube:endif />
<roundcube:if condition="!in_array('list_cols', (array)config:dont_override)" />
<fieldset id="listoptions-columns" class="floating">
<legend><roundcube:label name="listcolumns" /></legend>
<ul class="proplist">
<li><label class="disabled"><input type="checkbox" name="list_col[]" value="threads" checked disabled /> <span><roundcube:label name="threads" /></span></label></li>
<li><label class="disabled"><input type="checkbox" name="list_col[]" value="subject" checked disabled /> <span><roundcube:label name="subject" /></span></label></li>
<li><label><input type="checkbox" name="list_col[]" value="fromto" /> <span><roundcube:label name="fromto" /></span></label></li>
<li><label><input type="checkbox" name="list_col[]" value="from" /> <span><roundcube:label name="from" /></span></label></li>
<li><label><input type="checkbox" name="list_col[]" value="to" /> <span><roundcube:label name="to" /></span></label></li>
<li><label><input type="checkbox" name="list_col[]" value="replyto" /> <span><roundcube:label name="replyto" /></span></label></li>
<li><label><input type="checkbox" name="list_col[]" value="cc" /> <span><roundcube:label name="cc" /></span></label></li>
<li><label><input type="checkbox" name="list_col[]" value="date" /> <span><roundcube:label name="date" /></span></label></li>
<li><label><input type="checkbox" name="list_col[]" value="size" /> <span><roundcube:label name="size" /></span></label></li>
<li><label><input type="checkbox" name="list_col[]" value="status" /> <span><roundcube:label name="readstatus" /></span></label></li>
<li><label><input type="checkbox" name="list_col[]" value="attachment" /> <span><roundcube:label name="attachment" /></span></label></li>
<li><label><input type="checkbox" name="list_col[]" value="flag" /> <span><roundcube:label name="flag" /></span></label></li>
<li><label><input type="checkbox" name="list_col[]" value="priority" /> <span><roundcube:label name="priority" /></span></label></li>
</ul>
</fieldset>
<roundcube:endif />
<roundcube:if condition="!in_array('message_sort_col', (array)config:dont_override)" />
<fieldset id="listoptions-sortcol" class="floating">
<legend><roundcube:label name="listsorting" /></legend>
<ul class="proplist">
<li><label><input type="radio" name="sort_col" value="" /> <span><roundcube:label name="nonesort" /></span></label></li>
<li><label><input type="radio" name="sort_col" value="arrival" /> <span><roundcube:label name="arrival" /></span></label></li>
<li><label><input type="radio" name="sort_col" value="date" /> <span><roundcube:label name="sentdate" /></span></label></li>
<li><label><input type="radio" name="sort_col" value="subject" /> <span><roundcube:label name="subject" /></span></label></li>
<li><label><input type="radio" name="sort_col" value="fromto" /> <span><roundcube:label name="fromto" /></span></label></li>
<li><label><input type="radio" name="sort_col" value="from" /> <span><roundcube:label name="from" /></span></label></li>
<li><label><input type="radio" name="sort_col" value="to" /> <span><roundcube:label name="to" /></span></label></li>
<li><label><input type="radio" name="sort_col" value="cc" /> <span><roundcube:label name="cc" /></span></label></li>
<li><label><input type="radio" name="sort_col" value="size" /> <span><roundcube:label name="size" /></span></label></li>
</ul>
</fieldset>
<roundcube:endif />
<roundcube:if condition="!in_array('message_sort_order', (array)config:dont_override)" />
<fieldset id="listoptions-sortord" class="floating">
<legend><roundcube:label name="listorder" /></legend>
<ul class="proplist">
<li><label><input type="radio" name="sort_ord" value="ASC" /> <span><roundcube:label name="asc" /></span></label></li>
<li><label><input type="radio" name="sort_ord" value="DESC" /> <span><roundcube:label name="desc" /></span></label></li>
</ul>
</fieldset>
<roundcube:endif />
<br style="clear:both" />
<div class="formbuttons">
<roundcube:button command="menu-save" id="listmenusave" type="input" class="button mainaction" label="save" />
<roundcube:button command="menu-close" prop="messagelistmenu" id="listmenucancel" type="input" class="button" label="cancel" />
</div>
</div>
<roundcube:object name="messageimportform" id="uploadform" mode="smart" />
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,112 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<roundcube:if condition="env:extwin" /><body class="noscroll extwin"><roundcube:else /><body class="noscroll"><roundcube:endif />
<roundcube:include file="/includes/header.html" />
<div id="mainscreen">
<h1 class="voice"><roundcube:object name="messageHeaders" valueOf="subject" /></h1>
<!-- toolbar -->
<h2 id="aria-label-toolbar" class="voice"><roundcube:label name="arialabeltoolbar" /></h2>
<div id="messagetoolbar" class="toolbar fullwidth" role="toolbar" aria-labelledby="aria-label-toolbar">
<roundcube:if condition="!env:extwin" />
<roundcube:button command="list" type="link" class="button back disabled" classAct="button back" classSel="button back pressed" label="back" />
<roundcube:endif />
<roundcube:include file="/includes/mailtoolbar.html" />
</div>
<roundcube:if condition="!env:extwin" />
<div id="mainscreencontent">
<div id="mailview-left">
<!-- folders list -->
<div id="mailboxcontainer" class="uibox listbox" role="navigation" aria-labelledby="aria-label-folderlist">
<h2 id="aria-label-folderlist" class="voice"><roundcube:label name="arialabelfolderlist" /></h2>
<div class="scroller">
<roundcube:object name="mailboxlist" id="mailboxlist" class="treelist listing folderlist" folder_filter="mail" unreadwrap="%s" />
</div>
</div>
</div>
<div id="mailview-right" class="uibox" role="main">
<roundcube:else />
<roundcube:object name="mailboxlist" folder_filter="mail" type="js" />
<div id="mailview-right" class="offset fullwidth uibox" role="main">
<roundcube:endif />
<div id="messageheader">
<span class="moreheaderstoggle"></span>
<!-- record navigation -->
<div id="countcontrols" class="pagenav" role="navigation" aria-labelledby="aria-label-countcontrols">
<h2 id="aria-label-countcontrols" class="voice"><roundcube:label name="arialabelmessagenav" /></h2>
<roundcube:object name="messageCountDisplay" class="countdisplay" />
<roundcube:button command="previousmessage" type="link" class="button prevpage disabled" classAct="button prevpage" classSel="button prevpage pressed" innerClass="inner" title="previousmessage" label="previous" />
<roundcube:button command="nextmessage" type="link" class="button nextpage disabled" classAct="button nextpage" classSel="button nextpage pressed" innerClass="inner" title="nextmessage" label="next" />
</div>
<roundcube:if condition="env:optional_format=='text'" />
<div id="formatcontrols">
<span class="buttongroup">
<roundcube:button command="change-format" prop="html" type="link" class="button first changeformat html selected" innerClass="icon" title="changeformathtml" /><roundcube:button command="change-format" prop="text" type="link" class="button last changeformat text" classSel="button last changeformat text pressed" innerClass="icon" title="changeformattext" />
</span>
</div>
<roundcube:elseif condition="env:optional_format=='html'" />
<div id="formatcontrols">
<span class="buttongroup">
<roundcube:button command="change-format" prop="html" type="link" class="button first changeformat html" classSel="button first changeformat html pressed" innerClass="icon" title="changeformathtml" /><roundcube:button command="change-format" prop="text" type="link" class="button last changeformat text selected" innerClass="icon" title="changeformattext" />
</span>
</div>
<roundcube:endif />
<h2 class="subject"><span onmouseover="rcube_webmail.long_subject_title(this)"><span class="voice"><roundcube:label name="subject" />: </span><roundcube:object name="messageHeaders" valueOf="subject" /></span></h2>
<div class="message-headers">
<roundcube:object name="messageHeaders" class="headers-table" addicon="/images/addcontact.png" exclude="subject" max="20" />
</div>
<roundcube:object name="messageFullHeaders" id="full-headers" />
<div id="contactphoto"><roundcube:object name="contactphoto" /></div>
</div>
<div id="messagecontent">
<div class="rightcol" role="region" aria-labelledby="aria-label-messageattachments">
<h2 id="aria-label-messageattachments" class="voice"><roundcube:label name="attachments" /></h2>
<roundcube:object name="messageAttachments" id="attachment-list" class="attachmentslist" />
</div>
<div class="leftcol" role="region" aria-labelledby="aria-label-messagebody">
<h2 id="aria-label-messagebody" class="voice"><roundcube:label name="arialabelmessagebody" /></h2>
<roundcube:object name="messageObjects" id="message-objects" />
<roundcube:object name="messageBody" id="messagebody" headertableclass="message-partheaders headers-table" />
</div>
</div>
</div><!-- end mailview-right -->
<roundcube:if condition="!env:extwin" />
</div><!-- end mainscreencontent -->
<roundcube:endif />
</div><!-- end mainscreen -->
<div id="attachmentmenu" class="popupmenu" aria-hidden="true">
<ul class="toolbarmenu" id="attachmentoptionsmenu" role="menu">
<roundcube:button command="open-attachment" id="attachmenuopen" type="link-menuitem" label="open" class="icon" classAct="icon active" innerclass="icon extwin" />
<roundcube:button command="download-attachment" id="attachmenudownload" type="link-menuitem" label="download" class="icon" classAct="icon active" innerclass="icon download" />
<roundcube:container name="attachmentmenu" id="attachmentoptionsmenu" />
</ul>
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,56 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<roundcube:if condition="env:action != 'show'" />
<body class="iframe fullheight">
<div id="mainscreen" class="watermark" style="top:0"></div>
<roundcube:else />
<body>
<roundcube:include file="/includes/header.html" />
<div id="mainscreen">
<h1 class="voice"><roundcube:label name="messageopenerror" /></h1>
<!-- toolbar -->
<h2 id="aria-label-toolbar" class="voice"><roundcube:label name="arialabeltoolbar" /></h2>
<div id="messagetoolbar" class="toolbar fullwidth" role="toolbar" aria-labelledby="aria-label-toolbar">
<roundcube:button command="list" type="link" class="button back disabled" classAct="button back" classSel="button back pressed" label="back" />
</div>
<div id="mainscreencontent">
<div id="mailview-left">
<!-- folders list -->
<div id="mailboxcontainer" class="uibox listbox" role="navigation" aria-labelledby="aria-label-folderlist">
<h2 id="aria-label-folderlist" class="voice"><roundcube:label name="arialabelfolderlist" /></h2>
<div class="scroller">
<roundcube:object name="mailboxlist" id="mailboxlist" class="treelist listing" folder_filter="mail" unreadwrap="%s" />
</div>
</div>
</div>
<div id="mailview-right" class="uibox">
<div id="messagecontent" class="watermark"></div>
</div><!-- end mailview-right -->
</div><!-- end mainscreencontent -->
</div><!-- end mainscreen -->
<roundcube:include file="/includes/footer.html" />
<roundcube:endif />
</body>
</html>

View File

@@ -0,0 +1,86 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<body class="extwin noscroll">
<roundcube:include file="/includes/header.html" />
<div id="mainscreen">
<h1 class="voice"><roundcube:label name="attachment" />: <roundcube:var name="env:filename" /></h1>
<h2 id="aria-label-toolbar" class="voice"><roundcube:label name="arialabeltoolbar" /></h2>
<div id="messagetoolbar" class="toolbar fullwidth" role="toolbar" aria-labelledby="aria-label-toolbar">
<roundcube:button command="download" type="link" class="button download disabled" classAct="button download" classSel="button download pressed" label="download" title="download" />
<roundcube:button command="print" type="link" class="button print disabled" classAct="button print" classSel="button print pressed" label="print" title="print" />
<roundcube:container name="toolbar" id="messagetoolbar" />
<roundcube:if condition="env:is_message" />
<span class="spacer"></span>
<roundcube:button command="reply" type="link" class="button reply disabled" classAct="button reply" classSel="button reply pressed" label="reply" title="replytomessage" />
<span class="dropbutton">
<roundcube:button command="reply-all" type="link" class="button reply-all disabled" classAct="button reply-all" classSel="button reply-all pressed" label="replyall" title="replytoallmessage" />
<a href="#reply-all" class="dropbuttontip" id="replyallmenulink" onclick="UI.toggle_popup('replyallmenu',event);return false" aria-haspopup="true" aria-expanded="false" aria-owns="replyallmenu-menu" tabindex="0">Reply-all options</a>
</span>
<span class="dropbutton">
<roundcube:button command="forward" type="link" class="button forward disabled" classAct="button forward" classSel="button forward pressed" label="forward" title="forwardmessage" />
<a href="#forward" class="dropbuttontip" id="forwardmenulink" onclick="UI.toggle_popup('forwardmenu',event);return false" aria-haspopup="true" aria-expanded="false" aria-owns="forwardmenu-menu" tabindex="0">Forwarding options</a>
</span>
<roundcube:button name="messagemenulink" id="messagemenulink" type="link" class="button more" label="more" title="moreactions" onclick="UI.toggle_popup('messagemenu',event);return false" aria-haspopup="true" aria-expanded="false" aria-owns="messagemenu-menu" />
<roundcube:endif />
</div>
<div id="mainscreencontent">
<div id="messagepartheader" class="uibox listbox" role="contentinfo" aria-labelledby="aria-label-contentinfo">
<h2 class="boxtitle" id="aria-label-contentinfo"><roundcube:label name="properties" /></h2>
<div class="scroller">
<roundcube:object name="messagePartControls" class="listing" />
</div>
</div>
<div id="messagepartcontainer" class="uibox" role="main" aria-labelledby="aria-label-messagepart">
<h2 id="aria-label-messagepart" class="voice"><roundcube:label name="arialabelattachmentpreview" /></h2>
<div class="iframebox">
<roundcube:object name="messagePartFrame" id="messagepartframe" frameborder="0" title="arialabelattachmentpreview" />
</div>
</div>
</div>
</div>
<roundcube:if condition="env:is_message" />
<div id="forwardmenu" class="popupmenu" aria-hidden="true">
<h3 id="aria-label-forwardmenu" class="voice"><roundcube:label name="arialabelforwardingoptions" /></h3>
<ul id="forwardmenu-menu" class="toolbarmenu" role="menu" aria-labelledby="aria-label-forwardmenu">
<roundcube:button type="link-menuitem" command="forward-inline" label="forwardinline" prop="sub" classAct="forwardlink active" class="forwardlink" />
<roundcube:button type="link-menuitem" command="forward-attachment" label="forwardattachment" prop="sub" classAct="forwardattachmentlink active" class="forwardattachmentlink" />
<roundcube:container name="forwardmenu" id="forwardmenu-menu" />
</ul>
</div>
<div id="replyallmenu" class="popupmenu" aria-hidden="true">
<h3 id="aria-label-replyallmenu" class="voice"><roundcube:label name="arialabelreplyalloptions" /></h3>
<ul id="replyallmenu-menu" class="toolbarmenu" role="menu" aria-labelledby="aria-label-replyallmenu">
<roundcube:button type="link-menuitem" command="reply-all" label="replyall" prop="sub" class="replyalllink" classAct="replyalllink active" />
<roundcube:button type="link-menuitem" command="reply-list" label="replylist" prop="sub" class="replylistlink" classAct="replylistlink active" />
<roundcube:container name="replyallmenu" id="replyallmenu-menu" />
</ul>
</div>
<div id="messagemenu" class="popupmenu" aria-hidden="true">
<h3 id="aria-label-messagemenu" class="voice"><roundcube:label name="arialabelmoremessageactions" /></h3>
<ul id="messagemenu-menu" class="toolbarmenu iconized" role="menu" aria-labelledby="aria-label-messagemenu">
<roundcube:button type="link-menuitem" command="edit" prop="new" label="editasnew" class="icon" classAct="icon active" innerclass="icon edit" />
<roundcube:button type="link-menuitem" command="viewsource" label="viewsource" class="icon" classAct="icon active" innerclass="icon viewsource" />
<roundcube:container name="messagemenu" id="messagemenu-menu" />
</ul>
</div>
<roundcube:endif />
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,82 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<body class="iframe fullheight">
<div id="messageheader" class="previewheader">
<!-- record navigation -->
<div id="countcontrols" role="toolbar" aria-labelledby="aria-label-messagetoolbar">
<h2 id="aria-label-messagetoolbar" class="voice"><roundcube:label name="arialabelmessageactions" /></h2>
<roundcube:if condition="env:optional_format=='text'" />
<span class="buttongroup">
<roundcube:button command="change-format" prop="html" type="link" class="button first changeformat html selected" innerClass="icon" title="changeformathtml" content="HTML" /><roundcube:button command="change-format" prop="text" type="link" class="button last changeformat text" classSel="button changeformat text pressed" innerClass="icon" title="changeformattext" content="Text" />
</span>
<roundcube:elseif condition="env:optional_format=='html'" />
&nbsp;
<span class="buttongroup">
<roundcube:button command="change-format" prop="html" type="link" class="button first changeformat html" classSel="button changeformat html pressed" innerClass="icon" title="changeformathtml" content="HTML" /><roundcube:button command="change-format" prop="text" type="link" class="button last changeformat text selected" innerClass="icon" title="changeformattext" content="Text" />
</span>
<roundcube:endif />
<roundcube:if condition="env:mailbox != config:drafts_mbox || env:message_context">
&nbsp;
<roundcube:button command="reply" type="link" class="button reply" classSel="button reply pressed" innerClass="icon" title="replytomessage" label="replytomessage" />
<roundcube:button command="reply-all" type="link" class="button replyall" classSel="button replyall pressed" innerClass="icon" title="replytoallmessage" label="replytoallmessage" />
<roundcube:button command="forward" type="link" class="button forward" classSel="button forward pressed" innerClass="icon" title="forwardmessage" label="forwardmessage" />
<roundcube:endif />
<roundcube:if condition="!env:message_context">
&nbsp;
<roundcube:button command="extwin" type="link" class="button extwin" classSel="button extwin pressed" innerClass="icon" title="openinextwin" label="openinextwin" />
<roundcube:endif />
</div>
<h3 class="subject"><span onmouseover="rcube_webmail.long_subject_title(this)"><span class="voice"><roundcube:label name="subject" />: </span><roundcube:object name="messageHeaders" valueOf="subject" /></span></h3>
<a href="#details" id="previewheaderstoggle" class="moreheaderstoggle" aria-expanded="false"><span class="iconlink" title="<roundcube:label name='togglemoreheaders' />"></span></a>
<div id="contactphoto"><roundcube:object name="contactphoto" /></div>
<table class="headers-table" id="preview-shortheaders"><tbody><tr>
<roundcube:if condition="env:mailbox == config:drafts_mbox || env:mailbox == config:sent_mbox">
<td class="header-title"><roundcube:label name="to" /></td>
<td class="header from"><roundcube:object name="messageHeaders" valueOf="to" max="3" addicon="/images/addcontact.png" /></td>
<roundcube:else />
<td class="header-title"><roundcube:label name="from" /></td>
<td class="header from"><roundcube:object name="messageHeaders" valueOf="from" addicon="/images/addcontact.png" /></td>
<roundcube:endif />
<td class="header-title"><roundcube:label name="date" /></td>
<td class="header date"><span><roundcube:object name="messageHeaders" valueOf="date" /></span></td>
</tr></tbody></table>
<roundcube:object name="messageHeaders" id="preview-allheaders" class="headers-table" addicon="/images/addcontact.png" max="10" exclude="subject,replyto" />
<roundcube:object name="messageFullHeaders" id="full-headers" />
</div>
<div id="messagepreview" role="main">
<div class="rightcol" role="region" aria-labelledby="aria-label-messageattachments">
<h2 id="aria-label-messageattachments" class="voice"><roundcube:label name="attachments" /></h2>
<roundcube:object name="messageAttachments" id="attachment-list" class="attachmentslist" />
</div>
<div class="leftcol" role="region" aria-labelledby="aria-label-messagebody">
<h2 id="aria-label-messagebody" class="voice"><roundcube:label name="arialabelmessagebody" /></h2>
<roundcube:object name="messageObjects" id="message-objects" />
<roundcube:object name="messageBody" id="messagebody" headertableclass="message-partheaders headers-table" />
</div>
</div>
<div id="attachmentmenu" class="popupmenu" aria-hidden="true">
<ul class="toolbarmenu" id="attachmentoptionsmenu" role="menu">
<roundcube:button command="open-attachment" id="attachmenuopen" type="link-menuitem" label="open" class="icon" classAct="icon active" innerclass="icon extwin" />
<roundcube:button command="download-attachment" id="attachmenudownload" type="link-menuitem" label="download" class="icon" classAct="icon active" innerclass="icon download" />
<roundcube:container name="attachmentmenu" id="attachmentoptionsmenu" />
</ul>
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,19 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<link rel="shortcut icon" href="/images/favicon.ico"/>
<link rel="stylesheet" type="text/css" href="/print.css" />
</head>
<body>
<div id="header"><roundcube:object name="logo" src="/images/roundcube_logo.png" id="toplogo" border="0" alt="Logo" /></div>
<div id="printmessageframe">
<roundcube:object name="messageHeaders" class="headers-table" max="10" />
<roundcube:object name="messageAttachments" id="attachment-list" />
<roundcube:object name="messageBody" id="messagebody" showImages="false" />
</div>
</body>
</html>

View File

@@ -0,0 +1,28 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<body class="noscroll">
<roundcube:include file="/includes/header.html" />
<div id="mainscreen" class="offset">
<roundcube:if condition="env:task == 'settings'" />
<roundcube:include file="/includes/settingstabs.html" />
<roundcube:endif />
<div id="pluginbody" class="uibox contentbox">
<roundcube:object name="plugin.body" />
</div>
</div>
<roundcube:object name="plugin.footer" />
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,22 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<body class="iframe">
<h1 class="boxtitle"><roundcube:object name="steptitle" /></h1>
<div id="preferences-details" class="boxcontent">
<roundcube:object name="responseform" class="propform" size="60" textareacols="60" textarearows="18" />
</div>
<div class="footerleft formbuttons">
<roundcube:button command="save" type="input" class="button mainaction" label="save" condition="!env:readonly" />
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,42 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<roundcube:if condition="env:extwin" /><body class="noscroll extwin"><roundcube:else /><body class="noscroll"><roundcube:endif />
<roundcube:include file="/includes/header.html" />
<div id="mainscreen" class="offset">
<h1 class="voice"><roundcube:label name="settings" /> : <roundcube:label name="identities" /></h1>
<roundcube:include file="/includes/settingstabs.html" />
<div id="settings-right" role="main" aria-labelledby="aria-label-responseslist">
<div id="identitieslist" class="uibox listbox">
<h2 class="boxtitle" id="aria-label-responseslist"><roundcube:label name="responses" /></h2>
<div class="scroller withfooter">
<roundcube:object name="responsesList" id="identities-table" class="listing" cellspacing="0" noheader="true" role="listbox" />
</div>
<div class="boxfooter">
<roundcube:button command="add" type="link" title="newresponse" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" label="addresponse" /><roundcube:button command="delete" type="link" title="delete" class="listbutton delete disabled" classAct="listbutton delete" innerClass="inner" label="delete" />
</div>
</div>
<div id="identity-details" class="uibox contentbox">
<div class="iframebox">
<roundcube:object name="responseframe" id="preferences-frame" style="width:100%; height:100%" frameborder="0" src="/watermark.html" title="arialabelresonseeditfrom" />
</div>
</div>
</div>
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,39 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<roundcube:if condition="env:extwin" /><body class="noscroll extwin"><roundcube:else /><body class="noscroll"><roundcube:endif />
<roundcube:include file="/includes/header.html" />
<div id="mainscreen" class="offset">
<h1 class="voice"><roundcube:label name="settings" /> : <roundcube:label name="preferences" /></h1>
<roundcube:include file="/includes/settingstabs.html" />
<div id="settings-right">
<div id="sectionslist" class="uibox listbox" role="navigation" aria-labelledby="aria-label-pefsection">
<h2 id="aria-label-pefsection" class="boxtitle"><roundcube:label name="section" /></h2>
<div class="scroller">
<roundcube:object name="sectionslist" id="sections-table" class="listing iconized" noheader="true" />
</div>
</div>
<div id="preferences-box" class="uibox contentbox" role="main">
<div class="iframebox">
<roundcube:object name="prefsframe" id="preferences-frame" style="width:100%; height:100%" frameborder="0" src="/watermark.html" title="arialabelpreferencesform" />
</div>
</div>
</div>
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

View File

@@ -0,0 +1,22 @@
<roundcube:object name="doctype" value="html5" />
<html>
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<body class="iframe">
<h1 class="boxtitle"><roundcube:object name="sectionname" /></h1>
<div id="preferences-details" class="boxcontent">
<roundcube:object name="userprefs" form="form" class="propform" />
</div>
<div class="footerleft formbuttons">
<roundcube:button command="save" type="input" class="button mainaction" label="save" />
</div>
<roundcube:include file="/includes/footer.html" />
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

File diff suppressed because it is too large Load Diff

68
data/web/rc/skins/larry/ui.min.js vendored Normal file
View File

@@ -0,0 +1,68 @@
/**
* Roundcube functions for default skin interface
*
* Copyright (c) 2013, 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 autors in the README file.
* See http://creativecommons.org/licenses/by-sa/3.0/ for details.
*
* @license magnet:?xt=urn:btih:90dc5c0be029de84e523b9b3922520e79e0e6f08&dn=cc0.txt CC0-1.0
*/
/*
magnet:?xt=urn:btih:90dc5c0be029de84e523b9b3922520e79e0e6f08&dn=cc0.txt CC0-1.0
*/
function rcube_mail_ui(){function g(a){p||(p=rcmail.local_storage_get_item("prefs.larry",{}));if(null==p[a]){var c=rcmail.get_cookie(a);null!=c&&(p[a]=c,rcmail.local_storage_set_item("prefs.larry",p)&&rcmail.set_cookie(a,c,new Date))}return p[a]}function q(a,c){p[a]=c;if(!rcmail.local_storage_set_item("prefs.larry",p)){var d=new Date;d.setYear(d.getFullYear()+1);rcmail.set_cookie(a,c,d)}}function r(a){a=a?10:0;rcmail.resize_timeout&&window.clearTimeout(rcmail.resize_timeout);rcmail.resize_timeout=
window.setTimeout(function(){"mail"==rcmail.env.task&&("show"==rcmail.env.action||"preview"==rcmail.env.action?b():"compose"==rcmail.env.action&&t());$("body.iframe .footerleft").each(function(){var a=$(this),d=$(document.body),b=a.hasClass("floating"),e=d.outerHeight(!0)>$(window).height();e!=b&&(b=e?"addClass":"removeClass",a[b]("floating"),d[b]("floatingbuttons"))})},a)}function l(a){var c=$(a.object).siblings("div");c.length&&$(a.object).insertBefore(c.first());if("error"==a.type&&"login"!=rcmail.env.task){rcmail.hide_message(a.object);
m.message_timer&&window.clearTimeout(m.message_timer);m.messagedialog||(m.messagedialog=$("<div>").addClass("popupdialog").hide());var c=a.message,d=function(){m.messagedialog.is(":visible")&&m.messagedialog.dialog("destroy").hide()};m.messagedialog.is(":visible")&&m.messagedialog.text()!=c&&(c=m.messagedialog.html()+"<p>"+a.message+"</p>");m.messagedialog.html(c).dialog({resizable:!1,closeOnEscape:!0,dialogClass:a.type,title:rcmail.gettext("errortitle"),close:d,hide:{effect:"fadeOut"},width:420,
minHeight:90}).show();m.messagedialog.closest("div[role=dialog]").attr("role","alertdialog");0<a.timeout&&(m.message_timer=window.setTimeout(d,a.timeout))}}function w(a){var c=a?a.new_layout:rcmail.env.layout,d=$("#mailview-top"),b=$("#mailview-bottom");a&&$("#mainscreencontent").removeClass().addClass(c);$("#mailviewsplitter")["desktop"==c?"show":"hide"]();$("#mailviewsplitter2")["widescreen"==c?"show":"hide"]();$("#mailpreviewframe")["list"!=c?"show":"hide"]();rcmail.env.contentframe="list"==c?
null:"messagecontframe";"widescreen"==c?($("#countcontrols").detach().appendTo($("#messagelistheader")),d.css({height:"auto",width:394}),b.css({top:0,left:406,height:"auto"}).show(),x?x.resize():(x=new rcube_splitter({id:"mailviewsplitter2",p1:"#mailview-top",p2:"#mailview-bottom",orientation:"v",relative:!0,start:416,min:400,size:12}),x.init())):"desktop"==c?(d.css({height:270,width:"auto"}),b.css({left:0,top:284,height:"auto"}).show(),y?y.resize():(y=new rcube_splitter({id:"mailviewsplitter",p1:"#mailview-top",
p2:"#mailview-bottom",orientation:"h",relative:!0,start:276,min:150,size:12,offset:4}),y.init())):(d.css({height:"auto",width:"auto"}),b.hide());a&&"widescreen"==a.old_layout&&$("#countcontrols").detach().appendTo($("#messagelistfooter"))}function b(){$("#messagecontent").css("top",$("#messageheader").outerHeight()+1+"px");$("#message-objects div a").addClass("button");$("#attachment-list li").length||($("div.rightcol").hide().attr("aria-hidden","true"),$("div.leftcol").css("margin-right","0"));var a=
$("#messagebody.mailvelope, #messagebody > .mailvelope");if(a.length){var c=$("#messagecontent").length?$("#messagecontent").height()-16:$(window).height()-a.offset().top-2;a.height(c)}}function f(a){}function I(a){}function J(a){if("TEXTAREA"==a.nodeName){var c=$(a),d=a.scrollHeight;c.css("height",14*(80<a.value.length&&21<d?2:1)+"px");t()}}function t(){var a=$("#composebody"),c=$("#compose-content"),d=$("#composeview-bottom"),b,e;b=c.height()-d.position().top;e=300-b;d.height(Math.max(300,b));c.css("overflow",
0<e?"auto":"hidden");c=a.parent().width()-5;d=a.parent().height()-8;a.width(c).height(d);$("#composebodycontainer > div").width(c+8);$("#composebody_ifr").height(d+4-$("div.mce-toolbar").height());$("#googie_edit_layer").width(c).height(d);a=$("#directorylist");a.length&&$("#compose-contacts .scroller").css("top",a.position().top+a.outerHeight())}function D(a){var c=$("#quotadisplay"),d=$("#quotamenu"),b=a.total?24*Math.ceil(a.percent/100*20):0;a.total&&480==b&&100>a.percent&&(b-=24);c.css("background-position",
"0 -"+b+"px");c.attr("class","countdisplay p"+10*Math.round(a.percent/10));a.table&&(d.length||(d=$('<div id="quotamenu" class="popupmenu">').appendTo($("body"))),d.html(a.table),c.css("cursor","pointer").off("click").on("click",function(a){return rcmail.command("menu-open","quotamenu",a.target,a)}))}function K(a){$(".boxtitle a.search",a).click(function(c){var d=$(".boxtitle",a),b=$(".listsearchbox",a),e=b.is(":visible")?-1:1,n=34+($("select",b).length?22:0);b.slideToggle({duration:160,progress:function(c,
b){0>e&&(b=1-b);$(".scroller",a).css("top",d.outerHeight()+n*b+"px")},complete:function(){b.toggleClass("expanded");b.is(":visible")?(b.find("input[type=text]").focus(),n=34+($("select",b).length?$("select",b).outerHeight()+4:0),$(".scroller",a).css("top",d.outerHeight()+n+"px")):$("a.reset",b).click()}});return!1})}function P(a){"reply-list"==a.command&&1==rcmail.env.reply_all_mode?(a=rcmail.gettext(a.status?"replylist":"replyall"),"preview"==rcmail.env.action?$("a.button.replyall").attr("title",
a):$("a.button.reply-all").text(a).attr("title",a)):"compose-encrypted"==a.command&&$("a.button.encrypt").show()}function E(a,c){var b=z[a]=$("#"+a);b.appendTo(document.body);b.length&&(u[a]=$.extend(u[a]||{},c||{}))}function L(){$("#preview-shortheaders").toggle();var a=$("#preview-allheaders").toggle(),c=$("a#previewheaderstoggle");a.is(":visible")?c.attr("href","#hide").removeClass("add").addClass("remove").attr("aria-expanded","true"):c.attr("href","#details").removeClass("remove").addClass("add").attr("aria-expanded",
"false");q("previewheaders",a.is(":visible")?"1":"0")}function A(a,c){if(c||!$("#mail"+a+"mode").hasClass("disabled"))$("#maillistmode, #mailthreadmode").removeClass("selected").attr("tabindex","0").attr("aria-disabled","false"),$("#mail"+a+"mode").addClass("selected").attr("tabindex","-1").attr("aria-disabled","true")}function B(a){if(a&&"messagelistmenu"==a.name)Q(a);else if(a){var c=u[a.name]||{},b=$(c.link||"#"+a.name+"link"),k=a.obj&&a.obj.is(":visible");if(a.obj&&k&&b.length){var e=b.parent();
$(window);e.hasClass("dropbutton")&&(b=e);if(c.above||b.hasClass("dropbutton"))e=b.offset(),a.obj.css({left:e.left+"px",top:e.top+(c.above?-a.obj.height():b.outerHeight())+"px"})}a.obj&&c.iconized&&a.obj.children("ul").addClass("iconized");a.obj&&c.editable&&a.obj.attr("data-editable","true");"function"==typeof c.callback&&c.callback(k,a)}}function R(a,c){var b=a.parentNode.id.replace(/^attach/,"");$.each(["open","download","rename"],function(){var a=this;$("#attachmenu"+a).off("click").attr("onclick",
"").click(function(c){return rcmail.command(a+"-attachment",b,this)})});u.attachmentmenu.link=a;rcmail.command("menu-open",{menu:"attachmentmenu",id:b},a,c)}function F(a){a=$(a);a.children(".drop").length||a.append($('<a class="drop skip-content" tabindex="0" aria-haspopup="true">Show options</a>').on("click keypress",function(a){if("keypress"!=a.type||13==rcube_event.get_keycode(a))return R(this,a),!1}))}function Q(a){var b=$("#listoptions");b.is(":visible")?b.dialog("close",a.originalEvent):($('input[name="sort_col"][value="'+
rcmail.env.sort_col+'"]').prop("checked",!0),$('input[name="sort_ord"][value="DESC"]').prop("checked","DESC"==rcmail.env.sort_order),$('input[name="sort_ord"][value="ASC"]').prop("checked","DESC"!=rcmail.env.sort_order),$.each(["widescreen","desktop","list"],function(){$('input[name="layout"][value="'+this+'"]').prop("checked",rcmail.env.layout==this)}),$("#listoptions-columns",b)["widescreen"==rcmail.env.layout?"hide":"show"](),$('input[name="list_col[]"]').each(function(){$(this).prop("checked",
-1!=$.inArray(this.value,rcmail.env.listcols))}),b.dialog({modal:!0,resizable:!1,closeOnEscape:!0,title:null,open:function(a){setTimeout(function(){b.find("a, input:not(:disabled)").not("[aria-disabled=true]").first().focus()},100)},close:function(a){b.dialog("destroy").hide();a.originalEvent&&rcube_event.is_keyboard(a.originalEvent)&&$("#listmenulink").focus()},minWidth:500,width:b.width()+25}).show())}function S(a){$("#listoptions").dialog("close");rcube_event.is_keyboard(a.originalEvent)&&$("#listmenulink").focus();
a=$('input[name="sort_col"]:checked').val();var b=$('input[name="sort_ord"]:checked').val(),d=$('input[name="layout"]:checked').val(),k=$('input[name="list_col[]"]:checked').map(function(){return this.value}).get();rcmail.set_list_options(k,a,b,rcmail.env.threading,d)}function T(a){a=$("#contacts-table");var b=a.parent().css("overflow","hidden");a.clone().css({position:"absolute",top:"0",left:"0",width:a.width()+"px","z-index":10}).appendTo(b).animate({left:-(a.width()+5)+"px"},300,"swing",function(){$(this).remove();
b.css("overflow","auto")})}function U(a){a=$("#contacts-table");var b=a.parent().css("overflow","hidden"),d=a.clone().appendTo(b);a.css({position:"absolute",top:"0",left:-(a.width()+5)+"px",width:a.width()+"px",height:a.height()+"px","z-index":10}).animate({left:"0"},300,"linear",function(){d.remove();$(this).css({position:"relative",left:"0",width:"100%",height:"auto","z-index":1});b.css("overflow","auto")})}function C(a){var b=$("#upload-dialog");b.is(":visible")?b.dialog("close"):rcmail.mailvelope_editor||
("compose"!=rcmail.env.action||b.data("extended")||($("<a>").addClass("iconlink add").attr("href","#add").html("Add").appendTo($('input[type="file"]',b).parent()).click(M),b.data("extended",!0)),b.dialog({modal:!0,resizable:!1,closeOnEscape:!0,title:b.attr("title"),open:function(a){document.all||$("input[type=file]",b).first().click()},close:function(){try{$("#upload-dialog form").get(0).reset()}catch(d){}b.dialog("destroy").hide();$("div.addline",b).remove()},width:480}).show())}function M(a){a=
$(this).parent();a=a.clone().addClass("addline").insertAfter(a);a.children(".iconlink").click(M);a.children("input").val("");document.all||$("input[type=file]",a).click()}function G(a,b){var c=$("#compose-"+a);if(!c.is(":visible"))return H[a]&&!b&&$("#_"+a).val(H[a]),c.show(),$("#"+a+"-link").hide(),t(),$("input,textarea",c).focus(),!1}function N(a,b){var c=$(a),k=c.get(0).id,e=c.children("fieldset");if(e.length){k||(k="rcmtabcontainer",c.attr("id",k));var n=$("<ul>").addClass("tabsbar").prependTo(c);
e.each(function(a){var b,c=$(this),d=c.children("legend"),e=k+"-t"+a;b=$("<a>").text(d.text()).attr("href","#"+e);a=$("<li>").addClass("tablink");d.remove();c.attr("id",e);a.append(b).appendTo(n)});c.tabs({active:b||0,heightStyle:"content",activate:function(a,b){r()}})}}var v={},z={},u={forwardmenu:{editable:1},searchmenu:{editable:1,callback:function(a){if(a&&rcmail.env.search_mods){var b,d;a=$('input:checkbox[name="s_mods[]"]',z.searchmenu);var k=rcmail.env.mailbox,e=rcmail.env.search_mods,n=rcmail.env.search_scope||
"base";"mail"==rcmail.env.task?("all"==n&&(k="*"),e=e[k]?e[k]:e["*"],d="text",$('input:radio[name="s_scope"]').prop("checked",!1).filter("#s_scope_"+n).prop("checked",!0)):d="*";if(e[d])a.map(function(){this.checked=!0;this.disabled=this.value!=d});else for(b in a.prop("disabled",!1).prop("checked",!1),e)$("#s_mod_"+b).prop("checked",!0)}}},attachmentmenu:{},listoptions:{editable:1},groupmenu:{above:1},mailboxmenu:{above:1},spellmenu:{callback:function(a,b){var c,k,e,n=rcmail.spellcheck_lang(),f=
$("ul",b.obj);if(!f.length){f=$('<ul class="toolbarmenu selectable" role="menu">');for(c in rcmail.env.spell_langs)e=$('<li role="menuitem">'),k=$('<a href="#'+c+'" tabindex="0"></a>').text(rcmail.env.spell_langs[c]).addClass("active").data("lang",c).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("spellmenu",a),!1}),k.appendTo(e),e.appendTo(f);f.appendTo(b.obj)}$("li",f).each(function(){var a=
$("a",this);a.data("lang")==n?a.addClass("selected").attr("aria-selected","true"):a.hasClass("selected")&&a.removeClass("selected").removeAttr("aria-selected")})}},"folder-selector":{iconized:1}},m=this,y,x,H={},p;this.set=function(a,b){v[a]=b};this.init=function(){rcmail.addEventListener("message",l);$("#taskbar a").each(function(a,b){$(b).append('<span class="tooltip">'+$(".button-inner",this).html()+"</span>")});$("#taskbar .minmodetoggle").click(function(a){a=$(document.body).toggleClass("minimal").hasClass("minimal");
q("minimalmode",a?1:0);$(window).resize()});if("mail"==rcmail.env.task){rcmail.addEventListener("menu-open",B).addEventListener("menu-close",B).addEventListener("menu-save",S).addEventListener("enable-command",P).addEventListener("responseafterlist",function(a){A(rcmail.env.threading?"thread":"list",!0)}).addEventListener("responseaftersearch",function(a){A(rcmail.env.threading?"thread":"list",!0)});var a=$("#dragmessagemenu");a.length&&(rcmail.gui_object("dragmenu","dragmessagemenu"),z.dragmenu=
a);if("show"==rcmail.env.action||"preview"==rcmail.env.action)rcmail.addEventListener("aftershow-headers",function(){b()}).addEventListener("afterhide-headers",function(){b()}),$("#previewheaderstoggle").click(function(a){L();this.blur&&!rcube_event.is_keyboard(a)&&this.blur();return!1}),$("#attachment-list > li").each(function(){F(this)}),"1"==g("previewheaders")&&L(),"show"==rcmail.env.action&&$("#messagecontent").focus();else if("compose"==rcmail.env.action){rcmail.addEventListener("aftersend-attachment",
C).addEventListener("fileappended",function(a){a.attachment.complete&&F(a.item)}).addEventListener("aftertoggle-editor",function(a){window.setTimeout(function(){t()},200);a&&a.mode&&$("select[name='editorSelector']").val(a.mode)}).addEventListener("compose-encrypted",function(a){$("select[name='editorSelector']").prop("disabled",a.active);$("a.button.attach, a.button.responses")[a.active?"addClass":"removeClass"]("disabled");$("#responseslist a.insertresponse")[a.active?"removeClass":"addClass"]("active")});
for(var c,d,k=["cc","bcc","replyto","followupto"],a=0;a<k.length;a++)c=k[a],d=$("#_"+c),d.length&&(d.on("change",{v:c},function(a){this.value&&G(a.data.v,!0)}),""!=d.val()&&G(c,!0));$("#composeoptionstoggle").click(function(a){var b=$("#composeoptions").toggle().is(":visible");$("#composeoptionstoggle").toggleClass("remove").attr("aria-expanded",b?"true":"false");t();q("composeoptions",b?"1":"0");rcube_event.is_keyboard(a)||this.blur();return!1}).css("cursor","pointer");"0"!==g("composeoptions")&&
$("#composeoptionstoggle").click();$("textarea[name='_to'], textarea[name='_cc'], textarea[name='_bcc']").change(function(a){J(this)}).change();rcmail.addEventListener("autocomplete_insert",function(a){J(a.field)});(a=rcmail.opener())&&"compose"==a.env.action&&$("#composeoptionstoggle",opener.document).hasClass("remove")&&$("#composeoptionstoggle").click();(new rcube_splitter({id:"composesplitterv",p1:"#composeview-left",p2:"#composeview-right",orientation:"v",relative:!0,start:206,min:170,size:12,
render:t})).init();$("#attachment-list > li").each(function(){F(this)})}else"list"!=rcmail.env.action&&rcmail.env.action?"get"==rcmail.env.action&&(new rcube_splitter({id:"mailpartsplitterv",p1:"#messagepartheader",p2:"#messagepartcontainer",orientation:"v",relative:!0,start:226,min:150,size:12})).init():(w(),$("#maillistmode").addClass(rcmail.env.threading?"":"selected").click(function(a){A("list");return!1}),$("#mailthreadmode").addClass(rcmail.env.threading?"selected":"").click(function(a){A("thread");
return!1}),rcmail.init_pagejumper("#pagejumper"),rcmail.addEventListener("setquota",D).addEventListener("layout-change",w).addEventListener("afterimport-messages",C));$("#mailview-left").length&&(new rcube_splitter({id:"mailviewsplitterv",p1:"#mailview-left",p2:"#mailview-right",orientation:"v",relative:!0,start:206,min:150,size:12,callback:f,render:I})).init()}else if("settings"==rcmail.env.task)if(rcmail.addEventListener("init",function(){var a="#settingstabpreferences";rcmail.env.action&&(a="#settingstab"+
(0<rcmail.env.action.indexOf("identity")?"identities":rcmail.env.action.replace(/\./g,"")));$(a).addClass("selected").children().first().removeAttr("onclick").click(function(){return!1})}),"folders"==rcmail.env.action)(new rcube_splitter({id:"folderviewsplitter",p1:"#folderslist",p2:"#folder-details",orientation:"v",relative:!0,start:266,min:180,size:12})).init(),rcmail.addEventListener("setquota",D),K($("#folderslist"));else if("identities"==rcmail.env.action)(new rcube_splitter({id:"identviewsplitter",
p1:"#identitieslist",p2:"#identity-details",orientation:"v",relative:!0,start:266,min:180,size:12})).init();else if("responses"==rcmail.env.action)(new rcube_splitter({id:"responseviewsplitter",p1:"#identitieslist",p2:"#identity-details",orientation:"v",relative:!0,start:266,min:180,size:12})).init();else if("preferences"==rcmail.env.action||!rcmail.env.action)(new rcube_splitter({id:"prefviewsplitter",p1:"#sectionslist",p2:"#preferences-box",orientation:"v",relative:!0,start:266,min:180,size:12})).init();
else{if("edit-prefs"==rcmail.env.action){var a=$("#preferences-details fieldset.advanced legend"),e=$('<a href="#toggle"></a>').text(rcmail.gettext("toggleadvancedoptions")).attr("title",rcmail.gettext("toggleadvancedoptions")).addClass("advanced-toggle");a.click(function(a){e.html($(this).hasClass("collapsed")?"&#9650;":"&#9660;");$(this).toggleClass("collapsed").closest("fieldset").children(".propform").toggle()}).append(e).addClass("collapsed");bw.mz&&a.parents("form").css("display","inline")}}else"addressbook"==
rcmail.env.task&&(rcmail.addEventListener("afterupload-photo",C).addEventListener("beforepushgroup",T).addEventListener("beforepopgroup",U).addEventListener("menu-open",B).addEventListener("menu-close",B),""==rcmail.env.action&&((new rcube_splitter({id:"addressviewsplitterd",p1:"#addressview-left",p2:"#addressview-right",orientation:"v",relative:!0,start:206,min:150,size:12,render:I})).init(),(new rcube_splitter({id:"addressviewsplitter",p1:"#addresslist",p2:"#contacts-box",orientation:"v",relative:!0,
start:266,min:260,size:12})).init()),a=$("#dragcontactmenu"),a.length&&(rcmail.gui_object("dragmenu","dragcontactmenu"),z.dragmenu=a));$(".tabbed").each(function(a,b){N(b)});$("select.decorated").each(function(){if(bw.opera)$(this).removeClass("decorated");else{var a=$(this),b=a.parent(),c=Math.max(a.height(),26)-2,d=a.width()-22,e=$("option",this).first().text();""!=$("option:selected",this).val()&&(e=$("option:selected",this).text());var f=$('<a class="menuselector" tabindex="-1"><span class="handle">'+
e+"</span></a>").css("position","absolute").offset(a.position()).insertAfter(a);f.children().width(d).height(c).css("line-height",c-1+"px");"absolute"!=b.css("position")&&b.css("position","relative");a.width(f.width()).on(bw.mz?"change keyup":"change",function(){var a=$("option:selected",this).text();$(this).next().children().text(a)});a.on("focus",function(a){f.addClass("focus")}).on("blur",function(a){f.removeClass("focus")})}});a=$("body.minwidth");a.length&&a.css("min-width",$(".toolbar").width()+
$("#quicksearchbar").width()+$("#searchfilter").width()+30);window.onresize=r;r()};this.init_tabs=N;this.show_about=function(a){var b=$("<iframe>").attr({id:"aboutframe",src:rcmail.url("settings/about"),frameborder:"0"});h=Math.floor(.75*$(window).height());buttons={};supportln=$("#supportlink");supportln.length&&(v.supporturl=supportln.attr("href"))&&(buttons[supportln.html()]=function(a){0>v.supporturl.indexOf("mailto:")?window.open(v.supporturl):location.href=v.supporturl});b.dialog({modal:!0,
resizable:!1,closeOnEscape:!0,title:a?a.title||a.innerHTML:null,close:function(){b.dialog("destroy").remove()},buttons:buttons,width:640,height:h}).width(640)};this.show_popup=function(a,b,d){!d&&u[a]||E(a,d);d=u[a]||{};d=$(d.link?d.link:"#"+a+"link");var c=d.offset();d.has(".inner")&&(d=d.children(".inner"));return rcmail.command("menu-open",{menu:a,show:b},d.get(0),$.Event("click",{target:d.get(0),pageX:c.left,pageY:c.top,clientX:c.left,clientY:c.top}))};this.toggle_popup=function(a,b,d){!d&&u[a]||
E(a,d);return rcmail.command("menu-open",a,b.target,b)};this.add_popup=E;this.set_searchmod=function(a){var b,d;b=rcmail.env.task;var f=rcmail.env.search_mods,e=rcmail.env.mailbox;"all"==$('input[name="s_scope"]:checked').val()&&(e="*");f||(f={});"mail"==b?(f[e]||(f[e]=rcube_clone_object(f["*"])),d=f[e],b="text"):(d=f,b="*");a.checked?d[a.value]=1:delete d[a.value];a.value==b&&$('input:checkbox[name="s_mods[]"]').map(function(){this!=a&&(this.checked=!0,a.checked?(this.disabled=!0,delete d[this.value]):
(this.disabled=!1,d[this.value]=1))});rcmail.set_searchmods(d)};this.set_searchscope=function(a){rcmail.set_searchscope(a.value)};this.show_uploadform=C;this.show_header_row=G;this.hide_header_row=function(a){var b=$("#_"+a);H[a]=b.val();b.val("");$("#compose-"+a).hide();$("#"+a+"-link").show();t();return!1};this.update_quota=D;this.get_pref=g;this.save_pref=q;this.folder_search_init=K;if(window.$&&document.body){var O=g("minimalmode");(parseInt(O)||null===O&&850>$(window).height())&&$(document.body).addClass("minimal");
bw.tablet&&$("#viewport").attr("content","width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0");$(document).ready(function(){m.init()})}}
function rcube_scroller(g,q,r){var l=this;this.list=$(g);this.top=$(q);this.bottom=$(r);this.step_size=6;this.step_time=20;this.delay=500;this.top.mouseenter(function(){rcmail.drag_active&&(l.ts=window.setTimeout(function(){l.scroll("down")},l.delay))}).mouseout(function(){l.ts&&window.clearTimeout(l.ts)});this.bottom.mouseenter(function(){rcmail.drag_active&&(l.ts=window.setTimeout(function(){l.scroll("up")},l.delay))}).mouseout(function(){l.ts&&window.clearTimeout(l.ts)});this.scroll=function(g){var b=
this,f=this.step_size;rcmail.drag_active&&("down"==g&&(f*=-1),this.list.get(0).scrollTop+=f,this.ts=window.setTimeout(function(){b.scroll(g)},this.step_time))}}
function rcube_splitter(g){function q(f){if(bw.konq||bw.chrome||bw.safari)document.body.style.webkitUserSelect="none";b.p1pos=b.relative?b.p1.position():b.p1.offset();b.p2pos=b.relative?b.p2.position():b.p2.offset();b.drag_active=!0;$(document).on("mousemove."+this.id,r).on("mouseup."+this.id,l);rcmail.message_list&&(rcmail.message_list.drag_active=!0);$("iframe").each(function(b,f){$("<div>").attr("id","iframe-splitter-fix-"+b).addClass("iframe-splitter-fix").css({background:"#fff",width:f.offsetWidth+
"px",height:f.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1E3}).css($(this).offset()).appendTo("body")})}function r(f){if(!b.drag_active)return!1;window.clearTimeout(b.ts);b.ts=window.setTimeout(function(){var g=rcube_event.get_mouse_pos(f);if(b.relative){var l=b.parent.offset();g.x-=l.left;g.y-=l.top}b.horizontal?g.y-b.halfsize>b.p1pos.top&&g.y+b.halfsize<b.p2pos.top+b.p2.outerHeight()&&(b.pos=Math.max(b.min,g.y-Math.max(0,b.offset)),b.pos>b.min&&(b.pos=Math.min(b.pos,b.parent.height()-
b.min)),b.resize()):g.x-b.halfsize>b.p1pos.left&&g.x+b.halfsize<b.p2pos.left+b.p2.outerWidth()&&(b.pos=Math.max(b.min,g.x-Math.max(0,b.offset)),b.pos>b.min&&(b.pos=Math.min(b.pos,b.parent.width()-b.min)),b.resize());b.p1pos=b.relative?b.p1.position():b.p1.offset();b.p2pos=b.relative?b.p2.position():b.p2.offset()},1);return!1}function l(f){if(bw.konq||bw.chrome||bw.safari)document.body.style.webkitUserSelect="auto";$(document).off("."+b.id);b.drag_active=!1;rcmail.message_list&&(rcmail.message_list.drag_active=
!1);$("div.iframe-splitter-fix").remove();b.set_cookie();"function"==typeof b.callback&&b.callback(b);return bw.safari?!0:rcube_event.cancel(f)}function w(f){b.horizontal?(f=parseInt(b.parent.outerHeight(),10)-parseInt(b.p2[0].style.top,10),b.p2.css("height",(0<f?f:0)+"px")):(f=parseInt(b.parent.outerWidth(),10)-parseInt(b.p2[0].style.left,10),b.p2.css("width",(0<f?f:0)+"px"))}this.p=g;this.id=g.id;this.horizontal="horizontal"==g.orientation||"h"==g.orientation;this.halfsize=(void 0!==g.size?g.size:
10)/2;this.pos=g.start||0;this.min=g.min||20;this.offset=g.offset||0;this.relative=g.relative?!0:!1;this.drag_active=!1;this.render=g.render;this.callback=g.callback;var b=this;rcube_splitter._instances[this.id]=b;this.init=function(){this.p1=$(this.p.p1);this.p2=$(this.p.p2);this.parent=this.p1.parent();if(this.p1.length&&this.p2.length){this.p1pos=this.relative?this.p1.position():this.p1.offset();this.p2pos=this.relative?this.p2.position():this.p2.offset();this.handle=$("<div>").attr("id",this.id).attr("unselectable",
"on").attr("role","presentation").addClass("splitter "+(this.horizontal?"splitter-h":"splitter-v")).appendTo(this.parent).mousedown(q);if(this.horizontal){var b=this.p1pos.top+this.p1.outerHeight();this.handle.css({left:"0px",top:b+"px"})}else b=this.p1pos.left+this.p1.outerWidth(),this.handle.css({left:b+"px",top:"0px"});bw.ie&&$(window).resize(w);(b=this.get_cookie())&&!isNaN(b)?(this.pos=parseFloat(b),this.resize()):this.pos&&(this.resize(),this.set_cookie())}};this.resize=function(){if(this.horizontal){if(this.p1.css("height",
Math.floor(this.pos-this.p1pos.top-Math.floor(this.halfsize))+"px"),this.p2.css("top",Math.ceil(this.pos+Math.ceil(this.halfsize)+2)+"px"),this.handle.css("top",Math.round(this.pos-this.halfsize+this.offset)+"px"),bw.ie){var b=parseInt(this.parent.outerHeight(),10)-parseInt(this.p2.css("top"),10);this.p2.css("height",(0<b?b:0)+"px")}}else this.p1.css("width",Math.floor(this.pos-this.p1pos.left-Math.floor(this.halfsize))+"px"),this.p2.css("left",Math.ceil(this.pos+Math.ceil(this.halfsize))+"px"),this.handle.css("left",
Math.round(this.pos-this.halfsize+this.offset+3)+"px"),bw.ie&&(b=parseInt(this.parent.outerWidth(),10)-parseInt(this.p2.css("left"),10),this.p2.css("width",(0<b?b:0)+"px"));this.p2.resize();this.p1.resize();this.drag_active&&$("iframe").each(function(b,f){var g=$(this).offset();$("#iframe-splitter-fix-"+b).css({top:g.top+"px",left:g.left+"px",width:f.offsetWidth+"px",height:f.offsetHeight+"px"})});"function"==typeof this.render&&this.render(this)};this.get_cookie=function(){return window.UI?UI.get_pref(this.id):
null};this.set_cookie=function(){window.UI&&UI.save_pref(this.id,this.pos)}}rcube_splitter._instances={};rcube_splitter.get_instance=function(g){return rcube_splitter._instances[g]};

View File

@@ -0,0 +1,20 @@
<!DOCTYPE html>
<html>
<head>
<title></title>
<style type="text/css">
html, body {
height: 95%;
}
body {
background: url(images/watermark.jpg?v=e784.5000) center no-repeat #fff;
}
</style>
</head>
<body>
</body>
</html>