summaryrefslogtreecommitdiff
path: root/skins/classic
diff options
context:
space:
mode:
Diffstat (limited to 'skins/classic')
-rw-r--r--skins/classic/addressbook.css31
-rw-r--r--skins/classic/common.css9
-rw-r--r--skins/classic/functions.js115
-rw-r--r--skins/classic/images/contactgroup.pngbin0 -> 1038 bytes
-rw-r--r--skins/classic/images/mail_toolbar.pngbin36649 -> 40806 bytes
-rw-r--r--skins/classic/includes/messagetoolbar.html2
-rw-r--r--skins/classic/mail.css292
-rw-r--r--skins/classic/settings.css14
-rw-r--r--skins/classic/templates/about.html7
-rw-r--r--skins/classic/templates/addressbook.html15
-rw-r--r--skins/classic/templates/compose.html10
-rw-r--r--skins/classic/templates/contact.html2
-rw-r--r--skins/classic/templates/contactadd.html9
-rw-r--r--skins/classic/templates/contactedit.html9
-rw-r--r--skins/classic/templates/folders.html6
-rw-r--r--skins/classic/templates/login.html2
-rw-r--r--skins/classic/templates/mail.html16
-rw-r--r--skins/classic/templates/message.html8
-rw-r--r--skins/classic/templates/messageerror.html6
-rw-r--r--skins/classic/templates/messagepart.html38
-rw-r--r--skins/classic/templates/messagepreview.html6
21 files changed, 385 insertions, 212 deletions
diff --git a/skins/classic/addressbook.css b/skins/classic/addressbook.css
index 5afa4592f..415142e0c 100644
--- a/skins/classic/addressbook.css
+++ b/skins/classic/addressbook.css
@@ -224,6 +224,37 @@
-o-text-overflow: ellipsis;
}
+#contacts-table .contact.readonly td
+{
+ font-style: italic;
+}
+
+#contacts-table td.name
+{
+ width: 95%;
+}
+
+#contacts-table td.action
+{
+ width: 12px;
+ padding: 0px 6px 0 4px;
+ text-align: right;
+}
+
+#contacts-table td.action a
+{
+ font-size: 16px;
+ font-weight: bold;
+ font-style: normal;
+ text-decoration: none;
+ color: #333;
+}
+
+#contacts-table .selected td.action a
+{
+ color: #fff;
+}
+
#contacts-box
{
position: absolute;
diff --git a/skins/classic/common.css b/skins/classic/common.css
index 1f62fbe07..3c322f0ed 100644
--- a/skins/classic/common.css
+++ b/skins/classic/common.css
@@ -283,6 +283,15 @@ body > #message a
text-decoration: underline;
}
+body.extwin #closelink
+{
+ position: absolute;
+ top: 5px;
+ right: 20px;
+ text-align: right;
+ z-index:100;
+}
+
.box
{
border: 1px solid #999;
diff --git a/skins/classic/functions.js b/skins/classic/functions.js
index 5dd332ab7..af561c37b 100644
--- a/skins/classic/functions.js
+++ b/skins/classic/functions.js
@@ -94,7 +94,7 @@ function rcube_mail_ui()
messagemenu: {id:'messagemenu'},
attachmentmenu: {id:'attachmentmenu'},
listmenu: {id:'listmenu', editable:1},
- dragmessagemenu:{id:'dragmessagemenu', sticky:1},
+ dragmenu: {id:'dragmenu', sticky:1},
groupmenu: {id:'groupoptionsmenu', above:1},
mailboxmenu: {id:'mailboxoptionsmenu', above:1},
composemenu: {id:'composeoptionsmenu', editable:1, overlap:1},
@@ -162,9 +162,9 @@ show_popupmenu: function(popup, show)
}
},
-dragmessagemenu: function(show)
+dragmenu: function(show)
{
- this.popups.dragmessagemenu.obj[show?'show':'hide']();
+ this.popups.dragmenu.obj[show?'show':'hide']();
},
forwardmenu: function(show)
@@ -796,24 +796,25 @@ function iframe_events()
// Abbreviate mailbox names to fit width of the container
function rcube_render_mailboxlist()
{
- var list = $('#mailboxlist > li a, #mailboxlist ul:visible > li a');
+ var list = $('#mailboxlist > li > a, #mailboxlist ul:visible > li > a');
// it's too slow with really big number of folders, especially on IE
- if (list.length > (bw.ie ? 25 : 100))
+ if (list.length > (bw.ie && bw.vendver < 9 ? 40 : 100))
return;
- list.each(function(){
+ list.each(function() {
var elem = $(this),
text = elem.data('text');
if (!text) {
- text = elem.text().replace(/\s+\(.+$/, '');
+ text = elem.text().replace(/\s+\([0-9]+\)$/, '');
elem.data('text', text);
}
+
if (text.length < 6)
return;
- var abbrev = fit_string_to_size(text, elem, elem.width() - elem.children('span.unreadcount').width());
+ var abbrev = fit_string_to_size(text, elem, elem.width() - elem.children('span.unreadcount').width() - 16);
if (abbrev != text)
elem.attr('title', text);
elem.contents().filter(function(){ return (this.nodeType == 3); }).get(0).data = abbrev;
@@ -823,19 +824,23 @@ function rcube_render_mailboxlist()
// inspired by https://gist.github.com/24261/7fdb113f1e26111bd78c0c6fe515f6c0bf418af5
function fit_string_to_size(str, elem, len)
{
- var w, span, result = str, ellip = '...';
+ var w, span, $span, result = str, ellip = '...';
if (!rcmail.env.tmp_span) {
// it should be appended to elem to use the same css style
// but for performance reasons we'll append it to body (once)
- span = $('<b>').css({visibility: 'hidden', padding: '0px'})
+ span = $('<b>').css({visibility: 'hidden', padding: '0px',
+ 'font-family': elem.css('font-family'),
+ 'font-size': elem.css('font-size')})
.appendTo($('body', document)).get(0);
rcmail.env.tmp_span = span;
}
else {
span = rcmail.env.tmp_span;
}
- span.innerHTML = result;
+
+ $span = $(span);
+ $span.text(result);
// on first run, check if string fits into the length already.
w = span.offsetWidth;
@@ -848,7 +853,7 @@ function fit_string_to_size(str, elem, len)
while (true) {
offLeft = mid - cut;
offRight = mid + cut;
- span.innerHTML = str.substring(0,offLeft) + ellip + str.substring(offRight);
+ $span.text(str.substring(0,offLeft) + ellip + str.substring(offRight));
// break loop if string fits size
if (offLeft < 3 || span.offsetWidth)
@@ -935,8 +940,8 @@ function percent_indicator(obj, data)
// Optional parameters used by TinyMCE
var rcmail_editor_settings = {
- skin : "default", // "default", "o2k7"
- skin_variant : "" // "", "silver", "black"
+ skin: "default", // "default", "o2k7"
+ skin_variant: "" // "", "silver", "black"
};
var rcmail_ui;
@@ -947,46 +952,52 @@ function rcube_init_mail_ui()
rcube_event.add_listener({ object:rcmail_ui, method:'body_mouseup', event:'mouseup' });
rcube_event.add_listener({ object:rcmail_ui, method:'body_keydown', event:'keydown' });
- if (rcmail.env.quota_content)
- update_quota(rcmail.env.quota_content);
- rcmail.addEventListener('setquota', update_quota);
-
- $('iframe').load(iframe_events)
- .contents().mouseup(function(e){rcmail_ui.body_mouseup(e)});
-
- if (rcmail.env.task == 'mail') {
- rcmail.addEventListener('enable-command', 'enable_command', rcmail_ui);
- rcmail.addEventListener('menu-open', 'menu_open', rcmail_ui);
- rcmail.addEventListener('menu-save', 'menu_save', rcmail_ui);
- rcmail.addEventListener('aftersend-attachment', 'uploadmenu', rcmail_ui);
- rcmail.addEventListener('aftertoggle-editor', 'resize_compose_body_ev', rcmail_ui);
- rcmail.gui_object('message_dragmenu', 'dragmessagemenu');
-
- if (rcmail.gui_objects.mailboxlist) {
- rcmail.addEventListener('responseaftermark', rcube_render_mailboxlist);
- rcmail.addEventListener('responseaftergetunread', rcube_render_mailboxlist);
- rcmail.addEventListener('responseaftercheck-recent', rcube_render_mailboxlist);
- rcmail.addEventListener('aftercollapse-folder', rcube_render_mailboxlist);
+ rcmail.addEventListener('init', function() {
+ if (rcmail.env.quota_content)
+ update_quota(rcmail.env.quota_content);
+ rcmail.addEventListener('setquota', update_quota);
+
+ $('iframe').load(iframe_events)
+ .contents().mouseup(function(e){rcmail_ui.body_mouseup(e)});
+
+ if (rcmail.env.task == 'mail') {
+ rcmail.addEventListener('enable-command', 'enable_command', rcmail_ui);
+ rcmail.addEventListener('menu-open', 'menu_open', rcmail_ui);
+ rcmail.addEventListener('menu-save', 'menu_save', rcmail_ui);
+ rcmail.addEventListener('aftersend-attachment', 'uploadmenu', rcmail_ui);
+ rcmail.addEventListener('aftertoggle-editor', 'resize_compose_body_ev', rcmail_ui);
+ rcmail.gui_object('dragmenu', 'dragmenu');
+
+ if (rcmail.gui_objects.mailboxlist) {
+ rcmail.treelist.addEventListener('expand', rcube_render_mailboxlist);
+ rcmail.addEventListener('responseaftermark', rcube_render_mailboxlist);
+ rcmail.addEventListener('responseaftergetunread', rcube_render_mailboxlist);
+ rcmail.addEventListener('responseaftercheck-recent', rcube_render_mailboxlist);
+ rcmail.addEventListener('responseafterrefresh', rcube_render_mailboxlist);
+ rcmail.addEventListener('afterimport-messages', function(){ rcmail_ui.show_popup('uploadform', false); });
+
+ new rcmail_scroller('#mailboxlist-content', '#mailboxlist-title', '#mailboxlist-footer');
+ }
- new rcmail_scroller('#mailboxlist-content', '#mailboxlist-title', '#mailboxlist-footer');
+ if (rcmail.env.action == 'compose')
+ rcmail_ui.init_compose_form();
+ else if (rcmail.env.action == 'show' || rcmail.env.action == 'preview')
+ // add menu link for each attachment
+ $('#attachment-list > li[id^="attach"]').each(function() {
+ $(this).append($('<a class="drop">').click(function() { rcmail_ui.show_attachmentmenu(this); }));
+ });
}
+ else if (rcmail.env.task == 'addressbook') {
+ rcmail.addEventListener('afterupload-photo', function(){ rcmail_ui.show_popup('uploadform', false); });
- if (rcmail.env.action == 'compose')
- rcmail_ui.init_compose_form();
- else if (rcmail.env.action == 'show' || rcmail.env.action == 'preview')
- // add menu link for each attachment
- $('#attachment-list > li[id^="attach"]').each(function() {
- $(this).append($('<a class="drop">').click(function() { rcmail_ui.show_attachmentmenu(this); }));
- });
- }
- else if (rcmail.env.task == 'addressbook') {
- rcmail.addEventListener('afterupload-photo', function(){ rcmail_ui.show_popup('uploadform', false); });
+ if (rcmail.gui_objects.folderlist)
+ new rcmail_scroller('#directorylist-content', '#directorylist-title', '#directorylist-footer');
- if (rcmail.gui_objects.folderlist)
- new rcmail_scroller('#directorylist-content', '#directorylist-title', '#directorylist-footer');
- }
- else if (rcmail.env.task == 'settings') {
- if (rcmail.gui_objects.subscriptionlist)
- new rcmail_scroller('#folderlist-content', '#folderlist-title', '#folderlist-footer');
- }
+ rcmail.gui_object('dragmenu', 'dragmenu');
+ }
+ else if (rcmail.env.task == 'settings') {
+ if (rcmail.gui_objects.subscriptionlist)
+ new rcmail_scroller('#folderlist-content', '#folderlist-title', '#folderlist-footer');
+ }
+ });
}
diff --git a/skins/classic/images/contactgroup.png b/skins/classic/images/contactgroup.png
new file mode 100644
index 000000000..c46383255
--- /dev/null
+++ b/skins/classic/images/contactgroup.png
Binary files differ
diff --git a/skins/classic/images/mail_toolbar.png b/skins/classic/images/mail_toolbar.png
index e68035da5..4a8431715 100644
--- a/skins/classic/images/mail_toolbar.png
+++ b/skins/classic/images/mail_toolbar.png
Binary files differ
diff --git a/skins/classic/includes/messagetoolbar.html b/skins/classic/includes/messagetoolbar.html
index bd14f490f..8f8efd291 100644
--- a/skins/classic/includes/messagetoolbar.html
+++ b/skins/classic/includes/messagetoolbar.html
@@ -21,7 +21,7 @@
<roundcube:button name="markmenulink" id="markmenulink" type="link" class="button markmessage" title="markmessages" onclick="rcmail_ui.show_popup('markmenu');return false" content=" " />
<roundcube:button name="messagemenulink" id="messagemenulink" type="link" class="button messagemenu" title="moreactions" onclick="rcmail_ui.show_popup('messagemenu');return false" content=" " />
<roundcube:if condition="template:name == 'message'" />
-<roundcube:object name="mailboxlist" type="select" noSelection="moveto" maxlength="25" onchange="rcmail.command('moveto', this.options[this.selectedIndex].value)" class="mboxlist" folder_filter="mail" />
+<roundcube:object name="mailboxlist" type="select" noSelection="moveto" maxlength="25" onchange="rcmail.command('move', this.options[this.selectedIndex].value)" class="mboxlist" folder_filter="mail" />
<roundcube:endif />
</div>
diff --git a/skins/classic/mail.css b/skins/classic/mail.css
index 7c350ca3d..b8cc9f351 100644
--- a/skins/classic/mail.css
+++ b/skins/classic/mail.css
@@ -107,6 +107,14 @@
background-position: -192px -32px;
}
+#messagetoolbar a.print {
+ background-position: -224px 0;
+}
+
+#messagetoolbar a.printSel {
+ background-position: -224px -32px;
+}
+
#messagetoolbar a.markmessage {
background-position: -256px 0;
}
@@ -155,6 +163,14 @@
background-position: -416px -32px;
}
+#messagetoolbar a.download {
+ background-position: -480px 0;
+}
+
+#messagetoolbar a.downloadSel {
+ background-position: -480px -32px;
+}
+
#messagetoolbar select.mboxlist
{
position: relative;
@@ -284,10 +300,38 @@
#messagepartcontainer
{
position: absolute;
- top: 80px;
- left: 20px;
- right: 20px;
- bottom: 20px;
+ top: 0;
+ left: 170px;
+ right: 0;
+ bottom: 0;
+}
+
+#messagepartheader
+{
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ width: 160px;
+ border: 1px solid #999999;
+ background-color: #F9F9F9;
+ overflow: hidden;
+}
+
+#messagepartheader table
+{
+ width: 100%;
+ table-layout: fixed;
+}
+
+#messagepartheader table td
+{
+ text-overflow: ellipsis;
+}
+
+#messagepartheader table td.title
+{
+ width: 60px;
}
#mailcontframe
@@ -329,31 +373,7 @@
height: 100%;
min-height: 100%; /* Chrome 14 bug */
border: 1px solid #999999;
- background-color: #F9F9F9;
-}
-
-
-#partheader
-{
- position: absolute;
- top: 10px;
- left: 220px;
- right: 20px;
- height: 40px;
-}
-
-#partheader table td
-{
- padding-left: 2px;
- padding-right: 4px;
- vertical-align: middle;
- font-size: 11px;
-}
-
-#partheader table td.title
-{
- color: #666666;
- font-weight: bold;
+ background-color: #fff;
}
@@ -611,14 +631,22 @@ body.messagelist
background-color: #F9F9F9;
}
-#messagelist
+table.messagelist
{
width: 100%;
display: table;
table-layout: fixed;
+ border-collapse: collapse;
+ border-spacing: 0;
+ z-index: 1;
}
-#messagelist thead tr td
+table.messagelist.fixedcopy
+{
+ z-index: 2;
+}
+
+.messagelist thead tr td
{
height: 20px;
padding: 0 4px 0 2px;
@@ -630,23 +658,23 @@ body.messagelist
font-weight: bold;
}
-#messagelist thead tr td.sortedASC,
-#messagelist thead tr td.sortedDESC
+.messagelist thead tr td.sortedASC,
+.messagelist thead tr td.sortedDESC
{
background-position: 0 -26px;
}
-#messagelist thead tr td.sortedASC a
+.messagelist thead tr td.sortedASC a
{
background: url(images/icons/sort.gif) right 0 no-repeat;
}
-#messagelist thead tr td.sortedDESC a
+.messagelist thead tr td.sortedDESC a
{
background: url(images/icons/sort.gif) right -14px no-repeat;
}
-#messagelist thead tr td a
+.messagelist thead tr td a
{
display: block;
width: auto !important;
@@ -655,18 +683,19 @@ body.messagelist
text-decoration: none;
}
-#messagelist thead tr td.size
+.messagelist thead tr td.size.sortedASC a,
+.messagelist thead tr td.size.sortedDESC a
{
- text-align: left;
+ padding-right: 18px;
}
-#messagelist thead tr td.subject
+.messagelist thead tr td.subject
{
padding-left: 18px;
width: 99%;
}
-#messagelist tbody tr td
+.messagelist tbody tr td
{
height: 20px;
padding: 0;
@@ -680,7 +709,7 @@ body.messagelist
cursor: default;
}
-#messagelist tbody tr td a
+.messagelist tbody tr td a
{
color: #000;
text-decoration: none;
@@ -688,53 +717,53 @@ body.messagelist
cursor: inherit;
}
-#messagelist td img
+.messagelist td img
{
vertical-align: middle;
display: inline-block;
}
-#messagelist tbody tr td.flag,
-#messagelist tbody tr td.status,
-#messagelist tbody tr td.subject span.status
+.messagelist tbody tr td.flag,
+.messagelist tbody tr td.status,
+.messagelist tbody tr td.subject span.status
{
cursor: pointer;
}
-#messagelist tr td.flag span,
-#messagelist tr td.status span,
-#messagelist tr td.attachment span,
-#messagelist tr td.priority span
+.messagelist tr td.flag span,
+.messagelist tr td.status span,
+.messagelist tr td.attachment span,
+.messagelist tr td.priority span
{
display: block;
width: 15px;
}
-#messagelist tr td div.collapsed,
-#messagelist tr td div.expanded,
-#messagelist tr td.threads div.listmenu,
-#messagelist tr td.attachment span.attachment,
-#messagelist tr td.attachment span.report,
-#messagelist tr td.priority span.priority,
-#messagelist tr td.priority span.prio1,
-#messagelist tr td.priority span.prio2,
-#messagelist tr td.priority span.prio3,
-#messagelist tr td.priority span.prio4,
-#messagelist tr td.priority span.prio5,
-#messagelist tr td.flag span.flagged,
-#messagelist tr td.flag span.unflagged,
-#messagelist tr td.flag span.unflagged:hover,
-#messagelist tr td.status span.status,
-#messagelist tr td.status span.msgicon,
-#messagelist tr td.status span.deleted,
-#messagelist tr td.status span.unread,
-#messagelist tr td.status span.unreadchildren,
-#messagelist tr td.subject span.msgicon,
-#messagelist tr td.subject span.deleted,
-#messagelist tr td.subject span.unread,
-#messagelist tr td.subject span.replied,
-#messagelist tr td.subject span.forwarded,
-#messagelist tr td.subject span.unreadchildren
+.messagelist tr td div.collapsed,
+.messagelist tr td div.expanded,
+.messagelist tr td.threads div.listmenu,
+.messagelist tr td.attachment span.attachment,
+.messagelist tr td.attachment span.report,
+.messagelist tr td.priority span.priority,
+.messagelist tr td.priority span.prio1,
+.messagelist tr td.priority span.prio2,
+.messagelist tr td.priority span.prio3,
+.messagelist tr td.priority span.prio4,
+.messagelist tr td.priority span.prio5,
+.messagelist tr td.flag span.flagged,
+.messagelist tr td.flag span.unflagged,
+.messagelist tr td.flag span.unflagged:hover,
+.messagelist tr td.status span.status,
+.messagelist tr td.status span.msgicon,
+.messagelist tr td.status span.deleted,
+.messagelist tr td.status span.unread,
+.messagelist tr td.status span.unreadchildren,
+.messagelist tr td.subject span.msgicon,
+.messagelist tr td.subject span.deleted,
+.messagelist tr td.subject span.unread,
+.messagelist tr td.subject span.replied,
+.messagelist tr td.subject span.forwarded,
+.messagelist tr td.subject span.unreadchildren
{
display: inline-block;
vertical-align: middle;
@@ -743,212 +772,212 @@ body.messagelist
background: url(images/messageicons.png) center no-repeat;
}
-#messagelist tr td.attachment span.attachment
+.messagelist tr td.attachment span.attachment
{
background-position: 0 -170px;
}
-#messagelist tr td.attachment span.report
+.messagelist tr td.attachment span.report
{
background-position: 0 -255px;
}
-#messagelist tr td.priority span.priority
+.messagelist tr td.priority span.priority
{
background-position: 0 -309px;
}
-#messagelist tr td.priority span.prio5
+.messagelist tr td.priority span.prio5
{
background-position: 0 -358px;
}
-#messagelist tr td.priority span.prio4
+.messagelist tr td.priority span.prio4
{
background-position: 0 -340px;
}
-#messagelist tr td.priority span.prio3
+.messagelist tr td.priority span.prio3
{
background-position: 0 -324px;
}
-#messagelist tr td.priority span.prio2
+.messagelist tr td.priority span.prio2
{
background-position: 0 -309px;
}
-#messagelist tr td.priority span.prio1
+.messagelist tr td.priority span.prio1
{
background-position: 0 -290px;
}
-#messagelist tr td.flag span.flagged
+.messagelist tr td.flag span.flagged
{
background-position: 0 -153px;
}
-#messagelist tr td.flag span.unflagged:hover
+.messagelist tr td.flag span.unflagged:hover
{
background-position: 0 -136px;
}
-#messagelist tr td.subject span.msgicon,
-#messagelist tr td.subject span.unreadchildren
+.messagelist tr td.subject span.msgicon,
+.messagelist tr td.subject span.unreadchildren
{
background-position: 0 -51px;
margin: 0 2px;
}
-#messagelist tr td.subject span.replied
+.messagelist tr td.subject span.replied
{
background-position: 0 -85px;
}
-#messagelist tr td.subject span.forwarded
+.messagelist tr td.subject span.forwarded
{
background-position: 0 -68px;
}
-#messagelist tr td.subject span.replied.forwarded
+.messagelist tr td.subject span.replied.forwarded
{
background-position: 0 -102px;
}
-#messagelist tr td.status span.msgicon,
-#messagelist tr td.flag span.unflagged,
-#messagelist tr td.status span.unreadchildren
+.messagelist tr td.status span.msgicon,
+.messagelist tr td.flag span.unflagged,
+.messagelist tr td.status span.unreadchildren
{
background-position: 0 17px; /* no icon */
}
-#messagelist tr td.status span.msgicon:hover
+.messagelist tr td.status span.msgicon:hover
{
background-position: 0 -272px;
}
-#messagelist tr td.status span.deleted,
-#messagelist tr td.subject span.deleted
+.messagelist tr td.status span.deleted,
+.messagelist tr td.subject span.deleted
{
background-position: 0 -187px;
}
-#messagelist tr td.status span.status,
-#messagelist tr td.status span.unread,
-#messagelist tr td.subject span.unread
+.messagelist tr td.status span.status,
+.messagelist tr td.status span.unread,
+.messagelist tr td.subject span.unread
{
background-position: 0 -119px;
}
-#messagelist tr td div.collapsed
+.messagelist tr td div.collapsed
{
background-position: 0 -221px;
cursor: pointer;
}
-#messagelist tr td div.expanded
+.messagelist tr td div.expanded
{
background-position: 0 -204px;
cursor: pointer;
}
-#messagelist tr td.threads div.listmenu
+.messagelist tr td.threads div.listmenu
{
background-position: 0 -238px;
cursor: pointer;
}
-#messagelist tbody tr td.subject
+.messagelist tbody tr td.subject
{
width: 99%;
}
-#messagelist tbody tr td.subject a
+.messagelist tbody tr td.subject a
{
cursor: default;
vertical-align: middle; /* #1487091 */
}
/* thread parent message with unread children */
-#messagelist tbody tr.unroot td.subject a
+.messagelist tbody tr.unroot td.subject a
{
text-decoration: underline;
}
-#messagelist tr td.attachment,
-#messagelist tr td.threads,
-#messagelist tr td.status,
-#messagelist tr td.flag,
-#messagelist tr td.priority
+.messagelist tr td.attachment,
+.messagelist tr td.threads,
+.messagelist tr td.status,
+.messagelist tr td.flag,
+.messagelist tr td.priority
{
width: 17px;
padding: 0 0 0 2px;
}
-#messagelist tr td.size
+.messagelist tr td.size
{
width: 60px;
text-align: right;
padding: 0 2px;
}
-#messagelist tr td.fromto,
-#messagelist tr td.from,
-#messagelist tr td.to,
-#messagelist tr td.cc,
-#messagelist tr td.replyto
+.messagelist tr td.fromto,
+.messagelist tr td.from,
+.messagelist tr td.to,
+.messagelist tr td.cc,
+.messagelist tr td.replyto
{
width: 180px;
padding: 0 2px;
}
-#messagelist tr td.date
+.messagelist tr td.date
{
width: 118px;
padding: 0 2px;
}
-#messagelist tr.message
+.messagelist tr.message
{
background-color: #FFF;
}
-#messagelist tr.unread
+.messagelist tr.unread
{
font-weight: bold;
background-color: #FFFFFF;
}
-#messagelist tr.flagged td,
-#messagelist tr.flagged td a
+.messagelist tr.flagged td,
+.messagelist tr.flagged td a
{
color: #CC0000;
}
-#messagelist tr.selected td
+.messagelist tr.selected td
{
color: #FFFFFF;
background-color: #CC3333;
}
-#messagelist tr.unfocused td
+.messagelist tr.unfocused td
{
color: #FFFFFF;
background-color: #929292;
}
-#messagelist tr.selected td a
+.messagelist tr.selected td a
{
color: #FFFFFF;
}
-#messagelist tr.unfocused td a
+.messagelist tr.unfocused td a
{
color: #FFFFFF;
}
-#messagelist tr.deleted td,
-#messagelist tr.deleted td a
+.messagelist tr.deleted td,
+.messagelist tr.deleted td a
{
color: #CCCCCC;
}
@@ -1600,16 +1629,19 @@ input.from_address
vertical-align: middle;
}
+#upload-form,
#attachment-form
{
padding: 6px;
}
+#upload-form div,
#attachment-form div
{
padding: 2px;
}
+#upload-form div.buttons,
#attachment-form div.buttons
{
margin-top: 4px;
@@ -1687,6 +1719,14 @@ input.from_address
-o-text-overflow: ellipsis;
}
+#contacts-table td span.email
+{
+ display: inline;
+ color: #ccc;
+ font-style: italic;
+ margin-left: 0.5em;
+}
+
#abookcountbar
{
margin-top: 4px;
diff --git a/skins/classic/settings.css b/skins/classic/settings.css
index c918e3c18..2433f5040 100644
--- a/skins/classic/settings.css
+++ b/skins/classic/settings.css
@@ -85,6 +85,8 @@
{
font-weight: bold;
text-align: right;
+ width: 1%;
+ white-space: nowrap;
}
#bottomboxes
@@ -253,3 +255,15 @@ div.crop
{
overflow: auto;
}
+
+#rcmfd_signature
+{
+ width: 99%;
+ min-width: 390px;
+}
+
+#rcmfd_signature_toolbar1 td,
+#rcmfd_signature_toolbar2 td
+{
+ width: auto;
+}
diff --git a/skins/classic/templates/about.html b/skins/classic/templates/about.html
index 519acf773..429dfcf5f 100644
--- a/skins/classic/templates/about.html
+++ b/skins/classic/templates/about.html
@@ -7,11 +7,15 @@
</head>
<body>
+<roundcube:if condition="!request:_framed" />
+
<roundcube:include file="/includes/taskbar.html" />
<roundcube:include file="/includes/header.html" />
<roundcube:include file="/includes/settingstabs.html" />
<div id="mainscreen" class="box darkbg crop">
+<roundcube:endif />
+
<div class="readtext">
<div id="license">
<roundcube:object name="aboutcontent" />
@@ -29,7 +33,10 @@ Some <a href="http://roundcube.net/license">exceptions</a> for skins &amp; plugi
<roundcube:object name="pluginlist" id="pluginlist" class="records-table" cellspacing="0" />
</div>
+
+<roundcube:if condition="!request:_framed" />
</div>
+<roundcube:endif />
</body>
</html>
diff --git a/skins/classic/templates/addressbook.html b/skins/classic/templates/addressbook.html
index ba119891c..429b83438 100644
--- a/skins/classic/templates/addressbook.html
+++ b/skins/classic/templates/addressbook.html
@@ -17,7 +17,7 @@
</style>
</head>
-<body onload="rcube_init_mail_ui()">
+<body>
<roundcube:include file="/includes/taskbar.html" />
<roundcube:include file="/includes/header.html" />
@@ -75,7 +75,7 @@
<div id="addressscreen">
<div id="addresslist">
-<div class="boxtitle"><roundcube:label name="contacts" /></div>
+<roundcube:object name="addresslisttitle" label="contacts" tag="div" class="boxtitle" />
<div class="boxlistcontent">
<roundcube:object name="addresslist" id="contacts-table" class="records-table" cellspacing="0" summary="Contacts list" noheader="true" />
</div>
@@ -116,5 +116,16 @@
</ul>
</div>
+<div id="dragmenu" class="popupmenu">
+ <ul>
+ <li><roundcube:button command="move" onclick="return rcmail.drag_menu_action('move')" label="move" classAct="active" /></li>
+ <li><roundcube:button command="copy" onclick="return rcmail.drag_menu_action('copy')" label="copy" classAct="active" /></li>
+ </ul>
+</div>
+
+<script type="text/javascript">
+rcube_init_mail_ui();
+</script>
+
</body>
</html>
diff --git a/skins/classic/templates/compose.html b/skins/classic/templates/compose.html
index 5b0b47924..5e259e11c 100644
--- a/skins/classic/templates/compose.html
+++ b/skins/classic/templates/compose.html
@@ -16,10 +16,10 @@
</style>
</head>
<roundcube:if condition="env:extwin" />
-<body class="extwin" onload="rcube_init_mail_ui()">
+<body class="extwin">
<roundcube:object name="message" id="message" />
<roundcube:else />
-<body onload="rcube_init_mail_ui()">
+<body>
<roundcube:include file="/includes/taskbar.html" />
<roundcube:include file="/includes/header.html" />
<roundcube:endif />
@@ -44,7 +44,7 @@
<roundcube:button name="messageoptions" id="composemenulink" type="link" class="button messagemenu" title="messageoptions" onclick="rcmail_ui.show_popup('composemenu', true);return false" content=" " />
</div>
-<form name="form" action="./" method="post">
+<roundcube:form name="form" method="post">
<div id="mainscreen">
@@ -197,5 +197,9 @@
<roundcube:object name="composeAttachmentForm" id="attachment-form" attachmentFieldSize="40" class="popupmenu" />
+<script type="text/javascript">
+rcube_init_mail_ui();
+</script>
+
</body>
</html>
diff --git a/skins/classic/templates/contact.html b/skins/classic/templates/contact.html
index d74a78b27..8be112b49 100644
--- a/skins/classic/templates/contact.html
+++ b/skins/classic/templates/contact.html
@@ -13,7 +13,7 @@
<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" /></div>
+ <div id="contactphoto"><roundcube:object name="contactphoto" id="contactpic" placeholder="/images/contactpic.png" placeholderGroup="/images/contactgroup.png" /></div>
<roundcube:object name="contacthead" id="contacthead" />
<div style="clear:both"></div>
<div id="contacttabs">
diff --git a/skins/classic/templates/contactadd.html b/skins/classic/templates/contactadd.html
index 05cc8aa82..bad6daf28 100644
--- a/skins/classic/templates/contactadd.html
+++ b/skins/classic/templates/contactadd.html
@@ -5,11 +5,11 @@
<roundcube:include file="/includes/links.html" />
<script type="text/javascript" src="/functions.js"></script>
</head>
-<body class="iframe" onload="rcube_init_mail_ui()">
+<body class="iframe">
<div id="contact-title" class="boxtitle"><roundcube:label name="addcontact" /></div>
<div id="contact-details" class="boxcontent">
-<form name="editform" method="post" action="./">
+<roundcube:form name="editform" method="post">
<roundcube:if condition="strlen(env:sourcename)" />
<div id="sourcename"><roundcube:label name="addressbook" />: <roundcube:object name="sourceselector" class="hint" id="sourceselect" /></div>
<roundcube:endif />
@@ -35,7 +35,10 @@
<roundcube:object name="photoUploadForm" id="upload-form" size="30" class="popupmenu" />
<roundcube:object name="fileDropArea" id="contactpic" />
-<script type="text/javascript">rcube_init_tabs('contacttabs')</script>
+<script type="text/javascript">
+rcube_init_tabs('contacttabs');
+rcube_init_mail_ui();
+</script>
</body>
</html>
diff --git a/skins/classic/templates/contactedit.html b/skins/classic/templates/contactedit.html
index db8599ac6..c51cbf296 100644
--- a/skins/classic/templates/contactedit.html
+++ b/skins/classic/templates/contactedit.html
@@ -5,11 +5,11 @@
<roundcube:include file="/includes/links.html" />
<script type="text/javascript" src="/functions.js"></script>
</head>
-<body class="iframe" onload="rcube_init_mail_ui()">
+<body class="iframe">
<div id="contact-title" class="boxtitle"><roundcube:label name="editcontact" /></div>
<div id="contact-details" class="boxcontent">
-<form name="editform" method="post" action="./">
+<roundcube:form name="editform" method="post">
<roundcube:if condition="strlen(env:sourcename)" />
<div id="sourcename"><roundcube:label name="addressbook" />: <roundcube:var name="env:sourcename" /></div>
<roundcube:endif />
@@ -35,7 +35,10 @@
<roundcube:object name="photoUploadForm" id="upload-form" size="30" class="popupmenu" />
<roundcube:object name="fileDropArea" id="contactpic" />
-<script type="text/javascript">rcube_init_tabs('contacttabs')</script>
+<script type="text/javascript">
+rcube_init_tabs('contacttabs');
+rcube_init_mail_ui();
+</script>
</body>
</html>
diff --git a/skins/classic/templates/folders.html b/skins/classic/templates/folders.html
index 1ae8809ec..f86be092b 100644
--- a/skins/classic/templates/folders.html
+++ b/skins/classic/templates/folders.html
@@ -12,7 +12,7 @@
}
</style>
</head>
-<body onload="rcube_init_mail_ui()">
+<body>
<roundcube:include file="/includes/taskbar.html" />
<roundcube:include file="/includes/header.html" />
@@ -58,5 +58,9 @@
</ul>
</div>
+<script type="text/javascript">
+rcube_init_mail_ui();
+</script>
+
</body>
</html>
diff --git a/skins/classic/templates/login.html b/skins/classic/templates/login.html
index cca2bd934..2dacd48ff 100644
--- a/skins/classic/templates/login.html
+++ b/skins/classic/templates/login.html
@@ -15,7 +15,7 @@
<div class="boxtitle"><roundcube:label name="welcome" /></div>
<div class="boxcontent">
-<form name="form" action="./" method="post">
+<roundcube:form name="form" method="post">
<roundcube:object name="loginform" form="form" />
<p style="text-align:center;"><input type="submit" class="button mainaction" value="<roundcube:label name='login' />" /></p>
diff --git a/skins/classic/templates/mail.html b/skins/classic/templates/mail.html
index c7010e87c..10aebc96d 100644
--- a/skins/classic/templates/mail.html
+++ b/skins/classic/templates/mail.html
@@ -18,7 +18,7 @@
}
</style>
</head>
-<body onload="rcube_init_mail_ui()">
+<body>
<roundcube:include file="/includes/taskbar.html" />
<roundcube:include file="/includes/header.html" />
@@ -55,6 +55,7 @@
<div id="messagelistcontainer" class="boxlistcontent" style="top:0">
<roundcube:object name="messages"
id="messagelist"
+ class="messagelist fixedheader"
cellspacing="0"
columns=""
summary="Message list"
@@ -130,9 +131,9 @@
<roundcube:button command="reset-search" id="searchreset" image="/images/icons/reset.gif" title="resetsearch" width="13" height="13" />
</div>
-<div id="dragmessagemenu" class="popupmenu">
+<div id="dragmenu" class="popupmenu">
<ul>
- <li><roundcube:button command="moveto" onclick="return rcmail.drag_menu_action('moveto')" label="move" classAct="active" /></li>
+ <li><roundcube:button command="move" onclick="return rcmail.drag_menu_action('move')" label="move" classAct="active" /></li>
<li><roundcube:button command="copy" onclick="return rcmail.drag_menu_action('copy')" label="copy" classAct="active" /></li>
</ul>
</div>
@@ -140,7 +141,8 @@
<div id="mailboxoptionsmenu" class="popupmenu">
<ul>
<li><roundcube:button command="expunge" type="link" label="compact" classAct="active" /></li>
- <li class="separator_below"><roundcube:button command="purge" type="link" label="empty" classAct="active" /></li>
+ <li><roundcube:button command="purge" type="link" label="empty" classAct="active" /></li>
+ <li class="separator_below"><roundcube:button name="messageimport" type="link" class="active" label="importmessages" id="uploadformlink" onclick="rcmail_ui.show_popup('uploadform', true); return false" /></li>
<li><roundcube:button command="folders" task="settings" type="link" label="managefolders" classAct="active" /></li>
<roundcube:container name="mailboxoptions" id="mailboxoptionsmenu" />
</ul>
@@ -204,5 +206,11 @@
</div>
</div>
+<roundcube:object name="messageimportform" id="upload-form" attachmentFieldSize="40" class="popupmenu" />
+
+<script type="text/javascript">
+rcube_init_mail_ui();
+</script>
+
</body>
</html>
diff --git a/skins/classic/templates/message.html b/skins/classic/templates/message.html
index 11e58c711..757c0a635 100644
--- a/skins/classic/templates/message.html
+++ b/skins/classic/templates/message.html
@@ -13,10 +13,10 @@
</style>
</head>
<roundcube:if condition="env:extwin" />
-<body class="extwin" onload="rcube_init_mail_ui()">
+<body class="extwin">
<roundcube:object name="message" id="message" />
<roundcube:else />
-<body onload="rcube_init_mail_ui()">
+<body>
<roundcube:include file="/includes/taskbar.html" />
<roundcube:include file="/includes/header.html" />
@@ -81,5 +81,9 @@
</ul>
</div>
+<script type="text/javascript">
+rcube_init_mail_ui();
+</script>
+
</body>
</html>
diff --git a/skins/classic/templates/messageerror.html b/skins/classic/templates/messageerror.html
index d02508942..eb8c7e058 100644
--- a/skins/classic/templates/messageerror.html
+++ b/skins/classic/templates/messageerror.html
@@ -27,7 +27,7 @@
</style>
</head>
-<body onload="rcube_init_mail_ui()">
+<body>
<roundcube:include file="/includes/taskbar.html" />
<roundcube:include file="/includes/header.html" />
@@ -61,6 +61,10 @@
rcmail.add_onload('mailviewsplitv.init()');
</script>
+<script type="text/javascript">
+rcube_init_mail_ui();
+</script>
+
</body>
<roundcube:endif />
diff --git a/skins/classic/templates/messagepart.html b/skins/classic/templates/messagepart.html
index ce7dbe2e1..9f2215679 100644
--- a/skins/classic/templates/messagepart.html
+++ b/skins/classic/templates/messagepart.html
@@ -3,23 +3,39 @@
<head>
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
+<script type="text/javascript" src="/splitter.js"></script>
+<script type="text/javascript" src="/functions.js"></script>
+<style type="text/css">
+#messagepartheader { width: <roundcube:exp expression="!empty(cookie:mailpartsplitter) ? cookie:mailpartsplitter-5 : 170" />px; }
+#messagepartcontainer { left: <roundcube:exp expression="!empty(cookie:mailpartsplitter) ? cookie:mailpartsplitter+5 : 180" />px;
+<roundcube:exp expression="browser:ie ? ('width: expression((parseInt(this.parentNode.offsetWidth)-'.(!empty(cookie:mailpartsplitter) ? cookie:mailpartsplitter+5 : 180).')+\\'px\\');') : ''" />
+}
+</style>
</head>
<body class="extwin">
+<roundcube:object name="message" id="message" />
-<roundcube:include file="/includes/header.html" />
-
-<div id="partheader">
-<roundcube:object name="messagePartControls" cellpadding="2" cellspacing="0" />
-
-<div style="position:absolute; top:2px; right:0; width:12em; text-align:right">
- [<a href="#close" class="closelink" onclick="self.close()"><roundcube:label name="close" /></a>]
+<div id="messagetoolbar">
+ <roundcube:button command="download" type="link" class="button download" classAct="button download" classSel="button downloadSel" title="download" content=" " />
+ <roundcube:button command="print" type="link" class="button print" classAct="button print" classSel="button printSel" title="print" content=" " />
+ <roundcube:container name="toolbar" id="messagetoolbar" />
</div>
-</div>
-
-<div id="messagepartcontainer">
-<roundcube:object name="messagePartFrame" id="messagepartframe" width="100%" height="100%" />
+<div id="mainscreen">
+ <div id="messagepartheader">
+ <div class="boxtitle" /><roundcube:label name="properties" /></div>
+ <div class="boxlistcontent">
+ <roundcube:object name="messagePartControls" class="records-table" cellspacing="0" />
+ </div>
+ </div>
+ <div id="messagepartcontainer">
+ <roundcube:object name="messagePartFrame" id="messagepartframe" width="100%" height="100%" />
+ </div>
</div>
+<script type="text/javascript">
+var mailpartsplit = new rcube_splitter({id:'mailpartsplitter', p1: 'messagepartheader', p2: 'messagepartcontainer', orientation: 'v', relative: true, start: 165});
+rcmail.add_onload('mailpartsplit.init()');
+</script>
</body>
</html>
diff --git a/skins/classic/templates/messagepreview.html b/skins/classic/templates/messagepreview.html
index 80dbe381a..b42a06342 100644
--- a/skins/classic/templates/messagepreview.html
+++ b/skins/classic/templates/messagepreview.html
@@ -6,7 +6,7 @@
<script type="text/javascript" src="/splitter.js"></script>
<script type="text/javascript" src="/functions.js"></script>
</head>
-<body class="iframe" onload="rcube_init_mail_ui()">
+<body class="iframe">
<div class="messageheaderbox">
<div id="messagelinks">
@@ -34,5 +34,9 @@
</ul>
</div>
+<script type="text/javascript">
+rcube_init_mail_ui();
+</script>
+
</body>
</html>