diff options
Diffstat (limited to 'skins')
56 files changed, 801 insertions, 1590 deletions
diff --git a/skins/classic/addressbook.css b/skins/classic/addressbook.css index 9575ae25f..10690f9ba 100644 --- a/skins/classic/addressbook.css +++ b/skins/classic/addressbook.css @@ -23,7 +23,7 @@ padding: 0; margin: 0 5px; overflow: hidden; - background: url(images/abook_toolbar.png) 0 0 no-repeat transparent; + background: url(images/abook_toolbar.png?v=025d.15594) 0 0 no-repeat transparent; opacity: 0.99; /* this is needed to make buttons appear correctly in Chrome */ } @@ -67,14 +67,6 @@ background-position: -128px -32px; } -#abooktoolbar a.exportAll { - background-position: -128px 0; -} - -#abooktoolbar a.exportAllSel { - background-position: -128px -32px; -} - #abooktoolbar span.separator { width: 5px; background-position: -162px 0; @@ -118,7 +110,7 @@ #directorylistbox input { - margin: 0 0 0 20px; + margin: 0px; font-size: 11px; width: 90%; } @@ -144,8 +136,7 @@ width: 280px; } -#directorylist, -#directorylist li ul +#directorylist { list-style: none; margin: 0; @@ -153,15 +144,11 @@ background-color: #FFFFFF; } -#directorylist li ul -{ - border-top: 1px solid #EBEBEB; -} - #directorylist li { display: block; font-size: 11px; + background: url(images/icons/folders.png?v=87af.4822) 5px -108px no-repeat; border-bottom: 1px solid #EBEBEB; white-space: nowrap; } @@ -173,37 +160,31 @@ padding-left: 25px; padding-top: 2px; padding-bottom: 2px; - height: 16px; text-decoration: none; white-space: nowrap; - background: url(images/icons/folders.png) 5px -108px no-repeat; } -#directorylist li ul li a +#directorylist li.contactgroup { - padding-left: 45px; + padding-left: 15px; + background-position: 20px -143px; } -#directorylist li ul li:last-child +#directorylist li.contactsearch { - border-bottom: 0; -} - -#directorylist li.contactgroup a -{ - background-position: 22px -143px; + background-position: 6px -162px; } -#directorylist li.contactsearch a +#directorylist li.selected { - background-position: 6px -162px; + background-color: #929292; + border-bottom: 1px solid #898989; } -#directorylist li.selected > a +#directorylist li.selected a { color: #FFF; font-weight: bold; - background-color: #929292; } #directorylist li.droptarget @@ -224,37 +205,6 @@ -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; @@ -357,8 +307,7 @@ body.iframe, } #contactpic img { - max-width: 60px; - max-height: 80px; + width: 60px; } #contactpic.droptarget.hover { diff --git a/skins/classic/common.css b/skins/classic/common.css index 3c322f0ed..c76786747 100644 --- a/skins/classic/common.css +++ b/skins/classic/common.css @@ -20,7 +20,7 @@ body.extwin margin: 10px; } -select, input, textarea +td, th, div, p, select, input, textarea { font-size: 12px; font-family: inherit; @@ -93,7 +93,7 @@ input.button font-size: 12px; padding-left: 8px; padding-right: 8px; - background: url(images/buttons/bg.gif) repeat-x #f0f0f0; + background: url(images/buttons/bg.gif?v=30b2.196) repeat-x #f0f0f0; border: 1px solid #a4a4a4; } @@ -182,7 +182,7 @@ body > #logo right: 0px; height: 24px; left: 250px; - background: url(images/taskbar.png) top right no-repeat; + background: url(images/taskbar.png?v=3878.1902) top right no-repeat; padding: 10px 6px 5px 0px; text-align: right; white-space: nowrap; @@ -195,7 +195,7 @@ body > #logo color: #666666; text-decoration: none; padding: 6px 12px 6px 26px; - background: url(images/taskicons.gif) no-repeat; + background: url(images/taskicons.gif?v=b8e0.1519) no-repeat; } #taskbar a:hover @@ -246,7 +246,7 @@ body > #message div.notice, body > #messagebody .part-notice, #message-objects div.notice { - background: url(images/display/icons.png) 6px 3px no-repeat; + background: url(images/display/icons.png?v=e866.4201) 6px 3px no-repeat; background-color: #F7FDCB; border: 1px solid #C2D071; } @@ -256,7 +256,7 @@ body > #message div.warning, #message-objects div.warning, #message-objects div.error { - background: url(images/display/icons.png) 6px -97px no-repeat; + background: url(images/display/icons.png?v=e866.4201) 6px -97px no-repeat; background-color: #EF9398; border: 1px solid #DC5757; } @@ -264,7 +264,7 @@ body > #message div.warning, body > #message div.confirmation, #message-objects div.confirmation { - background: url(images/display/icons.png) 6px -47px no-repeat; + background: url(images/display/icons.png?v=e866.4201) 6px -47px no-repeat; background-color: #A6EF7B; border: 1px solid #76C83F; } @@ -272,7 +272,7 @@ body > #message div.confirmation, body > #message div.loading, #message-objects div.loading { - background: url(images/display/loading.gif) 6px 3px no-repeat; + background: url(images/display/loading.gif?v=9bae.2710) 6px 3px no-repeat; background-color: #EBEBEB; border: 1px solid #CCCCCC; } @@ -283,15 +283,6 @@ 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; @@ -309,7 +300,7 @@ body.extwin #closelink text-overflow: ellipsis; -o-text-overflow: ellipsis; white-space: nowrap; - background: url(images/listheader.gif) top left repeat-x #CCC; + background: url(images/listheader.gif?v=ab42.314) top left repeat-x #CCC; } .boxtitle .rightalign @@ -358,7 +349,7 @@ body.iframe .boxtitle overflow: hidden; height: 22px; border-bottom: 1px solid #999; - background: url(images/listheader.gif) top left repeat-x #CCC; + background: url(images/listheader.gif?v=ab42.314) top left repeat-x #CCC; } .boxfooter @@ -370,7 +361,7 @@ body.iframe .boxtitle overflow: hidden; height: 22px; border-top: 1px solid #999; - background: url(images/listheader.gif) top left repeat-x #CCC; + background: url(images/listheader.gif?v=ab42.314) top left repeat-x #CCC; } .boxfooter a.button, @@ -383,7 +374,7 @@ body.iframe .boxtitle padding: 0px; margin: 0; overflow: hidden; - background: url(images/icons/groupactions.png) 0 0 no-repeat transparent; + background: url(images/icons/groupactions.png?v=ace6.1092) 0 0 no-repeat transparent; opacity: 0.99; /* this is needed to make buttons appear correctly in Chrome */ } @@ -420,7 +411,7 @@ body.iframe .boxtitle margin: 1px; margin-top: 2px; overflow: hidden; - background: url(images/pagenav.gif) 0 0 no-repeat transparent; + background: url(images/pagenav.gif?v=2e75.355) 0 0 no-repeat transparent; opacity: 0.99; /* this is needed to make buttons appear correctly in Chrome */ } @@ -462,7 +453,7 @@ body.iframe .boxtitle -moz-user-select: none; -khtml-user-select: none; position: absolute; - background: url(images/dimple.png) center no-repeat; + background: url(images/dimple.png?v=42a0.158) center no-repeat; } .splitter-h @@ -542,7 +533,7 @@ body.iframe .boxtitle .popupmenu.selectable li a.selected { - background: url(images/messageicons.png) 2px -372px no-repeat; + background: url(images/messageicons.png?v=9df0.3673) 2px -372px no-repeat; } .popupmenu.selectable li a @@ -564,13 +555,13 @@ body.iframe .boxtitle .dropbutton:hover { -/* background: url(images/dbutton.png) 0 0 no-repeat transparent; */ +/* background: url(images/dbutton.png?v=7bba.240) 0 0 no-repeat transparent; */ } .dropbutton span { width: 9px; - background: url(images/dbutton.png) -53px 0 no-repeat transparent; + background: url(images/dbutton.png?v=7bba.240) -53px 0 no-repeat transparent; } .dropbutton span:hover @@ -594,7 +585,7 @@ table.records-table thead tr td vertical-align: middle; border-bottom: 1px solid #999999; color: #333333; - background: url(images/listheader.gif) top left repeat-x #CCC; + background: url(images/listheader.gif?v=ab42.314) top left repeat-x #CCC; font-size: 11px; font-weight: bold; } @@ -631,32 +622,6 @@ table.records-table tr.unfocused td background-color: #929292; } -ul.treelist li -{ - position: relative; -} - -ul.treelist li div.treetoggle -{ - position: absolute; - left: 8px !important; - left: -16px; - top: 1px; - width: 14px; - height: 16px; - cursor: pointer; -} - -ul.treelist li div.collapsed -{ - background: url(images/icons/collapsed.png) bottom right no-repeat; -} - -ul.treelist li div.expanded -{ - background: url(images/icons/expanded.png) bottom right no-repeat; -} - /***** mac-style quicksearch field *****/ @@ -668,7 +633,7 @@ ul.treelist li div.expanded width: 190px; height: 20px; text-align: right; - background: url(images/searchfield.gif) top left no-repeat; + background: url(images/searchfield.gif?v=aaf8.313) top left no-repeat; } #searchreset @@ -701,7 +666,6 @@ ul.treelist li div.expanded font-size: 11px; padding: 0px; border: none; - outline: none; } /***** roundcube webmail pre-defined classes *****/ @@ -746,7 +710,7 @@ ul.treelist li div.expanded content: " "; width: 14px; height: 14px; - background: url(images/messageactions.png) -2px -128px no-repeat; + background: url(images/messageactions.png?v=e5b9.2211) -2px -128px no-repeat; } a.rcmContactAddress @@ -796,7 +760,7 @@ a.rcmContactAddress:hover margin-left: auto; margin-right: auto; margin-top: 50px; - width: 400px; + width: 420px; border: 1px solid #999; } @@ -963,7 +927,7 @@ span.tablink-selected height: 23px !important; height: 22px; overflow: hidden; - background: url(images/tabs-left.gif) top left no-repeat; + background: url(images/tabs-left.gif?v=0541.219) top left no-repeat; } span.tablink @@ -990,7 +954,7 @@ span.tablink-selected a overflow: hidden; text-overflow: ellipsis; -o-text-overflow: ellipsis; - background: url(images/tabs-right.gif) top right no-repeat; + background: url(images/tabs-right.gif?v=5414.733) top right no-repeat; } span.tablink-selected a @@ -1026,9 +990,9 @@ fieldset.tabbed cursor: default; } .quota_bg { background-color: white; } -.quota_high { background: url(images/quota-colors.png) repeat-x 0 -28px #f90509; } -.quota_mid { background: url(images/quota-colors.png) repeat-x 0 -14px #e3e909; } -.quota_low { background: url(images/quota-colors.png) repeat-x 0 0px #05f905; } +.quota_high { background: url(images/quota-colors.png?v=c1e9.287) repeat-x 0 -28px #f90509; } +.quota_mid { background: url(images/quota-colors.png?v=c1e9.287) repeat-x 0 -14px #e3e909; } +.quota_low { background: url(images/quota-colors.png?v=c1e9.287) repeat-x 0 0px #05f905; } .quota_text_high { color: white; } .quota_text_mid { color: #666; } .quota_text_low { color: #666; } diff --git a/skins/classic/embed.css b/skins/classic/embed.css index 6d2c63c6a..fbfa09501 100644 --- a/skins/classic/embed.css +++ b/skins/classic/embed.css @@ -16,7 +16,7 @@ margin-bottom: .8em; min-height: 30px; padding: 10px 10px 6px 46px; - background: url(images/display/icons.png) 6px 3px no-repeat #F7FDCB; + background: url(images/display/icons.png?v=e866.4201) 6px 3px no-repeat #F7FDCB; border: 1px solid #C2D071; } diff --git a/skins/classic/functions.js b/skins/classic/functions.js index af561c37b..23c69805c 100644 --- a/skins/classic/functions.js +++ b/skins/classic/functions.js @@ -92,9 +92,8 @@ function rcube_mail_ui() forwardmenu: {id:'forwardmenu', editable:1}, searchmenu: {id:'searchmenu', editable:1}, messagemenu: {id:'messagemenu'}, - attachmentmenu: {id:'attachmentmenu'}, listmenu: {id:'listmenu', editable:1}, - dragmenu: {id:'dragmenu', sticky:1}, + dragmessagemenu:{id:'dragmessagemenu', sticky:1}, groupmenu: {id:'groupoptionsmenu', above:1}, mailboxmenu: {id:'mailboxoptionsmenu', above:1}, composemenu: {id:'composeoptionsmenu', editable:1, overlap:1}, @@ -134,24 +133,24 @@ show_popupmenu: function(popup, show) { var obj = this.popups[popup].obj, above = this.popups[popup].above, - ref = $(this.popups[popup].link ? this.popups[popup].link : rcube_find_object(popup+'link')); + ref = rcube_find_object(popup+'link'); if (typeof show == 'undefined') show = obj.is(':visible') ? false : true; else if (this.popups[popup].toggle && show && this.popups[popup].obj.is(':visible') ) show = false; - if (show && ref.length) { - var parent = ref.parent(), + if (show && ref) { + var parent = $(ref).parent(), win = $(window), - pos = parent.hasClass('dropbutton') ? parent.offset() : ref.offset(); + pos = parent.hasClass('dropbutton') ? parent.offset() : $(ref).offset(); - if (!above && pos.top + ref.height() + obj.height() > win.height()) + if (!above && pos.top + ref.offsetHeight + obj.height() > win.height()) above = true; if (pos.left + obj.width() > win.width()) pos.left = win.width() - obj.width() - 30; - obj.css({ left:pos.left, top:(pos.top + (above ? -obj.height() : ref.height())) }); + obj.css({ left:pos.left, top:(pos.top + (above ? -obj.height() : ref.offsetHeight)) }); } obj[show?'show':'hide'](); @@ -162,9 +161,9 @@ show_popupmenu: function(popup, show) } }, -dragmenu: function(show) +dragmessagemenu: function(show) { - this.popups.dragmenu.obj[show?'show':'hide'](); + this.popups.dragmessagemenu.obj[show?'show':'hide'](); }, forwardmenu: function(show) @@ -326,7 +325,7 @@ listmenu: function(show) }; }, -open_listmenu: function() +open_listmenu: function(e) { this.listmenu(); }, @@ -381,35 +380,6 @@ spellmenu: function(show) this.show_popupmenu('spellmenu', show); }, -show_attachmentmenu: function(elem) -{ - var id = elem.parentNode.id.replace(/^attach/, ''); - - $('#attachmenuopen').unbind('click').attr('onclick', '').click(function(e) { - return rcmail.command('open-attachment', id, this); - }); - - $('#attachmenudownload').unbind('click').attr('onclick', '').click(function() { - rcmail.command('download-attachment', id, this); - }); - - this.popups.attachmentmenu.link = elem; - rcmail.command('menu-open', {menu: 'attachmentmenu', id: id}); -}, - -menu_open: function(p) -{ - if (p && p.props && p.props.menu == 'attachmentmenu') - this.show_popup('attachmentmenu'); - else - this.open_listmenu(); -}, - -menu_save: function(prop) -{ - this.save_listmenu(); -}, - body_mouseup: function(evt, p) { var i, target = rcube_event.get_target(evt); @@ -492,18 +462,14 @@ switch_preview_pane: function(elem) /* Message composing */ init_compose_form: function() { - var f, v, field, fields = ['cc', 'bcc', 'replyto', 'followupto'], + var f, field, fields = ['cc', 'bcc', 'replyto', 'followupto'], div = document.getElementById('compose-div'), headers_div = document.getElementById('compose-headers-div'); // Show input elements with non-empty value for (f=0; f<fields.length; f++) { - v = fields[f]; field = $('#_'+v); - if (field.length) { - field.on('change', {v:v}, function(e) { if (this.value) rcmail_ui.show_header_form(e.data.v); }); - if (field.val() != '') - rcmail_ui.show_header_form(v); - } + if ((field = $('#_'+fields[f])) && field.length && field.val() != '') + rcmail_ui.show_header_form(fields[f]); } // prevent from form data loss when pressing ESC key in IE @@ -621,130 +587,14 @@ prev_sibling: function(elm) while (ps && ps.nodeType == 3) ps = ps.previousSibling; return ps; -}, - -enable_command: function(p) -{ - if (p.command == 'reply-list') { - var label = rcmail.gettext(p.status ? 'replylist' : 'replyall'); - $('a.button.replyAll').attr('title', label); - } } }; /** - * Roundcube generic layer (floating box) class - * - * @constructor - */ -function rcube_layer(id, attributes) -{ - this.name = id; - - // create a new layer in the current document - this.create = function(arg) - { - var l = (arg.x) ? arg.x : 0, - t = (arg.y) ? arg.y : 0, - w = arg.width, - h = arg.height, - z = arg.zindex, - vis = arg.vis, - parent = arg.parent, - obj = document.createElement('DIV'); - - obj.id = this.name; - obj.style.position = 'absolute'; - obj.style.visibility = (vis) ? (vis==2) ? 'inherit' : 'visible' : 'hidden'; - obj.style.left = l+'px'; - obj.style.top = t+'px'; - if (w) - obj.style.width = w.toString().match(/\%$/) ? w : w+'px'; - if (h) - obj.style.height = h.toString().match(/\%$/) ? h : h+'px'; - if (z) - obj.style.zIndex = z; - - if (parent) - parent.appendChild(obj); - else - document.body.appendChild(obj); - - this.elm = obj; - }; - - // create new layer - if (attributes != null) { - this.create(attributes); - this.name = this.elm.id; - } - else // just refer to the object - this.elm = document.getElementById(id); - - if (!this.elm) - return false; - - - // ********* layer object properties ********* - - this.css = this.elm.style; - this.event = this.elm; - this.width = this.elm.offsetWidth; - this.height = this.elm.offsetHeight; - this.x = parseInt(this.elm.offsetLeft); - this.y = parseInt(this.elm.offsetTop); - this.visible = (this.css.visibility=='visible' || this.css.visibility=='show' || this.css.visibility=='inherit') ? true : false; - - - // ********* layer object methods ********* - - // move the layer to a specific position - this.move = function(x, y) - { - this.x = x; - this.y = y; - this.css.left = Math.round(this.x)+'px'; - this.css.top = Math.round(this.y)+'px'; - }; - - // change the layers width and height - this.resize = function(w,h) - { - this.css.width = w+'px'; - this.css.height = h+'px'; - this.width = w; - this.height = h; - }; - - // show or hide the layer - this.show = function(a) - { - if(a == 1) { - this.css.visibility = 'visible'; - this.visible = true; - } - else if(a == 2) { - this.css.visibility = 'inherit'; - this.visible = true; - } - else { - this.css.visibility = 'hidden'; - this.visible = false; - } - }; - - // write new content into a Layer - this.write = function(cont) - { - this.elm.innerHTML = cont; - }; - -}; - -/** * Scroller */ + function rcmail_scroller(list, top, bottom) { var ref = this; @@ -796,25 +646,24 @@ 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 && bw.vendver < 9 ? 40 : 100)) + if (list.length > (bw.ie ? 25 : 100)) return; - list.each(function() { + list.each(function(){ var elem = $(this), text = elem.data('text'); if (!text) { - text = elem.text().replace(/\s+\([0-9]+\)$/, ''); + text = elem.text().replace(/\s+\(.+$/, ''); elem.data('text', text); } - if (text.length < 6) return; - var abbrev = fit_string_to_size(text, elem, elem.width() - elem.children('span.unreadcount').width() - 16); + var abbrev = fit_string_to_size(text, elem, elem.width() - elem.children('span.unreadcount').width()); if (abbrev != text) elem.attr('title', text); elem.contents().filter(function(){ return (this.nodeType == 3); }).get(0).data = abbrev; @@ -824,23 +673,19 @@ function rcube_render_mailboxlist() // inspired by https://gist.github.com/24261/7fdb113f1e26111bd78c0c6fe515f6c0bf418af5 function fit_string_to_size(str, elem, len) { - var w, span, $span, result = str, ellip = '...'; + var w, 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', - 'font-family': elem.css('font-family'), - 'font-size': elem.css('font-size')}) + span = $('<b>').css({visibility: 'hidden', padding: '0px'}) .appendTo($('body', document)).get(0); rcmail.env.tmp_span = span; } else { span = rcmail.env.tmp_span; } - - $span = $(span); - $span.text(result); + span.innerHTML = result; // on first run, check if string fits into the length already. w = span.offsetWidth; @@ -853,7 +698,7 @@ function fit_string_to_size(str, elem, len) while (true) { offLeft = mid - cut; offRight = mid + cut; - $span.text(str.substring(0,offLeft) + ellip + str.substring(offRight)); + span.innerHTML = str.substring(0,offLeft) + ellip + str.substring(offRight); // break loop if string fits size if (offLeft < 3 || span.offsetWidth) @@ -917,7 +762,7 @@ function percent_indicator(obj, data) var bar2 = $('<div>'); bar2.css({position: 'absolute', top: pos.top + 1, left: pos.left + 1, width: width + 'px', height: height + 'px', zIndex: 98}) - .addClass('quota_bg'); + .addClass('quota_bg'); if (quota >= limit_high) { main.addClass(' quota_text_high'); @@ -940,8 +785,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; @@ -952,52 +797,40 @@ 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' }); - 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'); - } + if (rcmail.env.quota_content) + update_quota(rcmail.env.quota_content); + rcmail.addEventListener('setquota', update_quota); - 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); }); + $('iframe').load(iframe_events) + .contents().mouseup(function(e){rcmail_ui.body_mouseup(e)}); - if (rcmail.gui_objects.folderlist) - new rcmail_scroller('#directorylist-content', '#directorylist-title', '#directorylist-footer'); + if (rcmail.env.task == 'mail') { + rcmail.addEventListener('menu-open', 'open_listmenu', rcmail_ui); + rcmail.addEventListener('menu-save', 'save_listmenu', 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'); - 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'); + 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); + + new rcmail_scroller('#mailboxlist-content', '#mailboxlist-title', '#mailboxlist-footer'); } - }); + + if (rcmail.env.action == 'compose') + rcmail_ui.init_compose_form(); + } + 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'); + } + 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/ie6hacks.css b/skins/classic/ie6hacks.css index a431ee45e..0026d426a 100644 --- a/skins/classic/ie6hacks.css +++ b/skins/classic/ie6hacks.css @@ -2,7 +2,7 @@ #taskbar { - background: url(images/taskbar.gif) top right no-repeat; + background: url(images/taskbar.gif?v=5666.2033) top right no-repeat; width: expression((parseInt(document.documentElement.clientWidth)-250)+'px'); } @@ -26,17 +26,17 @@ body > #message div.confirmation, #message-objects div.warning, #message-objects div.confirmation { - background-image: url(images/display/icons.gif); + background-image: url(images/display/icons.gif?v=84d5.2329); } #messagemenu li a { - background-image: url(images/messageactions.gif); + background-image: url(images/messageactions.gif?v=dcdc.1916); } #mailboxlist li { - background-image: url(images/icons/folders.gif); + background-image: url(images/icons/folders.gif?v=59af.2568); } #messagetoolbar a @@ -49,7 +49,7 @@ body > #message div.confirmation, .boxfooter a.button, .boxfooter a.buttonPas { - background-image: url(images/icons/groupactions.gif); + background-image: url(images/icons/groupactions.gif?v=677d.496); } .pagenav @@ -60,23 +60,23 @@ body > #message div.confirmation, .pagenav a.button, .pagenav a.buttonPas { - background-image: url(images/pagenav.gif); + background-image: url(images/pagenav.gif?v=2e75.355); } #listcontrols a.button, #listcontrols a.buttonPas { - background-image: url(images/mail_footer.gif); + background-image: url(images/mail_footer.gif?v=83fb.1336); } #messagetoolbar a.button, #messagetoolbar a.buttonPas { - background-image: url(images/mail_toolbar.gif); + background-image: url(images/mail_toolbar.gif?v=183d.12821); } #abooktoolbar a.button, #abooktoolbar a.buttonPas, #abooktoolbar span.separator { - background-image: url(images/abook_toolbar.gif); + background-image: url(images/abook_toolbar.gif?v=dfe4.5753); } ul.toolbarmenu li a, @@ -106,7 +106,7 @@ ul.toolbarmenu li.separator_below #directorylist li { - background-image: url(images/icons/folders.gif); + background-image: url(images/icons/folders.gif?v=59af.2568); } .boxlistcontent @@ -155,7 +155,7 @@ ul.toolbarmenu li.separator_below #messagelist tr td.subject span.forwarded, #messagelist tr td.subject span.unreadchildren { - background-image: url(images/messageicons.gif); + background-image: url(images/messageicons.gif?v=2f0b.2222); } #messagelist tr td div.collapsed, @@ -180,5 +180,5 @@ body.iframe .boxtitle #abookactions a { - background-image: url("images/icons/groupactions.gif"); + background-image: url(images/icons/groupactions.gif?v=677d.496); } diff --git a/skins/classic/iehacks.css b/skins/classic/iehacks.css index fabf73db6..fc00732fa 100644 --- a/skins/classic/iehacks.css +++ b/skins/classic/iehacks.css @@ -90,13 +90,13 @@ body.iframe div.messageheaderbox #abooktoolbar a.buttonPas { filter: alpha(opacity=35); - background-image: url(images/abook_toolbar.gif); + background-image: url(images/abook_toolbar.gif?v=dfe4.5753); } #messagetoolbar a.buttonPas { filter: alpha(opacity=35); - background-image: url(images/mail_toolbar.gif); + background-image: url(images/mail_toolbar.gif?v=183d.12821); } #listcontrols a.buttonPas @@ -219,7 +219,7 @@ div.message-part div.pre div.draglayercopy { border-color: #00cc00; - background: url(images/messageactions.png) 0 -125px no-repeat #fff; + background: url(images/messageactions.png?v=e5b9.2211) 0 -125px no-repeat #fff; } html.ie8 .draglayercopy:before diff --git a/skins/classic/images/favicon.ico b/skins/classic/images/favicon.ico Binary files differindex 9ef2f3b9e..b3bd18c12 100644 --- a/skins/classic/images/favicon.ico +++ b/skins/classic/images/favicon.ico diff --git a/skins/classic/images/mail_toolbar.png b/skins/classic/images/mail_toolbar.png Binary files differindex 4a8431715..e68035da5 100644 --- a/skins/classic/images/mail_toolbar.png +++ b/skins/classic/images/mail_toolbar.png diff --git a/skins/classic/includes/messagetoolbar.html b/skins/classic/includes/messagetoolbar.html index 8f8efd291..bd14f490f 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('move', this.options[this.selectedIndex].value)" class="mboxlist" folder_filter="mail" /> +<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:endif /> </div> diff --git a/skins/classic/mail.css b/skins/classic/mail.css index b8cc9f351..89cf0b884 100644 --- a/skins/classic/mail.css +++ b/skins/classic/mail.css @@ -36,7 +36,7 @@ padding: 0; margin: 0 5px; overflow: hidden; - background: url(images/mail_toolbar.png) 0 0 no-repeat transparent; + background: url(images/mail_toolbar.png?v=1594.36649) 0 0 no-repeat transparent; opacity: 0.99; /* this is needed to make buttons appear correctly in Chrome */ } @@ -107,14 +107,6 @@ 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; } @@ -163,14 +155,6 @@ background-position: -416px -32px; } -#messagetoolbar a.download { - background-position: -480px 0; -} - -#messagetoolbar a.downloadSel { - background-position: -480px -32px; -} - #messagetoolbar select.mboxlist { position: relative; @@ -189,17 +173,15 @@ } #messagemenu li a.active:hover, -#attachmentmenu li a.active:hover, #markmessagemenu li a.active:hover { color: #fff; background-color: #c00; } -#messagemenu li a, -#attachmentmenu li a +#messagemenu li a { - background: url(images/messageactions.png) no-repeat 7px 0; + background: url(images/messageactions.png?v=e5b9.2211) no-repeat 7px 0; background-position: 7px 20px; } @@ -208,8 +190,7 @@ background-position: 7px 1px; } -#messagemenu li a.downloadlink, -#attachmentmenu li a.downloadlink +#messagemenu li a.downloadlink { background-position: 7px -17px; } @@ -219,8 +200,7 @@ background-position: 7px -35px; } -#messagemenu li a.openlink, -#attachmentmenu li a.openlink +#messagemenu li a.openlink { background-position: 7px -53px; } @@ -233,7 +213,7 @@ #markmessagemenu li a, #compose-attachments li a { - background: url(images/messageicons.png) no-repeat; + background: url(images/messageicons.png?v=9df0.3673) no-repeat; } #markmessagemenu li a.readlink @@ -300,38 +280,10 @@ #messagepartcontainer { position: absolute; - 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; + top: 80px; + left: 20px; + right: 20px; + bottom: 20px; } #mailcontframe @@ -373,7 +325,31 @@ height: 100%; min-height: 100%; /* Chrome 14 bug */ border: 1px solid #999999; - background-color: #fff; + 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; } @@ -408,7 +384,7 @@ display: block; position: relative; font-size: 11px; - background: url(images/icons/folders.png) 5px 0 no-repeat; + background: url(images/icons/folders.png?v=87af.4822) 5px 0 no-repeat; border-bottom: 1px solid #EBEBEB; } @@ -417,6 +393,32 @@ border-bottom: none; } +#mailboxlist li div +{ + position: absolute; + left: 8px !important; + left: -16px; + top: 1px; + width: 14px; + height: 16px; +} + +#mailboxlist li div.collapsed, +#mailboxlist li div.expanded +{ + cursor: pointer; +} + +#mailboxlist li div.collapsed +{ + background: url(images/icons/collapsed.png?v=45aa.97) bottom right no-repeat; +} + +#mailboxlist li div.expanded +{ + background: url(images/icons/expanded.png?v=f647.107) bottom right no-repeat; +} + #mailboxlist li.inbox { background-position: 5px -18px; @@ -534,7 +536,7 @@ margin-top: 4px; margin-right: 2px; overflow: hidden; - background: url(images/mail_footer.png) 0 0 no-repeat transparent; + background: url(images/mail_footer.png?v=819f.977) 0 0 no-repeat transparent; opacity: 0.99; /* this is needed to make buttons appear correctly in Chrome */ } @@ -631,50 +633,42 @@ body.messagelist background-color: #F9F9F9; } -table.messagelist +#messagelist { width: 100%; display: table; table-layout: fixed; - border-collapse: collapse; - border-spacing: 0; - z-index: 1; } -table.messagelist.fixedcopy -{ - z-index: 2; -} - -.messagelist thead tr td +#messagelist thead tr td { height: 20px; padding: 0 4px 0 2px; vertical-align: middle; border-bottom: 1px solid #999999; color: #333333; - background: url(images/listheader.gif) top left repeat-x #CCC; + background: url(images/listheader.gif?v=ab42.314) top left repeat-x #CCC; font-size: 11px; 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; + background: url(images/icons/sort.gif?v=92aa.144) 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; + background: url(images/icons/sort.gif?v=92aa.144) right -14px no-repeat; } -.messagelist thead tr td a +#messagelist thead tr td a { display: block; width: auto !important; @@ -683,19 +677,18 @@ table.messagelist.fixedcopy text-decoration: none; } -.messagelist thead tr td.size.sortedASC a, -.messagelist thead tr td.size.sortedDESC a +#messagelist thead tr td.size { - padding-right: 18px; + text-align: left; } -.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; @@ -709,7 +702,7 @@ table.messagelist.fixedcopy cursor: default; } -.messagelist tbody tr td a +#messagelist tbody tr td a { color: #000; text-decoration: none; @@ -717,267 +710,267 @@ table.messagelist.fixedcopy 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; height: 17px; width: 15px; - background: url(images/messageicons.png) center no-repeat; + background: url(images/messageicons.png?v=9df0.3673) 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; } @@ -1018,7 +1011,7 @@ td span.branch div.tree { height: 17px; width: 15px; - background: url(images/tree.gif) 0px 0px no-repeat; + background: url(images/tree.gif?v=9b73.92) 0px 0px no-repeat; } td span.branch div.l1 @@ -1126,7 +1119,7 @@ table.headers-table tr td.header span min-height: 16px; list-style-image: none; list-style-type: none; - background: url(images/icons/attachment.png) 4px 2px no-repeat #DFDFDF; + background: url(images/icons/attachment.png?v=08f7.518) 4px 2px no-repeat #DFDFDF; } #messageframe #attachment-list @@ -1168,16 +1161,6 @@ table.headers-table tr td.header span text-decoration: underline; } -#attachment-list li a.drop { - background: url(images/icons/down_small.gif) no-repeat center 6px; - width: 12px; - height: 7px; - cursor: pointer; - padding: 5px 0 0; - margin-left: 3px; - display: inline-block; -} - #messagebody { position:relative; @@ -1341,27 +1324,20 @@ div.message-htmlpart div.rcmBody text-decoration: underline; } -#messagelinks +#openextwinlink { position: absolute; top: 8px; right: 10px; - height: 16px; - text-align: right; -} - -#messageframe #messagelinks -{ - top: 2px; - right: 2px; + width: 15px; + height: 15px; + border: 0; } #compose-headers #openextwinlink { - position: absolute; - height: 15px; - top: 4px; - right: 2px; + top: 4px; + right: 2px; } #full-headers @@ -1387,12 +1363,12 @@ div.more-headers div.show-headers { - background: url(images/icons/down_small.gif) no-repeat center; + background: url(images/icons/down_small.gif?v=f368.105) no-repeat center; } div.hide-headers { - background: url(images/icons/up_small.gif) no-repeat center; + background: url(images/icons/up_small.gif?v=c56c.106) no-repeat center; } #headers-source @@ -1592,6 +1568,7 @@ input.from_address #compose-attachments ul li { height: 18px; + line-height: 16px; font-size: 11px; padding-left: 2px; padding-top: 2px; @@ -1629,19 +1606,16 @@ 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; @@ -1677,7 +1651,7 @@ input.from_address { display: block; font-size: 11px; - background: url(images/icons/folders.png) 5px -108px no-repeat; + background: url(images/icons/folders.png?v=87af.4822) 5px -108px no-repeat; border-bottom: 1px solid #EBEBEB; white-space: nowrap; } @@ -1719,14 +1693,6 @@ 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; @@ -1752,7 +1718,7 @@ input.from_address padding-left: 5px; padding-right: 5px; text-shadow: 1px 1px white; - background: url("images/icons/groupactions.png") no-repeat right -70px; + background: url(images/icons/groupactions.png?v=ace6.1092) no-repeat right -70px; } #abookactions a.disabled diff --git a/skins/classic/settings.css b/skins/classic/settings.css index 2433f5040..428e60884 100644 --- a/skins/classic/settings.css +++ b/skins/classic/settings.css @@ -85,8 +85,6 @@ { font-weight: bold; text-align: right; - width: 1%; - white-space: nowrap; } #bottomboxes @@ -180,7 +178,7 @@ div.readtext { min-height: 200px; padding-bottom: 2em; - background: url(images/watermark.gif) no-repeat center; + background: url(images/watermark.gif?v=4094.9288) no-repeat center; } #license .sysname @@ -255,15 +253,3 @@ 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 429dfcf5f..519acf773 100644 --- a/skins/classic/templates/about.html +++ b/skins/classic/templates/about.html @@ -7,15 +7,11 @@ </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" /> @@ -33,10 +29,7 @@ Some <a href="http://roundcube.net/license">exceptions</a> for skins & 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 429b83438..1008cbf76 100644 --- a/skins/classic/templates/addressbook.html +++ b/skins/classic/templates/addressbook.html @@ -17,7 +17,7 @@ </style> </head> -<body> +<body onload="rcube_init_mail_ui()"> <roundcube:include file="/includes/taskbar.html" /> <roundcube:include file="/includes/header.html" /> @@ -28,10 +28,7 @@ <roundcube:button command="delete" type="link" class="buttonPas delete" classAct="button delete" classSel="button deleteSel" title="deletecontact" content=" " /> <span class="separator"> </span> <roundcube:button command="import" type="link" class="buttonPas import" classAct="button import" classSel="button importSel" title="importcontacts" content=" " /> -<span class="dropbutton"> <roundcube:button command="export" type="link" class="buttonPas export" classAct="button export" classSel="button exportSel" title="exportvcards" content=" " /> -<span id="exportmenulink" onclick="rcmail_ui.show_popup('exportmenu');return false"></span> -</span> <roundcube:button command="advanced-search" type="link" class="buttonPas search" classAct="button search" classSel="button searchSel" title="advsearch" content=" " /> <roundcube:container name="toolbar" id="abooktoolbar" /> </div> @@ -42,13 +39,6 @@ <roundcube:button command="reset-search" id="searchreset" image="/images/icons/reset.gif" title="resetsearch" width="13" height="13" /> </div> -<div id="exportmenu" class="popupmenu"> - <ul> - <li><roundcube:button command="export" label="exportall" prop="sub" classAct="exportalllink active" class="exportalllink" /></li> - <li><roundcube:button command="export-selected" label="exportsel" prop="sub" classAct="exportsellink active" class="exportsellink" /></li> - </ul> -</div> - <div id="searchmenu" class="popupmenu"> <ul class="toolbarmenu"> <li><label><input type="checkbox" name="s_mods[]" value="name" id="s_mod_name" onclick="rcmail_ui.set_searchmod(this)" /> <span><roundcube:label name="name" /></span></label></li> @@ -64,7 +54,8 @@ <div id="directorylistbox"> <div id="directorylist-title" class="boxtitle"><roundcube:label name="groups" /></div> <div id="directorylist-content" class="boxlistcontent"> - <roundcube:object name="directorylist" id="directorylist" class="treelist" /> + <roundcube:object name="directorylist" id="directorylist" /> + <roundcube:object name="groupslist" id="contactgroupslist" /> </div> <div id="directorylist-footer" class="boxfooter"> <roundcube:button command="group-create" type="link" title="newcontactgroup" class="buttonPas addgroup" classAct="button addgroup" content=" " /> @@ -75,7 +66,7 @@ <div id="addressscreen"> <div id="addresslist"> -<roundcube:object name="addresslisttitle" label="contacts" tag="div" class="boxtitle" /> +<div class="boxtitle"><roundcube:label name="contacts" /></div> <div class="boxlistcontent"> <roundcube:object name="addresslist" id="contacts-table" class="records-table" cellspacing="0" summary="Contacts list" noheader="true" /> </div> @@ -116,16 +107,5 @@ </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 5e259e11c..b6dab2c4c 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"> +<body class="extwin" onload="rcube_init_mail_ui()"> <roundcube:object name="message" id="message" /> <roundcube:else /> -<body> +<body onload="rcube_init_mail_ui()"> <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> -<roundcube:form name="form" method="post"> +<form name="form" action="./" method="post"> <div id="mainscreen"> @@ -178,16 +178,23 @@ <tr> <td><label for="rcmcomposereceipt"><roundcube:label name="returnreceipt" />:</label></td> <td><roundcube:object name="receiptCheckBox" form="form" id="rcmcomposereceipt" /></td> - </tr><tr> + </tr> + <roundcube:if condition="config:smtp_server != ''" /> + <tr> <td><label for="rcmcomposedsn"><roundcube:label name="dsn" />:</label></td> <td><roundcube:object name="dsnCheckBox" form="form" id="rcmcomposedsn" /></td> - </tr><tr> + </tr> + <roundcube:endif /> + <tr> <td><label for="rcmcomposepriority"><roundcube:label name="priority" />:</label></td> <td><roundcube:object name="prioritySelector" form="form" id="rcmcomposepriority" /></td> - </tr><roundcube:if condition="!config:no_save_sent_messages" /><tr> + </tr> + <roundcube:if condition="!config:no_save_sent_messages" /> + <tr> <td><label><roundcube:label name="savesentmessagein" />:</label></td> <td><roundcube:object name="storetarget" maxlength="30" /></td> - </tr><roundcube:endif /> + </tr> + <roundcube:endif /> </table> </div> @@ -197,9 +204,5 @@ <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 8be112b49..d74a78b27 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" placeholderGroup="/images/contactgroup.png" /></div> + <div id="contactphoto"><roundcube:object name="contactphoto" id="contactpic" placeholder="/images/contactpic.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 bad6daf28..05cc8aa82 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"> +<body class="iframe" onload="rcube_init_mail_ui()"> <div id="contact-title" class="boxtitle"><roundcube:label name="addcontact" /></div> <div id="contact-details" class="boxcontent"> -<roundcube:form name="editform" method="post"> +<form name="editform" method="post" action="./"> <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,10 +35,7 @@ <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'); -rcube_init_mail_ui(); -</script> +<script type="text/javascript">rcube_init_tabs('contacttabs')</script> </body> </html> diff --git a/skins/classic/templates/contactedit.html b/skins/classic/templates/contactedit.html index c51cbf296..db8599ac6 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"> +<body class="iframe" onload="rcube_init_mail_ui()"> <div id="contact-title" class="boxtitle"><roundcube:label name="editcontact" /></div> <div id="contact-details" class="boxcontent"> -<roundcube:form name="editform" method="post"> +<form name="editform" method="post" action="./"> <roundcube:if condition="strlen(env:sourcename)" /> <div id="sourcename"><roundcube:label name="addressbook" />: <roundcube:var name="env:sourcename" /></div> <roundcube:endif /> @@ -35,10 +35,7 @@ <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'); -rcube_init_mail_ui(); -</script> +<script type="text/javascript">rcube_init_tabs('contacttabs')</script> </body> </html> diff --git a/skins/classic/templates/folders.html b/skins/classic/templates/folders.html index f86be092b..1ae8809ec 100644 --- a/skins/classic/templates/folders.html +++ b/skins/classic/templates/folders.html @@ -12,7 +12,7 @@ } </style> </head> -<body> +<body onload="rcube_init_mail_ui()"> <roundcube:include file="/includes/taskbar.html" /> <roundcube:include file="/includes/header.html" /> @@ -58,9 +58,5 @@ </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 2dacd48ff..cca2bd934 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"> -<roundcube:form name="form" method="post"> +<form name="form" action="./" 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 10aebc96d..75a112ff5 100644 --- a/skins/classic/templates/mail.html +++ b/skins/classic/templates/mail.html @@ -18,7 +18,7 @@ } </style> </head> -<body> +<body onload="rcube_init_mail_ui()"> <roundcube:include file="/includes/taskbar.html" /> <roundcube:include file="/includes/header.html" /> @@ -28,7 +28,7 @@ <div id="mailboxlist-container"> <div id="mailboxlist-title" class="boxtitle"><roundcube:label name="mailboxlist" /></div> <div id="mailboxlist-content" class="boxlistcontent"> -<roundcube:object name="mailboxlist" id="mailboxlist" class="treelist" folder_filter="mail" /> +<roundcube:object name="mailboxlist" id="mailboxlist" folder_filter="mail" /> </div> <div id="mailboxlist-footer" class="boxfooter"> <roundcube:button name="mailboxmenulink" id="mailboxmenulink" type="link" title="folderactions" class="button groupactions" onclick="rcmail_ui.show_popup('mailboxmenu');return false" content=" " /> @@ -55,7 +55,6 @@ <div id="messagelistcontainer" class="boxlistcontent" style="top:0"> <roundcube:object name="messages" id="messagelist" - class="messagelist fixedheader" cellspacing="0" columns="" summary="Message list" @@ -131,9 +130,9 @@ <roundcube:button command="reset-search" id="searchreset" image="/images/icons/reset.gif" title="resetsearch" width="13" height="13" /> </div> -<div id="dragmenu" class="popupmenu"> +<div id="dragmessagemenu" class="popupmenu"> <ul> - <li><roundcube:button command="move" onclick="return rcmail.drag_menu_action('move')" label="move" classAct="active" /></li> + <li><roundcube:button command="moveto" onclick="return rcmail.drag_menu_action('moveto')" label="move" classAct="active" /></li> <li><roundcube:button command="copy" onclick="return rcmail.drag_menu_action('copy')" label="copy" classAct="active" /></li> </ul> </div> @@ -141,8 +140,7 @@ <div id="mailboxoptionsmenu" class="popupmenu"> <ul> <li><roundcube:button command="expunge" type="link" label="compact" 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 class="separator_below"><roundcube:button command="purge" type="link" label="empty" classAct="active" /></li> <li><roundcube:button command="folders" task="settings" type="link" label="managefolders" classAct="active" /></li> <roundcube:container name="mailboxoptions" id="mailboxoptionsmenu" /> </ul> @@ -206,11 +204,5 @@ </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 757c0a635..4a4068dbe 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"> +<body class="extwin" onload="rcube_init_mail_ui()"> <roundcube:object name="message" id="message" /> <roundcube:else /> -<body> +<body onload="rcube_init_mail_ui()"> <roundcube:include file="/includes/taskbar.html" /> <roundcube:include file="/includes/header.html" /> @@ -30,7 +30,7 @@ <div id="mailboxlist-container"> <div id="mailboxlist-title" class="boxtitle"><roundcube:label name="mailboxlist" /></div> <div class="boxlistcontent"> - <roundcube:object name="mailboxlist" id="mailboxlist" class="treelist" maxlength="25" /> + <roundcube:object name="mailboxlist" id="mailboxlist" maxlength="25" /> </div> <div class="boxfooter"></div> </div> @@ -39,17 +39,9 @@ <div id="messageframe"> <div class="boxlistcontent" style="top:0; overflow-x:auto"> - <div id="messagelinks"> - <roundcube:if condition="env:optional_format=='text'" /> - <roundcube:button command="change-format" prop="text" image="/images/icons/text.png" width="15" height="15" title="changeformattext" id="changeformattext" /> - <roundcube:endif /> - <roundcube:if condition="env:optional_format=='html'" /> - <roundcube:button command="change-format" prop="html" image="/images/icons/html.png" width="15" height="15" title="changeformathtml" id="changeformathtml" /> - <roundcube:endif /> - </div> <roundcube:object name="messageHeaders" class="headers-table" cellspacing="0" cellpadding="2" addicon="/images/icons/silhouette.png" summary="Message headers" /> <roundcube:object name="messageFullHeaders" id="full-headers" /> -<roundcube:object name="messageAttachments" id="attachment-list" /> +<roundcube:object name="messageAttachments" id="attachment-list" maxlength="50" /> <roundcube:object name="messageObjects" id="message-objects" /> <roundcube:object name="messageBody" id="messagebody" /> </div> @@ -73,17 +65,5 @@ </script> <roundcube:endif /> -<div id="attachmentmenu" class="popupmenu"> - <ul class="toolbarmenu"> - <li><roundcube:button command="open-attachment" id="attachmenuopen" type="link" label="open" class="openlink" classAct="openlink active" innerclass="openlink" /></li> - <li><roundcube:button command="download-attachment" id="attachmenudownload" type="link" label="download" class="downloadlink" classAct="downloadlink active" innerclass="downloadlink" /></li> - <roundcube:container name="attachmentmenu" id="attachmentmenu" /> - </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 eb8c7e058..918e3092a 100644 --- a/skins/classic/templates/messageerror.html +++ b/skins/classic/templates/messageerror.html @@ -27,7 +27,7 @@ </style> </head> -<body> +<body onload="rcube_init_mail_ui()"> <roundcube:include file="/includes/taskbar.html" /> <roundcube:include file="/includes/header.html" /> @@ -42,7 +42,7 @@ <div id="mailboxlist-container"> <div class="boxtitle"><roundcube:label name="mailboxlist" /></div> <div class="boxlistcontent"> - <roundcube:object name="mailboxlist" id="mailboxlist" class="treelist" folder_filter="mail" /> + <roundcube:object name="mailboxlist" id="mailboxlist" folder_filter="mail" /> </div> <div class="boxfooter"></div> </div> @@ -61,10 +61,6 @@ 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 9f2215679..ce7dbe2e1 100644 --- a/skins/classic/templates/messagepart.html +++ b/skins/classic/templates/messagepart.html @@ -3,39 +3,23 @@ <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" /> -<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" /> +<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> +</div> + -<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 id="messagepartcontainer"> +<roundcube:object name="messagePartFrame" id="messagepartframe" width="100%" height="100%" /> </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 b42a06342..cc6fafab1 100644 --- a/skins/classic/templates/messagepreview.html +++ b/skins/classic/templates/messagepreview.html @@ -3,40 +3,18 @@ <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> </head> <body class="iframe"> <div class="messageheaderbox"> - <div id="messagelinks"> - <roundcube:if condition="env:optional_format=='text'" /> - <roundcube:button command="change-format" prop="text" image="/images/icons/text.png" width="15" height="15" title="changeformattext" id="changeformattext" /> - <roundcube:endif /> - <roundcube:if condition="env:optional_format=='html'" /> - <roundcube:button command="change-format" prop="html" image="/images/icons/html.png" width="15" height="15" title="changeformathtml" id="changeformathtml" /> - <roundcube:endif /> - <roundcube:button command="extwin" image="/images/icons/extwin.png" width="15" height="15" title="openinextwin" id="openextwinlink" /> - </div> +<roundcube:button command="extwin" image="/images/icons/extwin.png" width="15" height="15" title="openinextwin" id="openextwinlink" /> <roundcube:object name="messageHeaders" class="headers-table" cellspacing="0" cellpadding="2" addicon="/images/icons/silhouette.png" summary="Message headers" /> <roundcube:object name="messageFullHeaders" id="full-headers" /> -<roundcube:object name="messageAttachments" id="attachment-list" /> +<roundcube:object name="messageAttachments" id="attachment-list" maxlength="50" /> </div> <roundcube:object name="messageObjects" id="message-objects" /> <roundcube:object name="messageBody" id="messagebody" /> -<div id="attachmentmenu" class="popupmenu"> - <ul class="toolbarmenu"> - <li><roundcube:button command="open-attachment" id="attachmenuopen" type="link" label="open" class="openlink" classAct="openlink active" innerclass="openlink" /></li> - <li><roundcube:button command="download-attachment" id="attachmenudownload" type="link" label="download" class="downloadlink" classAct="downloadlink active" innerclass="downloadlink" /></li> - <roundcube:container name="attachmentmenu" id="attachmentmenu" /> - </ul> -</div> - -<script type="text/javascript"> -rcube_init_mail_ui(); -</script> - </body> </html> diff --git a/skins/classic/templates/responseedit.html b/skins/classic/templates/responseedit.html new file mode 100644 index 000000000..67ba35bac --- /dev/null +++ b/skins/classic/templates/responseedit.html @@ -0,0 +1,24 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<title><roundcube:object name="pagetitle" /></title> +<roundcube:include file="/includes/links.html" /> +<script type="text/javascript" src="/functions.js"></script> + +</head> +<body class="iframe"> + +<div id="prefs-title" class="boxtitle"><roundcube:object name="steptitle" /></div> + +<div id="response-details" class="boxcontent"> + <roundcube:object name="responseform" class="propform" size="60" textareacols="60" textarearows="18" /> + + <div id="formfooter"> + <div class="footerindent"> + <roundcube:button command="save" type="input" class="button mainaction" label="save" condition="!env:readonly" /> + </div> + </div> +</div> + +</body> +</html> diff --git a/skins/classic/templates/responses.html b/skins/classic/templates/responses.html new file mode 100644 index 000000000..2459827b0 --- /dev/null +++ b/skins/classic/templates/responses.html @@ -0,0 +1,46 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<title><roundcube:object name="pagetitle" /></title> +<roundcube:include file="/includes/links.html" /> +<script type="text/javascript" src="/functions.js"></script> +<script type="text/javascript" src="/splitter.js"></script> +<style type="text/css"> +#identities-list { width: <roundcube:exp expression="!empty(cookie:identviewsplitter) ? cookie:identviewsplitter-5 : 295" />px; } +#identity-box { left: <roundcube:exp expression="!empty(cookie:identviewsplitter) ? cookie:identviewsplitter+5 : 305" />px; + <roundcube:exp expression="browser:ie ? ('width:expression((parseInt(this.parentNode.offsetWidth)-'.(!empty(cookie:identviewsplitter) ? cookie:identviewsplitter+5 : 305).')+\\'px\\');') : ''" /> +} +</style> + +</head> +<body> + +<roundcube:include file="/includes/taskbar.html" /> +<roundcube:include file="/includes/header.html" /> +<roundcube:include file="/includes/settingstabs.html" /> + +<div id="mainscreen"> + +<div id="identities-list"> +<div id="identity-title" class="boxtitle"><roundcube:label name="responses" /></div> +<div class="boxlistcontent"> +<roundcube:object name="responsesList" id="identities-table" class="records-table" cellspacing="0" summary="Responses list" noheader="true" editIcon="" /> +</div> +<div class="boxfooter"> +<roundcube:button command="add" type="link" title="newidentity" class="buttonPas addgroup" classAct="button addgroup" content=" " condition="config:identities_level:0<2" /><roundcube:button command="delete" type="link" title="delete" class="buttonPas delgroup" classAct="button delgroup" content=" " condition="config:identities_level:0<2" /> +</div> +</div> + +<script type="text/javascript"> + var identviewsplit = new rcube_splitter({id:'identviewsplitter', p1: 'identities-list', p2: 'identity-box', orientation: 'v', relative: true, start: 300 }); + rcmail.add_onload('identviewsplit.init()'); +</script> + +<div id="identity-box"> + <roundcube:object name="responseframe" id="identity-frame" width="100%" height="100%" frameborder="0" src="/watermark.html" /> +</div> + +</div> + +</body> +</html> diff --git a/skins/larry/addressbook.css b/skins/larry/addressbook.css index 6bf9426c4..5befed9d7 100644 --- a/skins/larry/addressbook.css +++ b/skins/larry/addressbook.css @@ -67,7 +67,7 @@ #directorylist li a, #contacts-table .contact td.name { - background-image: url(images/listicons.png); + background-image: url(images/listicons.png?v=bd98.25486); background-position: -100px 0; background-repeat: no-repeat; overflow: hidden; @@ -75,27 +75,18 @@ text-overflow: ellipsis; } +#contacts-table .contact.readonly td { + font-style: italic; +} + #directorylist li.addressbook a { background-position: 6px -766px; } -#directorylist li.addressbook.selected > a { +#directorylist li.addressbook.selected a { background-position: 6px -791px; } -#directorylist li.addressbook ul li:last-child { - border-bottom: 0; -} - -#directorylist li.addressbook ul.groups { - margin: 0; - padding: 0; -} - -#directorylist li.addressbook ul.groups li { - width: 100%; -} - #directorylist li.contactgroup a { padding-left: 62px; background-position: 32px -1555px; @@ -121,34 +112,6 @@ margin-left: 8px; } -#directorylist li.addressbook div.collapsed, -#directorylist li.addressbook div.expanded { - top: 15px; - left: 20px; -} - -#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) -2px -1180px no-repeat; -} - #contacts-table .contact td.name { background-position: 6px -1603px; } @@ -159,29 +122,6 @@ font-weight: bold; } -#contacts-table .group td.name { - background-position: 6px -1555px; -} - -#contacts-table .group.selected td.name, -#contacts-table .group.unfocused td.name { - background-position: 6px -1579px; - font-weight: bold; -} - -#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; @@ -219,12 +159,12 @@ } #contactpic img { - max-width: 112px; + width: 112px; visibility: inherit; } #contactpic.droptarget { - background-image: url(images/filedrop.png); + background-image: url(images/filedrop.png?v=deab.605); background-position: center; background-repeat: no-repeat; } @@ -375,15 +315,5 @@ a.deletebutton { height: 18px; text-decoration: none; text-indent: -5000px; - background: url(images/buttons.png) -7px -377px no-repeat; -} - -#import-box { - position: absolute; - bottom: 28px; - top: 34px; - left: 0; - right: 0; - overflow: auto; - padding: 10px; + background: url(images/buttons.png?v=abf1.36693) -7px -377px no-repeat; } diff --git a/skins/larry/embed.css b/skins/larry/embed.css index 2c8ba39dc..6b8a65f5d 100644 --- a/skins/larry/embed.css +++ b/skins/larry/embed.css @@ -15,7 +15,7 @@ font-weight: bold; color: #996600; border: 1px solid #ffdf0e; - background: url("images/messages.png") no-repeat scroll 5px -83px #fef893; + background: url(images/messages.png?v=01ee.1736) no-repeat scroll 5px -83px #fef893; padding: 6px 12px 4px 30px; margin-bottom: 0.8em; } diff --git a/skins/larry/ie7hacks.css b/skins/larry/ie7hacks.css index fc4713361..6d7af4787 100644 --- a/skins/larry/ie7hacks.css +++ b/skins/larry/ie7hacks.css @@ -41,7 +41,6 @@ a.deletebutton, .boxfooter .listbutton .inner, .attachmentslist li a.delete, .attachmentslist li a.cancelupload, -#contacts-table td.action a, .previewheader .iconlink, .minimal #taskbar .button-inner { /* workaround for text-indent which also offsets the background image */ diff --git a/skins/larry/iehacks.css b/skins/larry/iehacks.css index 960ce7648..9996824b0 100644 --- a/skins/larry/iehacks.css +++ b/skins/larry/iehacks.css @@ -29,8 +29,7 @@ input.button.mainaction:active { filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2a2e31', endColorstr='#505050', GradientType=0); } -a.button, -.buttongroup { +a.button { filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9', endColorstr='#e6e6e6', GradientType=0); } @@ -48,10 +47,6 @@ input.button:active { filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#bababa', endColorstr='#d8d8d8', GradientType=0); } -.buttongroup a.button.selected { - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#909090', endColorstr='#858585', GradientType=0); -} - #message.statusbar { filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eaeaea', endColorstr='#c8c8c8', GradientType=0); } @@ -123,7 +118,7 @@ ul.toolbarmenu li a.active:hover, .pagenav a.button.disabled span.inner, .boxfooter .listbutton.disabled .inner, .dropbutton a.button.disabled + .dropbuttontip { - background-image: url(images/buttons.gif); + background-image: url(images/buttons.gif?v=aab8.13054); } /*** addressbook.css ***/ diff --git a/skins/larry/images/buttons.gif b/skins/larry/images/buttons.gif Binary files differindex 8a4a78ee4..d8a33d6b2 100644 --- a/skins/larry/images/buttons.gif +++ b/skins/larry/images/buttons.gif diff --git a/skins/larry/images/buttons.png b/skins/larry/images/buttons.png Binary files differindex 9f8f44536..4438d9cbc 100644 --- a/skins/larry/images/buttons.png +++ b/skins/larry/images/buttons.png diff --git a/skins/larry/images/favicon.ico b/skins/larry/images/favicon.ico Binary files differindex 9ef2f3b9e..b3bd18c12 100644 --- a/skins/larry/images/favicon.ico +++ b/skins/larry/images/favicon.ico diff --git a/skins/larry/images/listicons.png b/skins/larry/images/listicons.png Binary files differindex e4ffef660..f4505d4fa 100644 --- a/skins/larry/images/listicons.png +++ b/skins/larry/images/listicons.png diff --git a/skins/larry/includes/footer.html b/skins/larry/includes/footer.html index a4fa69296..ee93fcf57 100644 --- a/skins/larry/includes/footer.html +++ b/skins/larry/includes/footer.html @@ -8,16 +8,4 @@ $(document).ready(function(){ }); </script> -<!--[if lte IE 8]> -<script type="text/javascript"> - -// fix missing :last-child selectors -$(document).ready(function(){ - $('ul.treelist ul').each(function(i,ul){ - $('li:last-child', ul).css('border-bottom', 0); - }); -}); - -</script> -<![endif]--> diff --git a/skins/larry/includes/header.html b/skins/larry/includes/header.html index 5a934d89b..f2efb8e06 100644 --- a/skins/larry/includes/header.html +++ b/skins/larry/includes/header.html @@ -2,7 +2,7 @@ <div id="topline"> <div class="topleft"> <roundcube:container name="topline-left" id="topline-left" /> - <roundcube:button name="about" type="link" label="about" class="about-link" onclick="UI.show_about(this);return false" condition="!env:extwin" /> + <roundcube:button name="about" type="link" label="about" class="about-link" onclick="UI.show_about(this);return false" /> <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 /> @@ -14,7 +14,7 @@ <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:button command="close" label="close" class="closelink" /> <roundcube:endif /> </div> </div> @@ -29,9 +29,11 @@ <roundcube:button command="logout" label="logout" class="button-logout" classSel="button-logout" innerClass="button-inner" /> <span class="minmodetoggle"></span> </div> - <roundcube:object name="logo" src="/images/roundcube_logo.png" id="toplogo" alt="Logo" onclick="rcmail.command('switch-task','mail');return false;" /> + <roundcube:object name="logo" src="/images/roundcube_logo.png" id="toplogo" border="0" alt="Logo" onclick="rcmail.command('switch-task','mail');return false;" /> </div> <roundcube:endif /> <br style="clear:both" /> </div> + + diff --git a/skins/larry/mail.css b/skins/larry/mail.css index b65b08112..c3495276e 100644 --- a/skins/larry/mail.css +++ b/skins/larry/mail.css @@ -2,7 +2,7 @@ * Roundcube webmail styles for the Email section * * Copyright (c) 2012, The Roundcube Dev Team - * Screendesign by FLINT / Büro für Gestaltung, bueroflint.com + * 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 @@ -54,10 +54,6 @@ border-top: none; } -#composeview-right #mailview-bottom { - border-radius: 0 0 4px 4px; -} - #folderlist-header { width: 100%; height: 12px; @@ -79,12 +75,6 @@ overflow: auto; } -/* Real browsers accept this (not IE) */ -html>/**/body #messagelist { - overflow: auto; - overflow-x: hidden; -} - #messagelistfooter { position: absolute; bottom: 0; @@ -151,7 +141,7 @@ a.iconbutton.threadmode.selected { background-position: 6px 2px; } -#mailboxlist > li:first-child { +#mailboxlist li:first-child { border-radius: 4px 4px 0 0; border-top: 0; } @@ -161,12 +151,12 @@ a.iconbutton.threadmode.selected { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; - background-image: url(images/listicons.png); + background-image: url(images/listicons.png?v=bd98.25486); background-repeat: no-repeat; background-position: 6px 3px; } -#mailboxlist li.mailbox.unread > a { +#mailboxlist li.mailbox.unread a { padding-right: 36px; } @@ -222,46 +212,6 @@ a.iconbutton.threadmode.selected { background-position: 6px -1723px; } -#mailboxlist li.mailbox ul li.drafts > a { - background-position: 23px -238px; -} - -#mailboxlist li.mailbox ul li.drafts.selected > a { - background-position: 23px -262px; -} - -#mailboxlist li.mailbox ul li.sent > a { - background-position: 23px -286px; -} - -#mailboxlist li.mailbox ul li.sent.selected > a { - background-position: 23px -310px; -} - -#mailboxlist li.mailbox ul li.junk > a { - background-position: 23px -334px; -} - -#mailboxlist li.mailbox ul li.junk.selected > a { - background-position: 23px -358px; -} - -#mailboxlist li.mailbox ul li.trash > a { - background-position: 23px -382px; -} - -#mailboxlist li.mailbox ul li.trash.selected > a { - background-position: 23px -406px; -} - -#mailboxlist li.mailbox ul li.archive > a { - background-position: 23px -1699px; -} - -#mailboxlist li.mailbox ul li.archive.selected > a { - background-position: 23px -1723px; -} - #mailboxlist li.unread { font-weight: bold; } @@ -274,17 +224,6 @@ a.iconbutton.threadmode.selected { color: #017cb4; } -#mailboxlist li.mailbox div.treetoggle { - top: 13px; - left: 19px; -} - -#mailboxlist li.mailbox ul li:last-child { - border-bottom: 0; -} - -/* nested mailboxes */ - #mailboxlist li.mailbox ul { list-style: none; margin: 0; @@ -292,57 +231,50 @@ a.iconbutton.threadmode.selected { border-top: 1px solid #bbd3da; } +#mailboxlist li.mailbox ul li { + padding-left: 26px; +} + #mailboxlist li.mailbox ul li a { - padding-left: 52px; /* 36 + 1 x 16 */ - background-position: 22px -93px; /* 6 + 1 x 16 */ + background-position: 6px -93px; } + #mailboxlist li.mailbox ul li.selected > a { - background-position: 22px -117px; -} -#mailboxlist li.mailbox ul li div.treetoggle { - left: 33px; - top: 14px; + background-position: 6px -117px; } -#mailboxlist li.mailbox ul ul li.mailbox a { - padding-left: 68px; /* 2x */ - background-position: 38px -93px; -} -#mailboxlist li.mailbox ul ul li.selected > a { - background-position: 38px -117px; -} -#mailboxlist li.mailbox ul ul li div.treetoggle { - left: 48px; +#mailboxlist li.mailbox ul li:last-child { + border-bottom: 0; } -#mailboxlist li.mailbox ul ul ul li.mailbox a { - padding-left: 84px; /* 3x */ - background-position: 54px -93px; -} -#mailboxlist li.mailbox ul ul ul li.selected > a { - background-position: 54px -117px; -} -#mailboxlist li.mailbox ul ul ul li div.treetoggle { - left: 64px; +#mailboxlist li.mailbox div.collapsed, +#mailboxlist li.mailbox div.expanded { + position: absolute; + top: 13px; + left: 19px; + width: 13px; + height: 13px; + background: url(images/listicons.png?v=bd98.25486) -3px -144px no-repeat; + cursor: pointer; } -#mailboxlist li.mailbox ul ul ul ul li.mailbox a { - padding-left: 100px; /* 4x */ - background-position: 70px -93px; -} -#mailboxlist li.mailbox ul ul ul ul li.selected > a { - background-position: 70px -117px; +#mailboxlist li.mailbox div.expanded { + background-position: -3px -168px; } -#mailboxlist li.mailbox ul ul ul ul li div.treetoggle { - left: 80px; + +#mailboxlist li.mailbox.selected > div.collapsed { + background-position: -23px -144px; } -/* indent folders on levels > 4 */ -#mailboxlist li.mailbox ul ul ul ul ul li { - padding-left: 16px; +#mailboxlist li.mailbox.selected > div.expanded { + background-position: -23px -168px; } -#mailboxlist li.mailbox ul ul ul ul ul li div.treetoggle { - left: 96px; + + +#mailboxlist li.mailbox ul li div.collapsed, +#mailboxlist li.mailbox ul li div.expanded { + left: 43px; + top: 14px; } #mailboxlist li.mailbox .unreadcount { @@ -434,6 +366,7 @@ a.iconbutton.threadmode.selected { position: absolute; right: 0; top: 0; + width: 400px; } #mailpreviewtoggle { @@ -443,7 +376,7 @@ a.iconbutton.threadmode.selected { right: 4px; width: 20px; height: 18px; - background: url(images/buttons.png) -3px -458px no-repeat; + background: url(images/buttons.png?v=abf1.36693) -3px -458px no-repeat; } #mailpreviewtoggle.enabled { @@ -453,291 +386,278 @@ a.iconbutton.threadmode.selected { /*** message list ***/ -/* this is necessary to make FF3 display borders */ -body:-moz-last-node #messagelist { - border-collapse: separate; -} - -table.messagelist { - z-index: 1; -} - -table.messagelist.fixedcopy { - z-index: 2; -} - -.messagelist thead td:first-child { +#messagelist thead td:first-child { border-radius: 4px 0 0 0; /* for Chrome */ } -.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: 20px; padding: 2px 3px; } -.webkit .messagelist tr td.attachment, -.webkit .messagelist tr td.threads, -.webkit .messagelist tr td.status, -.webkit .messagelist tr td.flag, -.webkit .messagelist tr td.priority { +.webkit #messagelist tr td.attachment, +.webkit #messagelist tr td.threads, +.webkit #messagelist tr td.status, +.webkit #messagelist tr td.flag, +.webkit #messagelist tr td.priority { width: 26px; } -.messagelist tr td.threads { +#messagelist tr td.threads { width: 26px; } -.webkit .messagelist tr td.threads { +.webkit #messagelist tr td.threads { width: 30px; } -.messagelist tr td.threads, -.messagelist tr td.threads + td { +#messagelist tr td.threads, +#messagelist tr td.threads + td { border-left: 0; } -.messagelist tr td.size { +#messagelist tr td.size { width: 60px; text-align: right; } -.messagelist thead tr td.size { +#messagelist thead tr td.size { text-align: left; } -.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: 200px; } -.messagelist tr td.date { - width: 135px; +#messagelist tr td.date { + width: 125px; } -.messagelist tr.message { +#messagelist tr.message { /* background-color: #fff; */ } -.messagelist tr.thread.expanded td { +#messagelist tr.thread.expanded td { background-color: #ededed; } -.messagelist tr.unread { +#messagelist tr.unread { font-weight: bold; /* background-color: #fff; */ } -.messagelist tr.flagged td, -.messagelist tr.flagged td a { +#messagelist tr.flagged td, +#messagelist tr.flagged td a { color: #f30; } -.messagelist thead tr td.sortedASC a, -.messagelist thead tr td.sortedDESC a { +#messagelist thead tr td.sortedASC a, +#messagelist thead tr td.sortedDESC a { color: #004458; text-decoration: underline; - background: url(images/listicons.png) right -912px no-repeat; + background: url(images/listicons.png?v=bd98.25486) right -912px no-repeat; } -.messagelist thead tr td.sortedASC a { +#messagelist thead tr td.sortedASC a { background-position: right -944px; } -.messagelist td img { +#messagelist td img { vertical-align: middle; display: inline-block; } -.messagelist tbody td a { +#messagelist tbody td a { color: #333; text-decoration: none; white-space: nowrap; cursor: default; } -.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: 20px; } -.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; height: 18px; width: 20px; padding: 0; - background: url(images/listicons.png) -100px 0 no-repeat; + background: url(images/listicons.png?v=bd98.25486) -100px 0 no-repeat; } -.messagelist tbody tr td.attachment span.attachment { +#messagelist tbody tr td.attachment span.attachment { background-position: 0 -996px; } -.messagelist thead tr td.attachment span.attachment { +#messagelist thead tr td.attachment span.attachment { background-position: -24px -997px; } -.messagelist tbody tr td.attachment span.report { +#messagelist tbody tr td.attachment span.report { background-position: -24px -1116px; } -.messagelist tr td.priority span.prio5 { +#messagelist tr td.priority span.prio5 { background-position: 0 -1905px; } -.messagelist tr td.priority span.prio4 { +#messagelist tr td.priority span.prio4 { background-position: 0 -1885px; } -.messagelist tr td.priority span.prio2 { +#messagelist tr td.priority span.prio2 { background-position: 0 -1865px; } -.messagelist tr td.priority span.prio1 { +#messagelist tr td.priority span.prio1 { background-position: 0 -1845px; } -.messagelist tbody tr td.flag span.flagged { +#messagelist tbody tr td.flag span.flagged { background-position: 0 -1036px; } -.messagelist thead tr td.flag span.flagged { +#messagelist thead tr td.flag span.flagged { background-position: -24px -1036px; } -.messagelist tr td.status span.msgicon:hover { +#messagelist tr td.status span.msgicon:hover { background-position: -23px -1056px; } -.messagelist tr td.flag span.unflagged:hover { +#messagelist tr td.flag span.unflagged:hover { background-position: -23px -1076px; } -.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 -1056px; margin: 0 1px 0 0; width: 24px; } -.messagelist tr td.subject span.replied { +#messagelist tr td.subject span.replied { background-position: 0 -1076px; } -.messagelist tr td.subject span.forwarded { +#messagelist tr td.subject span.forwarded { background-position: 0 -1096px; } -.messagelist tr td.subject span.replied.forwarded { +#messagelist tr td.subject span.replied.forwarded { background-position: 0 -1116px; } -.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 1056px; /* 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.status span.deleted:hover, -.messagelist tr td.subject span.deleted { +#messagelist tr td.status span.deleted, +#messagelist tr td.status span.deleted:hover, +#messagelist tr td.subject span.deleted { background-position: -22px -1096px; } -.messagelist tr td.status span.status, -.messagelist tr td.status span.unread, -.messagelist tr td.subject span.unread, -.messagelist tr td.status span.unread:hover { +#messagelist tr td.status span.status, +#messagelist tr td.status span.unread, +#messagelist tr td.subject span.unread, +#messagelist tr td.status span.unread:hover { background-position: 0 -1016px; } -.messagelist thead tr td.status span.status { +#messagelist thead tr td.status span.status { background-position: -24px -1016px; } -.messagelist tr td div.collapsed { +#messagelist tr td div.collapsed { background-position: 0 -1137px; cursor: pointer; } -.messagelist tr td div.expanded { +#messagelist tr td div.expanded { background-position: 0 -1157px; cursor: pointer; } -.messagelist tr td.threads div.listmenu { +#messagelist tr td.threads div.listmenu { background-position: 0 -976px; cursor: pointer; width: 26px; } -.messagelist thead tr td.subject, -.messagelist tbody tr td.subject { +#messagelist thead tr td.subject, +#messagelist tbody tr td.subject { width: 99%; white-space: nowrap; } -.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; } /**** tree indicators ****/ -.messagelist tbody tr td span.branch div { +#messagelist tbody tr td span.branch div { display: inline-block; } -.messagelist tbody tr td span.branch div.tree { +#messagelist tbody tr td span.branch div.tree { width: 15px; } @@ -771,6 +691,7 @@ table.messagelist.fixedcopy { } #messageheader, +#partheader, #composeheaders { position: relative; padding: 3px 0; @@ -905,7 +826,7 @@ h3.subject { left: 0; width: 18px; height: 16px; - background: url(images/buttons.png) -27px -242px no-repeat; + background: url(images/buttons.png?v=abf1.36693) -27px -242px no-repeat; } .moreheaderstoggle.remove .iconlink { @@ -925,11 +846,11 @@ div.more-headers { width: 12px; height: 10px; cursor: pointer; - background: url(images/buttons.png) center -1579px no-repeat; + background: url(images/buttons.png?v=abf1.36693) center -1579px no-repeat; } div.hide-headers { - background-position: center -1590px; + background-position: center -1589px; } #all-headers { @@ -982,7 +903,7 @@ div.hide-headers { width: 32px; height: 32px; overflow: hidden; - background: url(images/contactpic_32px.png) center center no-repeat #fff; + background: url(images/contactpic_32px.png?v=09a3.287) center center no-repeat #fff; border-radius: 3px; } @@ -1006,7 +927,7 @@ div.hide-headers { overflow: hidden; border-radius: 4px; border: 1px solid #e6e6e6; - background: url(images/contactpic_48px.png) center center no-repeat #fff; + background: url(images/contactpic_48px.png?v=1bc4.353) center center no-repeat #fff; } #messageheader #contactphoto img { @@ -1015,8 +936,7 @@ div.hide-headers { border-radius: 4px; } -#messageheader #countcontrols, -#messageheader #formatcontrols { +#messageheader #countcontrols { position: absolute; top: 8px; right: 8px; @@ -1024,11 +944,6 @@ div.hide-headers { white-space: nowrap; } -#messageheader #formatcontrols { - top: 38px; - right: 8px; -} - #messageheader .pagenav .countdisplay { min-width: 0; padding-right: 0.5em; @@ -1099,8 +1014,8 @@ div.message-partheaders { div.message-part pre, div.message-htmlpart pre, div.message-part div.pre { - margin: 0; - padding: 0; + margin: 0px; + padding: 0px; font-family: monospace; font-size: 12px; white-space: -moz-pre-wrap !important; @@ -1109,7 +1024,7 @@ div.message-part div.pre { } div.message-part span.sig { - color: #666; + color: #666666; } div.message-part blockquote { @@ -1117,7 +1032,7 @@ div.message-part blockquote { border-left: 2px solid blue; border-right: 2px solid blue; background-color: #F6F6F6; - margin: 2px 0 2px 0; + margin: 2px 0px 2px 0px; padding: 1px 8px 1px 10px; } @@ -1128,9 +1043,9 @@ div.message-part blockquote blockquote { } div.message-part blockquote blockquote blockquote { - color: #900; - border-left: 2px solid #b00; - border-right: 2px solid #b00; + color: #990000; + border-left: 2px solid #bb0000; + border-right: 2px solid #bb0000; } div.message-partheaders { @@ -1205,10 +1120,10 @@ div.message-partheaders .headers-table td.header { #messagepartcontainer { position: absolute; - top: 42px; - left: 232px; - right: 0; - bottom: 0; + top: 60px; + left: 0px; + right: 0px; + bottom: 0px; } #messagepartframe { @@ -1217,30 +1132,6 @@ div.message-partheaders .headers-table td.header { height: 100%; } -#messagepartheader { - position: absolute; - top: 42px; - left: 0; - width: 220px; - bottom: 0; -} - -#messagepartheader table { - table-layout: fixed; - overflow: hidden; -} - -#messagepartheader table td { - text-overflow: ellipsis; - overflow: hidden; -} - -#messagepartheader table td.title { - width: 60px; - padding-right: 0; -} - - /*** message composition ***/ #composeview-left { @@ -1313,25 +1204,12 @@ div.message-partheaders .headers-table td.header { } #compose-contacts li a, #contacts-table td { - background: url(images/listicons.png) -100px 0 no-repeat; + background: url(images/listicons.png?v=bd98.25486) -100px 0 no-repeat; overflow: hidden; padding-left: 36px; text-overflow: ellipsis; } -#contacts-table td.contactgroup a { - color: #376572; - text-decoration: none; -} - -#contacts-table td.contactgroup a span { - display: inline-block; - font-size: 16px; - font-weight: bold; - line-height: 11px; - margin-left: 0.3em; -} - #contacts-table tr:first-child td { border-top: 0; } @@ -1538,7 +1416,7 @@ div.message-partheaders .headers-table td.header { } #compose-attachments.droptarget { - background-image: url(images/filedrop.png); + background-image: url(images/filedrop.png?v=deab.605); background-position: center bottom; background-repeat: no-repeat; } diff --git a/skins/larry/settings.css b/skins/larry/settings.css index 59037ac76..213a4cf9b 100644 --- a/skins/larry/settings.css +++ b/skins/larry/settings.css @@ -52,7 +52,7 @@ #settings-sections span.listitem a, #settings-sections span.tablink a { padding-left: 36px; - background-image: url(images/listicons.png); + background-image: url(images/listicons.png?v=bd98.25486); background-position: -100px 0; background-repeat: no-repeat; } @@ -267,13 +267,3 @@ img.skinthumbnail { .webkit #pluginlist td.source { width: 9em; } - -#rcmfd_signature { - width: 99%; - min-width: 390px; -} - -#rcmfd_signature_toolbar1 td, -#rcmfd_signature_toolbar2 td { - width: auto; -} diff --git a/skins/larry/styles.css b/skins/larry/styles.css index d542768b7..81e5421ad 100644 --- a/skins/larry/styles.css +++ b/skins/larry/styles.css @@ -14,7 +14,7 @@ body { font-family: "Lucida Grande", Verdana, Arial, Helvetica, sans-serif; font-size: 11px; color: #333; - background: url(images/linen.jpg) repeat #d1d5d8; + background: url(images/linen.jpg?v=0382.14157) repeat #d1d5d8; margin: 0; } @@ -50,8 +50,6 @@ textarea { input[type="text"]:focus, input[type="password"]:focus, -input[type="text"]:required, -input[type="password"]:required, input.button:focus, textarea:focus { border-color: #4787b1; @@ -179,8 +177,7 @@ input.mainaction { /** link buttons **/ -a.button, -.buttongroup { +a.button { display: inline-block; margin: 0 2px; padding: 2px 5px; @@ -201,11 +198,6 @@ a.button, text-decoration: none; } -.buttongroup { - padding: 0; - white-space: nowrap; -} - a.button:focus, input.button:focus { border-color: #4fadd5; @@ -239,29 +231,6 @@ a.button.disabled span.inner { filter: alpha(opacity=40); } -.buttongroup a.button { - margin: 0; - border-width: 0 1px 0 0; - border-radius: 0; - background: none; - box-shadow: none; - -o-box-shadow: none; - -webkit-box-shadow: none; - -moz-box-shadow: none; -} - -.buttongroup a.button.first, -.buttongroup a.button:first-child { - border-radius: 4px 0 0 4px; - border-left: 0; -} - -.buttongroup a.button.last, -.buttongroup a.button:last-child { - border-radius: 0 4px 4px 0; - border-right: 0; -} - a.button.pressed, a.button:active, input.button:active { @@ -297,21 +266,6 @@ input.button:active { background: linear-gradient(top, #bababa 0%, #d8d8d8 100%); } -.buttongroup a.button.selected, -.buttongroup a.button.selected:hover { - background: #8a8a8a; - background: -moz-linear-gradient(top, #909090 0%, #858585 100%); - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#909090), color-stop(100%,#858585)); - background: -o-linear-gradient(top, #909090 0%, #858585 100%); - background: -ms-linear-gradient(top, #909090 0%, #858585 100%); - background: linear-gradient(top, #909090 0%, #858585 100%); - -webkit-box-shadow: inset 0 1px 2px 0 #555; - -moz-box-shadow: inset 0 1px 2px 0 #555; - box-shadow: inset 0 1px 2px 0 #555; - border-right-color: #555; - border-left-color: #555; -} - .pagenav a.button { padding: 1px 3px; height: 16px; @@ -319,19 +273,13 @@ input.button:active { margin-bottom: 1px; } -.pagenav .buttongroup a.button, -.pagenav .buttongroup a.button:hover { - padding: 1px 5px; - margin-bottom: 0; -} - .pagenav a.button span.inner { display: inline-block; width: 16px; height: 13px; text-indent: 1000px; overflow: hidden; - background: url(images/buttons.png) -6px -211px no-repeat; + background: url(images/buttons.png?v=abf1.36693) -6px -211px no-repeat; } .pagenav a.prevpage span.inner { @@ -370,20 +318,6 @@ input.button:active { background-position: -29px -271px; } -.pagenav a.changeformat.html span.inner { - background-position: -7px -1859px; -} -.pagenav a.changeformat.html.selected span.inner { - background-position: -29px -1859px; -} - -.pagenav a.changeformat.text span.inner { - background-position: -7px -1874px; -} -.pagenav a.changeformat.text.selected span.inner { - background-position: -29px -1874px; -} - .pagenav .countdisplay { display: inline-block; padding: 3px 1em 0 1em; @@ -402,7 +336,7 @@ a.iconbutton { height: 18px; text-decoration: none; text-indent: -5000px; - background: url(images/buttons.png) -1000px 0 no-repeat; + background: url(images/buttons.png?v=abf1.36693) -1000px 0 no-repeat; } a.iconbutton.disabled { @@ -429,7 +363,7 @@ a.iconlink { text-decoration: none; white-space: nowrap; padding: 2px 8px 2px 20px; - background: url(images/buttons.png) -1000px 0 no-repeat; + background: url(images/buttons.png?v=abf1.36693) -1000px 0 no-repeat; } a.iconlink:hover { @@ -474,7 +408,7 @@ a.iconlink.upload { padding: 6px 30px 6px 25px; display: inline-block; white-space: nowrap; - background: url(images/messages.png) 0 5px no-repeat; + background: url(images/messages.png?v=01ee.1736) 0 5px no-repeat; cursor: default; } @@ -494,7 +428,7 @@ a.iconlink.upload { } #message div.loading { - background: url(images/ajaxloader.gif) 2px 6px no-repeat; + background: url(images/ajaxloader.gif?v=c252.1434) 2px 6px no-repeat; } #message div a, @@ -532,7 +466,7 @@ a.iconlink.upload { .ui-dialog.warning .ui-dialog-title, .ui-dialog.confirmation .ui-dialog-title { padding-left: 25px; - background: url(images/messages.png) 0 5px no-repeat; + background: url(images/messages.png?v=01ee.1736) 0 5px no-repeat; text-shadow: 0 1px 1px #fff; } @@ -580,7 +514,7 @@ a.iconlink.upload { #topline { height: 18px; - background: url(images/linen_header.jpg) repeat #666; + background: url(images/linen_header.jpg?v=514a.580) repeat #666; border-bottom: 1px solid #4f4f4f; padding: 2px 0 2px 10px; color: #aaa; @@ -613,7 +547,6 @@ a.iconlink.upload { #toplogo { padding-top: 2px; cursor: pointer; - border: none; } .topleft { @@ -642,7 +575,7 @@ a.iconlink.upload { #topline a.button-logout { display: inline-block; padding: 2px 10px 2px 20px; - background: url(images/buttons.png) -6px -193px no-repeat; + background: url(images/buttons.png?v=abf1.36693) -6px -193px no-repeat; color: #fff; } @@ -693,6 +626,17 @@ a.iconlink.upload { opacity: 0.999; } +.partwin #topline { + position: absolute; + right: 6px; + top: 18px; + width: auto; + z-index: 100; + background: transparent; + background: none; + border: 0; +} + .minimal #topline a.button-logout { display: none; } @@ -799,7 +743,7 @@ a.iconlink.upload { text-shadow: 0px 1px 1px black; padding: 5px 0 0 34px; height: 19px; - background: url(images/buttons.png) -1000px 0 no-repeat; + background: url(images/buttons.png?v=abf1.36693) -1000px 0 no-repeat; } #taskbar a.button-selected { @@ -851,7 +795,7 @@ a.iconlink.upload { width: 19px; height: 46px; cursor: pointer; - background: url(images/buttons.png) -35px -1778px no-repeat; + background: url(images/buttons.png?v=abf1.36693) -35px -1778px no-repeat; } .minimal #taskbar .minmodetoggle { @@ -875,6 +819,10 @@ a.iconlink.upload { top: 102px; } +.partwin #mainscreen { + top: 60px +} + .extwin #mainscreen { top: 40px; } @@ -884,7 +832,7 @@ a.iconlink.upload { } #mainscreen .offset { - top: 42px; + margin-top: 42px; } .uibox { @@ -924,7 +872,7 @@ a.iconlink.upload { } .watermark { - background-image: url(images/watermark.jpg); + background-image: url(images/watermark.jpg?v=e784.5000); background-position: center; background-repeat: no-repeat; } @@ -1047,19 +995,11 @@ ul.listing li { background-color: #d9ecf4; } -ul.listing li ul { - border-top: 1px solid #bbd3da; -} - ul.listing li.droptarget, table.listing tr.droptarget td { background-color: #e8e798; } -.listbox table.listing { - background-color: #d9ecf4; -} - table.listing, table.layout { border: 0; @@ -1071,32 +1011,6 @@ table.layout td { vertical-align: top; } -ul.treelist li { - position: relative; -} - -ul.treelist li div.treetoggle { - position: absolute; - top: 13px; - left: 19px; - width: 13px; - height: 13px; - background: url(images/listicons.png) -3px -144px no-repeat; - cursor: pointer; -} - -ul.treelist li div.treetoggle.expanded { - background-position: -3px -168px; -} - -ul.treelist li.selected > div.collapsed { - background-position: -23px -144px; -} - -ul.treelist li.selected > div.expanded { - background-position: -23px -168px; -} - .listbox .boxfooter { position: absolute; bottom: 0; @@ -1135,7 +1049,7 @@ ul.treelist li.selected > div.expanded { width: 48px; height: 35px; text-indent: -5000px; - background: url(images/buttons.png) -1000px 0 no-repeat; + background: url(images/buttons.png?v=abf1.36693) -1000px 0 no-repeat; } .boxfooter .listbutton.add .inner { @@ -1199,7 +1113,7 @@ ul.treelist li.selected > div.expanded { text-indent: 1000px; vertical-align: bottom; overflow: hidden; - background: url(images/buttons.png) -4px -286px no-repeat; + background: url(images/buttons.png?v=abf1.36693) -4px -286px no-repeat; } .boxpagenav a.icon.prevpage { @@ -1393,7 +1307,7 @@ body.iframe .footerleft.floating:before, left: 0; width: 100%; height: 6px; - background: url(images/overflowshadow.png) top center no-repeat; + background: url(images/overflowshadow.png?v=8bb4.307) top center no-repeat; } .boxcontent { @@ -1501,7 +1415,7 @@ ul.proplist li { #login-form .box-inner { width: 430px; - background: url(images/linen_login.jpg) top left no-repeat #5c5c5c; + background: url(images/linen_login.jpg?v=0484.10363) top left no-repeat #5c5c5c; margin: 0 50px; padding: 10px 24px 24px 24px; border: 1px solid #333; @@ -1513,7 +1427,7 @@ ul.proplist li { } #login-form .box-bottom { - background: url(images/login_shadow.png) top center no-repeat; + background: url(images/login_shadow.png?v=3337.1069) top center no-repeat; margin-top: -3px; padding-top: 10px; } @@ -1590,7 +1504,6 @@ ul.proplist li { #login-form #logo { margin-bottom: 20px; - border: none; } #login-form #message { @@ -1677,7 +1590,7 @@ ul.proplist li { -moz-box-shadow: none; -webkit-box-shadow: none; -o-box-shadow: none; - background: url(images/buttons.png) -100px 0 no-repeat transparent; + background: url(images/buttons.png?v=abf1.36693) -100px 0 no-repeat transparent; border: 0; border-radius: 0; } @@ -1699,7 +1612,7 @@ ul.proplist li { top: 0; height: 42px; width: 18px; - background: url(images/buttons.png) 0 -1255px no-repeat; + background: url(images/buttons.png?v=abf1.36693) 0 -1255px no-repeat; cursor: pointer; } @@ -1800,7 +1713,6 @@ ul.proplist li { } .toolbar a.button.export { - min-width: 74px; background-position: center -1054px; } @@ -1816,9 +1728,6 @@ ul.proplist li { background-position: 0 -1745px; } -.toolbar a.button.download { - background-position: center -1906px; -} a.menuselector { display: inline-block; @@ -1842,7 +1751,7 @@ a.menuselector .handle { height: 20px; line-height: 19px; text-shadow: 0px 1px 1px #fff; - background: url(images/selector.png) right center no-repeat; + background: url(images/selector.png?v=799c.181) right center no-repeat; border-radius: 4px; } @@ -1865,7 +1774,6 @@ select.decorated { filter: alpha(opacity=0); -khtml-appearance: none; -webkit-appearance: none; - border: 0; } html.opera select.decorated { @@ -1881,7 +1789,6 @@ select.decorated option { text-shadow: 0px 1px 1px #333; padding: 4px 6px; outline: none; - cursor: default; } @@ -1894,7 +1801,7 @@ select.decorated option { text-shadow: 0px 1px 1px #fff; padding-left: 30px; height: 18px; - background: url(images/quota.png) -100px 0 no-repeat; + background: url(images/quota.png?v=4835.3622) -100px 0 no-repeat; } /*** popup menus ***/ @@ -1990,7 +1897,7 @@ ul.toolbarmenu.selectable li a { } ul.toolbarmenu.selectable li a.selected { - background: url(images/messages.png) 4px -27px no-repeat; + background: url(images/messages.png?v=01ee.1736) 4px -27px no-repeat; } ul.toolbarmenu li label { @@ -2010,7 +1917,7 @@ ul.toolbarmenu li span.icon { min-height: 14px; padding: 4px 4px 1px 24px; height: 17px; - background-image: url(images/listicons.png); + background-image: url(images/listicons.png?v=bd98.25486); background-position: -100px 0; background-repeat: no-repeat; opacity: 0.2; @@ -2117,7 +2024,7 @@ ul.toolbarmenu li span.conversation { -moz-user-select: none; -khtml-user-select: none; position: absolute; - background: url(images/splitter.png) center no-repeat; + background: url(images/splitter.png?v=2724.136) center no-repeat; } .splitter-h { @@ -2177,7 +2084,7 @@ ul.toolbarmenu li span.conversation { content: " "; width: 16px; height: 16px; - background: url(images/buttons.png) -7px -358px no-repeat; + background: url(images/buttons.png?v=abf1.36693) -7px -358px no-repeat; z-index: 255; } @@ -2195,7 +2102,7 @@ ul.toolbarmenu li span.conversation { .attachmentslist li { display: block; position: relative; - background: url(images/filetypes.png) 0 0 no-repeat; + background: url(images/filetypes.png?v=3aa2.8551) 0 0 no-repeat; margin-bottom: 1px; } @@ -2292,23 +2199,13 @@ ul.toolbarmenu li span.conversation { display: block; color: #333; font-weight: bold; - padding: 8px 15px 3px 30px; + padding: 3px 4px 3px 30px; text-shadow: 0px 1px 1px #fff; text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; -} - -.attachmentslist li a.drop { - background: url(images/buttons.png) no-repeat scroll center -1570px; - width: 14px; - height: 20px; - cursor: pointer; - position: absolute; - right: 0; - top: 0; - padding: 0; + line-height: 20px; } #compose-attachments ul li { @@ -2320,20 +2217,20 @@ ul.toolbarmenu li span.conversation { } .attachmentslist li.uploading { - background: url(images/ajaxloader.gif) 2px 6px no-repeat; + background: url(images/ajaxloader.gif?v=c252.1434) 2px 6px no-repeat; } .attachmentslist li a.delete, .attachmentslist li a.cancelupload { position: absolute; - top: 6px; + top: 4px; right: 0; - width: 24px; + width: 20px; height: 18px; padding: 0; text-decoration: none; text-indent: -5000px; - background: url(images/buttons.png) -7px -337px no-repeat; + background: url(images/buttons.png?v=abf1.36693) -7px -337px no-repeat; } .attachmentslist li a.cancelupload { diff --git a/skins/larry/svggradients.css b/skins/larry/svggradients.css index c40d44f4b..2172ac31a 100644 --- a/skins/larry/svggradients.css +++ b/skins/larry/svggradients.css @@ -29,8 +29,7 @@ input.button.mainaction:active { background-image: url(svggradient.php?c=2a2e31;505050); } -a.button, -.buttongroup { +a.button { background-image: url(svggradient.php?c=f9f9f9;e6e6e6); } @@ -48,10 +47,6 @@ input.button:active { background-image: url(svggradient.php?c=bababa;d8d8d8); } -.buttongroup a.button.selected { - background-image: url(svggradient.php?c=909090;858585); -} - #message.statusbar { background-image: url(svggradient.php?c=eaeaea;c8c8c8); } diff --git a/skins/larry/templates/about.html b/skins/larry/templates/about.html index e2bd0b019..301c301a9 100644 --- a/skins/larry/templates/about.html +++ b/skins/larry/templates/about.html @@ -4,11 +4,7 @@ <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" /> diff --git a/skins/larry/templates/addressbook.html b/skins/larry/templates/addressbook.html index b33ebd999..1c1647708 100644 --- a/skins/larry/templates/addressbook.html +++ b/skins/larry/templates/addressbook.html @@ -13,11 +13,7 @@ <!-- toolbar --> <div id="addressbooktoolbar" class="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" /> - <span class="dropbuttontip" id="exportmenulink" onclick="UI.show_popup('exportmenu');return false"></span> - </span> - + <roundcube:button command="export" type="link" class="button export disabled" classAct="button export" classSel="button export pressed" label="export" title="exportvcards" /> <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="advanced-search" type="link" class="button search disabled" classAct="button search" classSel="button search pressed" label="advanced" title="advsearch" /> @@ -30,7 +26,7 @@ <div id="directorylistbox" class="uibox listbox"> <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" /> + <roundcube:object name="directorylist" id="directorylist" class="listing" /> </div> <div id="directorylist-footer" class="boxfooter"> <roundcube:button command="group-create" type="link" title="newcontactgroup" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" content="+" /><roundcube:button name="groupoptions" id="groupoptionslink" type="link" title="moreactions" class="listbutton groupactions" onclick="UI.show_popup('groupoptions');return false" innerClass="inner" content="⚙" /> @@ -50,7 +46,7 @@ <!-- contacts list --> <div id="addresslist" class="uibox listbox"> -<roundcube:object name="addresslisttitle" label="contacts" tag="h2" class="boxtitle" /> +<h2 class="boxtitle"><roundcube:label name="contacts" /></h2> <div class="scroller withfooter"> <roundcube:object name="addresslist" id="contacts-table" class="listing" noheader="true" /> </div> @@ -79,12 +75,6 @@ </div><!-- end mainscreen --> -<div id="exportmenu" class="popupmenu"> - <ul class="toolbarmenu"> - <li><roundcube:button command="export" label="exportall" prop="sub" class="exportalllink" classAct="exportalllink active" /></li> - <li><roundcube:button command="export-selected" label="exportsel" prop="sub" class="exportsellink" classAct="exportsellink active" /></li> - </ul> -</div> <div id="searchmenu" class="popupmenu"> <ul class="toolbarmenu"> @@ -106,13 +96,6 @@ </ul> </div> -<div id="dragcontactmenu" class="popupmenu"> - <ul class="toolbarmenu"> - <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> - <roundcube:include file="/includes/footer.html" /> </body> diff --git a/skins/larry/templates/compose.html b/skins/larry/templates/compose.html index 806939a42..1e2a45912 100644 --- a/skins/larry/templates/compose.html +++ b/skins/larry/templates/compose.html @@ -65,7 +65,7 @@ <div id="composeview-right"> -<roundcube:form name="form" method="post" id="compose-content" class="uibox"> +<form name="form" action="./" method="post" id="compose-content" class="uibox"> <!-- message headers --> <div id="composeheaders"> @@ -85,25 +85,25 @@ </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' />">x</a> + <a href="#cc" onclick="return UI.hide_header_row('cc');" class="iconbutton cancel" title="<roundcube:label name='delete' />" />x</a> </td> <td class="editfield"><roundcube:object name="composeHeaders" part="cc" form="form" id="_cc" cols="70" rows="1" tabindex="3" /></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' />">x</a> + <a href="#bcc" onclick="return UI.hide_header_row('bcc');" class="iconbutton cancel" title="<roundcube:label name='delete' />" />x</a> </td> - <td class="editfield"><roundcube:object name="composeHeaders" part="bcc" form="form" id="_bcc" cols="70" rows="1" tabindex="4" /></td> + <td colspan="2" class="editfield"><roundcube:object name="composeHeaders" part="bcc" form="form" id="_bcc" cols="70" rows="1" tabindex="4" /></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' />">x</a> + <a href="#replyto" onclick="return UI.hide_header_row('replyto');" class="iconbutton cancel" title="<roundcube:label name='delete' />" />x</a> </td> <td class="editfield"><roundcube:object name="composeHeaders" part="replyto" form="form" id="_replyto" size="70" tabindex="5" /></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' />">x</a> + <a href="#followupto" onclick="return UI.hide_header_row('followupto');" class="iconbutton cancel" title="<roundcube:label name='delete' />" />x</a> </td> <td class="editfield"><roundcube:object name="composeHeaders" part="followupto" form="form" id="_followupto" size="70" tabindex="7" /></td> </tr><tr> @@ -140,9 +140,11 @@ <span class="composeoption"> <label><roundcube:object name="receiptCheckBox" form="form" id="rcmcomposereceipt" /> <roundcube:label name="returnreceipt" /></label> </span> + <roundcube:if condition="config:smtp_server != ''" /> <span class="composeoption"> <label><roundcube:object name="dsnCheckBox" form="form" id="rcmcomposedsn" /> <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" /></label> @@ -185,7 +187,7 @@ </div><!-- end mainscreen --> <div id="upload-dialog" class="propform popupdialog" title="<roundcube:label name='addattachment' />"> - <roundcube:object name="composeAttachmentForm" id="uploadform" buttons="no" /> + <roundcube:object name="composeAttachmentForm" id="uploadform" attachmentFieldSize="40" buttons="no" /> <div class="formbuttons"> <roundcube:button command="send-attachment" type="input" class="button mainaction" label="upload" /> <roundcube:button name="close" type="input" class="button" label="cancel" onclick="UI.show_uploadform()" /> diff --git a/skins/larry/templates/contact.html b/skins/larry/templates/contact.html index 59fe6f79f..d252049cd 100644 --- a/skins/larry/templates/contact.html +++ b/skins/larry/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" placeholderGroup="/images/contactgroup.png" /></div> + <div id="contactphoto"><roundcube:object name="contactphoto" id="contactpic" placeholder="/images/contactpic.png" /></div> <roundcube:object name="contacthead" id="contacthead" /> <br style="clear:both" /> diff --git a/skins/larry/templates/contactedit.html b/skins/larry/templates/contactedit.html index 3467ebe8e..f84936635 100644 --- a/skins/larry/templates/contactedit.html +++ b/skins/larry/templates/contactedit.html @@ -11,7 +11,7 @@ <roundcube:else /><roundcube:label name="editcontact" /> <roundcube:endif /></h1> -<roundcube:form name="editform" method="post" id="contact-details" class="boxcontent"> +<form name="editform" method="post" action="./" 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 /> diff --git a/skins/larry/templates/importcontacts.html b/skins/larry/templates/importcontacts.html index d3d0f2b93..89aea0a2e 100644 --- a/skins/larry/templates/importcontacts.html +++ b/skins/larry/templates/importcontacts.html @@ -14,18 +14,19 @@ <roundcube:button command="list" type="link" class="button back disabled" classAct="button back" classSel="button back pressed" label="back" /> </div> -<div id="pluginbody" class="offset uibox contentbox"> +<div class="offset uibox contentbox"> <h2 class="boxtitle"><roundcube:label name="importcontacts" /></h2> -<div id="import-box" class="boxcontent"> +<div class="boxcontent readtext"> <roundcube:object name="importstep" /> + <br/> + <p class="formbuttons"> <roundcube:object name="importnav" class="button" /> </p> -</div> -<roundcube:object name="message" id="message" class="statusbar" /> +</div> </div> diff --git a/skins/larry/templates/login.html b/skins/larry/templates/login.html index 13e919ad3..a605eb7fe 100644 --- a/skins/larry/templates/login.html +++ b/skins/larry/templates/login.html @@ -9,9 +9,9 @@ <div id="login-form"> <div class="box-inner"> -<roundcube:object name="logo" src="/images/roundcube_logo.png" id="logo" /> +<roundcube:object name="logo" src="/images/roundcube_logo.png" id="logo" border="0" /> -<roundcube:form name="form" method="post"> +<form name="form" action="./" method="post"> <roundcube:object name="loginform" form="form" size="40" /> <p class="formbuttons"><input type="submit" class="button mainaction" value="<roundcube:label name='login' />" /></p> diff --git a/skins/larry/templates/mail.html b/skins/larry/templates/mail.html index f2c52c820..4b8f03951 100644 --- a/skins/larry/templates/mail.html +++ b/skins/larry/templates/mail.html @@ -30,7 +30,7 @@ <div id="folderlist-header"></div> <div id="mailboxcontainer" class="uibox listbox"> <div id="folderlist-content" class="scroller withfooter"> -<roundcube:object name="mailboxlist" id="mailboxlist" class="treelist listing" folder_filter="mail" unreadwrap="%s" /> +<roundcube:object name="mailboxlist" id="mailboxlist" class="listing" 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.show_popup('mailboxmenu');return false" innerClass="inner" content="⚙" /> @@ -70,7 +70,7 @@ <div id="messagelistcontainer" class="boxlistcontent"> <roundcube:object name="messages" id="messagelist" - class="records-table messagelist sortheader fixedheader" + class="records-table sortheader" optionsmenuIcon="true" /> </div> @@ -140,7 +140,7 @@ <div id="dragmessagemenu" class="popupmenu"> <ul class="toolbarmenu"> - <li><roundcube:button command="move" onclick="return rcmail.drag_menu_action('move')" label="move" classAct="active" /></li> + <li><roundcube:button command="moveto" onclick="return rcmail.drag_menu_action('moveto')" label="move" classAct="active" /></li> <li><roundcube:button command="copy" onclick="return rcmail.drag_menu_action('copy')" label="copy" classAct="active" /></li> </ul> </div> @@ -148,8 +148,7 @@ <div id="mailboxmenu" class="popupmenu"> <ul class="toolbarmenu" id="mailboxoptionsmenu"> <li><roundcube:button command="expunge" type="link" label="compact" classAct="active" /></li> - <li><roundcube:button command="purge" type="link" label="empty" classAct="active" /></li> - <li><roundcube:button name="messageimport" type="link" class="active" label="importmessages" onclick="UI.show_uploadform()" /></li> + <li class="separator_below"><roundcube:button command="purge" type="link" label="empty" classAct="active" /></li> <li><roundcube:button command="folders" task="settings" type="link" label="managefolders" classAct="active" /></li> <roundcube:container name="mailboxoptions" id="mailboxoptionsmenu" /> </ul> @@ -227,14 +226,6 @@ </div> </div> -<div id="upload-dialog" class="propform popupdialog" title="<roundcube:label name='importmessages' />"> - <roundcube:object name="messageimportform" id="uploadform" buttons="no" /> - <div class="formbuttons"> - <roundcube:button command="import-messages" type="input" class="button mainaction" label="upload" /> - <roundcube:button name="close" type="input" class="button" label="cancel" onclick="UI.show_uploadform()" /> - </div> -</div> - <roundcube:include file="/includes/footer.html" /> </body> diff --git a/skins/larry/templates/message.html b/skins/larry/templates/message.html index 6937b00af..5ac079c96 100644 --- a/skins/larry/templates/message.html +++ b/skins/larry/templates/message.html @@ -17,7 +17,7 @@ <roundcube:endif /> <roundcube:include file="/includes/mailtoolbar.html" /> <div class="toolbarselect"> - <roundcube:object name="mailboxlist" type="select" noSelection="moveto" maxlength="25" onchange="rcmail.command('move', this.options[this.selectedIndex].value)" class="mailboxlist decorated" folder_filter="mail" /> + <roundcube:object name="mailboxlist" type="select" noSelection="moveto" maxlength="25" onchange="rcmail.command('moveto', this.options[this.selectedIndex].value)" class="mailboxlist decorated" folder_filter="mail" /> </div> </div> @@ -28,7 +28,7 @@ <!-- folders list --> <div id="mailboxcontainer" class="uibox listbox"> <div class="scroller"> -<roundcube:object name="mailboxlist" id="mailboxlist" class="treelist listing" folder_filter="mail" unreadwrap="%s" /> +<roundcube:object name="mailboxlist" id="mailboxlist" class="listing" folder_filter="mail" unreadwrap="%s" /> </div> </div> @@ -56,21 +56,6 @@ <roundcube:button command="nextmessage" type="link" class="button nextpage disabled" classAct="button nextpage" classSel="button nextpage pressed" innerClass="inner" title="nextmessage" content="&gt;" /> </div> -<roundcube:if condition="env:optional_format=='text'" /> -<div class="pagenav" id="formatcontrols"> - <span class="buttongroup"> - <roundcube:button command="change-format" prop="html" type="link" class="button first changeformat html selected" innerClass="inner" title="changeformathtml" /><roundcube:button command="change-format" prop="text" type="link" class="button last changeformat text" classSel="button last changeformat text pressed" innerClass="inner" title="changeformattext" /> - </span> -</div> -<roundcube:elseif condition="env:optional_format=='html'" /> -<div class="pagenav" 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="inner" title="changeformathtml" /><roundcube:button command="change-format" prop="text" type="link" class="button last changeformat text selected" innerClass="inner" title="changeformattext" /> - </span> -</div> -<roundcube:endif /> - - <div id="contactphoto"><roundcube:object name="contactphoto" /></div> </div> @@ -90,14 +75,6 @@ </div><!-- end mainscreen --> -<div id="attachmentmenu" class="popupmenu"> - <ul class="toolbarmenu"> - <li><roundcube:button command="open-attachment" id="attachmenuopen" type="link" label="open" class="icon" classAct="icon active" innerclass="icon extwin" /></li> - <li><roundcube:button command="download-attachment" id="attachmenudownload" type="link" label="download" class="icon" classAct="icon active" innerclass="icon download" /></li> - <roundcube:container name="attachmentmenu" id="attachmentmenu" /> - </ul> -</div> - <roundcube:include file="/includes/footer.html" /> </body> diff --git a/skins/larry/templates/messageerror.html b/skins/larry/templates/messageerror.html index a735d47f2..3c3c9acdb 100644 --- a/skins/larry/templates/messageerror.html +++ b/skins/larry/templates/messageerror.html @@ -28,7 +28,7 @@ <!-- folders list --> <div id="mailboxcontainer" class="uibox listbox"> <div class="scroller"> - <roundcube:object name="mailboxlist" id="mailboxlist" class="treelist listing" folder_filter="mail" unreadwrap="%s" /> + <roundcube:object name="mailboxlist" id="mailboxlist" class="listing" folder_filter="mail" unreadwrap="%s" /> </div> </div> diff --git a/skins/larry/templates/messagepart.html b/skins/larry/templates/messagepart.html index d0e3a808d..dbb4940de 100644 --- a/skins/larry/templates/messagepart.html +++ b/skins/larry/templates/messagepart.html @@ -4,35 +4,33 @@ <title><roundcube:object name="pagetitle" /></title> <roundcube:include file="/includes/links.html" /> </head> -<body class="extwin noscroll"> +<body class="partwin"> -<roundcube:include file="/includes/header.html" /> +<div id="header"> +<div id="topline"> + <div class="topright"> + <a href="#close" class="closelink" onclick="self.close()"><roundcube:label name="close" /></a> + </div> +</div> -<div id="mainscreen"> +<div id="topnav"> + <roundcube:object name="logo" src="/images/roundcube_logo.png" id="toplogo" border="0" alt="Logo" /> +</div> -<div id="messagetoolbar" class="toolbar fullwidth"> - <roundcube:button command="download" type="link" class="button download disabled" classAct="button download" classSel="button download pressed" label="download" /> - <roundcube:button command="print" type="link" class="button print disabled" classAct="button print" classSel="button print pressed" label="print" /> - <roundcube:container name="toolbar" id="messagetoolbar" /> +<br style="clear:both" /> </div> -<div id="messagepartheader" class="uibox listbox"> - <h2 class="boxtitle"><roundcube:label name="properties" /></h2> - <div class="scroller"> - <roundcube:object name="messagePartControls" class="listing" /> - </div> +<div id="mainscreen"> + +<div id="partheader" class="uibox"> +<roundcube:object name="messagePartControls" class="headers-table" /> </div> <div id="messagepartcontainer" class="uibox"> - <div class="iframebox"> - <roundcube:object name="messagePartFrame" id="messagepartframe" frameborder="0" /> - </div> - <roundcube:object name="message" id="message" class="statusbar" /> +<roundcube:object name="messagePartFrame" id="messagepartframe" frameborder="0" /> </div> </div> -<roundcube:include file="/includes/footer.html" /> - </body> </html> diff --git a/skins/larry/templates/messagepreview.html b/skins/larry/templates/messagepreview.html index f69f65125..aef282ac9 100644 --- a/skins/larry/templates/messagepreview.html +++ b/skins/larry/templates/messagepreview.html @@ -30,17 +30,6 @@ <!-- record navigation --> <div id="countcontrols" class="pagenav"> -<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="inner" title="changeformathtml" content="HTML" /><roundcube:button command="change-format" prop="text" type="link" class="button last changeformat text" classSel="button changeformat text pressed" innerClass="inner" title="changeformattext" content="Text" /> - </span> - -<roundcube:elseif condition="env:optional_format=='html'" /> - <span class="buttongroup"> - <roundcube:button command="change-format" prop="html" type="link" class="button first changeformat html" classSel="button changeformat html pressed" innerClass="inner" title="changeformathtml" content="HTML" /><roundcube:button command="change-format" prop="text" type="link" class="button last changeformat text selected" innerClass="inner" title="changeformattext" content="Text" /> - </span> - -<roundcube:endif /> <roundcube:if condition="env:mailbox != config:drafts_mbox"> <roundcube:button command="reply" type="link" class="button reply" classSel="button reply pressed" innerClass="inner" title="replytomessage" content="<-" /> <roundcube:button command="reply-all" type="link" class="button replyall" classSel="button replyall pressed" innerClass="inner" title="replytoallmessage" content="<<-" /> @@ -62,14 +51,6 @@ </div> </div> -<div id="attachmentmenu" class="popupmenu"> - <ul class="toolbarmenu"> - <li><roundcube:button command="open-attachment" id="attachmenuopen" type="link" label="open" class="icon" classAct="icon active" innerclass="icon extwin" /></li> - <li><roundcube:button command="download-attachment" id="attachmenudownload" type="link" label="download" class="icon" classAct="icon active" innerclass="icon download" /></li> - <roundcube:container name="attachmentmenu" id="attachmentmenu" /> - </ul> -</div> - <roundcube:include file="/includes/footer.html" /> </body> diff --git a/skins/larry/templates/responseedit.html b/skins/larry/templates/responseedit.html new file mode 100644 index 000000000..8f180fe7f --- /dev/null +++ b/skins/larry/templates/responseedit.html @@ -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> diff --git a/skins/larry/templates/responses.html b/skins/larry/templates/responses.html new file mode 100644 index 000000000..fb40048c8 --- /dev/null +++ b/skins/larry/templates/responses.html @@ -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> +<body class="noscroll"> + +<roundcube:include file="/includes/header.html" /> + +<div id="mainscreen" class="offset"> + +<roundcube:include file="/includes/settingstabs.html" /> + +<div id="settings-right"> + +<div id="identitieslist" class="uibox listbox"> +<h2 class="boxtitle"><roundcube:label name="responses" /></h2> +<div class="scroller withfooter"> +<roundcube:object name="responsesList" id="identities-table" class="listing" cellspacing="0" summary="Responses list" noheader="true" /> +</div> +<div class="boxfooter"> +<roundcube:button command="add" type="link" title="savenewresponse" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" content="+" /><roundcube:button command="delete" type="link" title="delete" class="listbutton delete disabled" classAct="listbutton delete" innerClass="inner" content="-" /> +</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" /> + </div> + <roundcube:object name="message" id="message" class="statusbar" /> +</div> + +</div> + +</div> + +<roundcube:include file="/includes/footer.html" /> + +</body> +</html> diff --git a/skins/larry/ui.js b/skins/larry/ui.js index ae14d81b2..19f8a516a 100644 --- a/skins/larry/ui.js +++ b/skins/larry/ui.js @@ -17,9 +17,8 @@ function rcube_mail_ui() var popupconfig = { forwardmenu: { editable:1 }, searchmenu: { editable:1, callback:searchmenu }, - attachmentmenu: { }, listoptions: { editable:1 }, - dragmenu: { sticky:1 }, + dragmessagemenu: { sticky:1 }, groupmenu: { above:1 }, mailboxmenu: { above:1 }, spellmenu: { callback: spellmenu }, @@ -38,12 +37,10 @@ function rcube_mail_ui() this.init_tabs = init_tabs; this.show_about = show_about; this.show_popup = show_popup; - this.add_popup = add_popup; this.set_searchmod = set_searchmod; this.show_uploadform = show_uploadform; this.show_header_row = show_header_row; this.hide_header_row = hide_header_row; - this.update_quota = update_quota; // set minimal mode on small screens (don't wait for document.ready) @@ -88,26 +85,20 @@ function rcube_mail_ui() /*** mail task ***/ if (rcmail.env.task == 'mail') { - rcmail.addEventListener('menu-open', menu_open); - rcmail.addEventListener('menu-save', menu_save); + rcmail.addEventListener('menu-open', show_listoptions); + rcmail.addEventListener('menu-save', save_listoptions); rcmail.addEventListener('responseafterlist', function(e){ switch_view_mode(rcmail.env.threading ? 'thread' : 'list') }); var dragmenu = $('#dragmessagemenu'); if (dragmenu.length) { - rcmail.gui_object('dragmenu', 'dragmessagemenu'); - popups.dragmenu = dragmenu; + rcmail.gui_object('message_dragmenu', 'dragmessagemenu'); + popups.dragmessagemenu = dragmenu; } if (rcmail.env.action == 'show' || rcmail.env.action == 'preview') { - rcmail.addEventListener('enable-command', enable_command); rcmail.addEventListener('aftershow-headers', function() { layout_messageview(); }); rcmail.addEventListener('afterhide-headers', function() { layout_messageview(); }); - $('#previewheaderstoggle').click(function(e){ toggle_preview_headers(); return false }); - - // add menu link for each attachment - $('#attachment-list > li').each(function() { - $(this).append($('<a class="drop">').click(function() { attachmentmenu(this); })); - }); + $('#previewheaderstoggle').click(function(e){ toggle_preview_headers(this); return false }); } else if (rcmail.env.action == 'compose') { rcmail.addEventListener('aftertoggle-editor', function(){ window.setTimeout(function(){ layout_composeview() }, 200); }); @@ -116,14 +107,10 @@ function rcube_mail_ui() layout_composeview(); // Show input elements with non-empty value - var f, v, field, fields = ['cc', 'bcc', 'replyto', 'followupto']; - for (f=0; f < fields.length; f++) { - v = fields[f]; field = $('#_'+v); - if (field.length) { - field.on('change', {v: v}, function(e) { if (this.value) show_header_row(e.data.v, true); }); - if (field.val() != '') - show_header_row(v, true); - } + var field, fields = ['cc', 'bcc', 'replyto', 'followupto']; + for (var f=0; f < fields.length; f++) { + if ((field = $('#_'+fields[f])) && field.length && field.val() != '') + show_header_row(fields[f], true); } $('#composeoptionstoggle').click(function(){ @@ -155,12 +142,6 @@ function rcube_mail_ui() new rcube_scroller('#folderlist-content', '#folderlist-header', '#folderlist-footer'); rcmail.addEventListener('setquota', update_quota); - rcmail.addEventListener('enable-command', enable_command); - rcmail.addEventListener('afterimport-messages', show_uploadform); - } - else if (rcmail.env.action == 'get') { - new rcube_splitter({ id:'mailpartsplitterv', p1:'#messagepartheader', p2:'#messagepartcontainer', - orientation:'v', relative:true, start:226, min:150, size:12}).init(); } if ($('#mailview-left').length) { @@ -199,8 +180,6 @@ function rcube_mail_ui() /*** addressbook task ***/ else if (rcmail.env.task == 'addressbook') { rcmail.addEventListener('afterupload-photo', show_uploadform); - rcmail.addEventListener('beforepushgroup', push_contactgroup); - rcmail.addEventListener('beforepopgroup', pop_contactgroup); if (rcmail.env.action == '') { new rcube_splitter({ id:'addressviewsplitterd', p1:'#addressview-left', p2:'#addressview-right', @@ -210,12 +189,12 @@ function rcube_mail_ui() new rcube_scroller('#directorylist-content', '#directorylist-header', '#directorylist-footer'); } + } - var dragmenu = $('#dragcontactmenu'); - if (dragmenu.length) { - rcmail.gui_object('dragmenu', 'dragcontactmenu'); - popups.dragmenu = dragmenu; - } + // set min-width to show all toolbar buttons + var screen = $('.minwidth'); + if (screen.length) { + screen.css('min-width', $('.toolbar').width() + $('#quicksearchbar').parent().width() + 20); } // turn a group of fieldsets into tabs @@ -229,7 +208,6 @@ function rcube_mail_ui() } var select = $(this), - parent = select.parent(), height = Math.max(select.height(), 26) - 2, width = select.width() - 22, title = $('option', this).first().text(); @@ -244,23 +222,19 @@ function rcube_mail_ui() overlay.children().width(width).height(height).css('line-height', (height - 1) + 'px'); + select.change(function() { + var val = $('option:selected', this).text(); + $(this).next().children().html(val); + }); + + var parent = select.parent(); if (parent.css('position') != 'absolute') parent.css('position', 'relative'); // re-set original select width to fix click action and options width in some browsers - select.width(overlay.width()) - .change(function() { - var val = $('option:selected', this).text(); - $(this).next().children().text(val); - }); + select.width(overlay.width()); }); - // set min-width to show all toolbar buttons - var screen = $('body > div.minwidth'); - if (screen.length) { - screen.css('min-width', $('.toolbar').width() + $('#quicksearchbar').width() + $('#searchfilter').width() + 30); - } - $(document.body) .bind('mouseup', body_mouseup) .bind('keyup', function(e){ @@ -316,36 +290,28 @@ function rcube_mail_ui() /** * Update UI on window resize */ - function resize(e) + function resize() { - // resize in intervals to prevent lags and double onresize calls in Chrome (#1489005) - var interval = e ? 10 : 0; - - if (rcmail.resize_timeout) - window.clearTimeout(rcmail.resize_timeout); + if (rcmail.env.task == 'mail') { + if (rcmail.env.action == 'show' || rcmail.env.action == 'preview') + layout_messageview(); + else if (rcmail.env.action == 'compose') + layout_composeview(); + } - rcmail.resize_timeout = window.setTimeout(function() { - if (rcmail.env.task == 'mail') { - if (rcmail.env.action == 'show' || rcmail.env.action == 'preview') - layout_messageview(); - else if (rcmail.env.action == 'compose') - layout_composeview(); + // make iframe footer buttons float if scrolling is active + $('body.iframe .footerleft').each(function(){ + var footer = $(this), + body = $(document.body), + floating = footer.hasClass('floating'), + overflow = body.outerHeight(true) > $(window).height(); + + if (overflow != floating) { + var action = overflow ? 'addClass' : 'removeClass'; + footer[action]('floating'); + body[action]('floatingbuttons'); } - - // make iframe footer buttons float if scrolling is active - $('body.iframe .footerleft').each(function(){ - var footer = $(this), - body = $(document.body), - floating = footer.hasClass('floating'), - overflow = body.outerHeight(true) > $(window).height(); - - if (overflow != floating) { - var action = overflow ? 'addClass' : 'removeClass'; - footer[action]('floating'); - body[action]('floatingbuttons'); - } - }); - }, interval); + }); } /** @@ -458,30 +424,6 @@ function rcube_mail_ui() } - function enable_command(p) - { - if (p.command == 'reply-list') { - var label = rcmail.gettext(p.status ? 'replylist' : 'replyall'); - if (rcmail.env.action == 'preview') - $('a.button.replyall').attr('title', label); - else - $('a.button.reply-all').text(label).attr('title', label); - } - } - - - /** - * Register a popup menu - */ - function add_popup(popup, config) - { - var obj = popups[popup] = $('#'+popup); - obj.appendTo(document.body); // move it to top for proper absolute positioning - - if (obj.length) - popupconfig[popup] = $.extend(popupconfig[popup] || {}, config || {}); - } - /** * Trigger for popup menus */ @@ -489,7 +431,7 @@ function rcube_mail_ui() { // auto-register menu object if (config || !popupconfig[popup]) - add_popup(popup, config); + popupconfig[popup] = $.extend(popupconfig[popup] || {}, config); var visible = show_popupmenu(popup, show), config = popupconfig[popup]; @@ -504,7 +446,7 @@ function rcube_mail_ui() { var obj = popups[popup], config = popupconfig[popup], - ref = $(config.link ? config.link : '#'+popup+'link'), + ref = $('#'+popup+'link'), above = config.above; if (!obj) { @@ -520,7 +462,7 @@ function rcube_mail_ui() else if (config.toggle && show && obj.is(':visible')) show = false; - if (show && ref.length) { + if (show && ref) { var parent = ref.parent(), win = $(window), pos; @@ -604,11 +546,8 @@ function rcube_mail_ui() mailviewsplit.handle.hide(); } - if (rcmail.message_list) { - if (visible && uid) - rcmail.message_list.scrollto(uid); - rcmail.message_list.resize(); - } + if (visible && uid && rcmail.message_list) + rcmail.message_list.scrollto(uid); rcmail.command('save-pref', { name:'preview_pane', value:(visible?1:0) }); } @@ -617,7 +556,7 @@ function rcube_mail_ui() /** * Switch between short and full headers display in message preview */ - function toggle_preview_headers() + function toggle_preview_headers(button) { $('#preview-shortheaders').toggle(); var full = $('#preview-allheaders').toggle(), @@ -646,19 +585,6 @@ function rcube_mail_ui() /**** popup callbacks ****/ - function menu_open(p) - { - if (p && p.props && p.props.menu == 'attachmentmenu') - show_popupmenu('attachmentmenu'); - else - show_listoptions(); - } - - function menu_save(prop) - { - save_listoptions(); - } - function searchmenu(show) { if (show && rcmail.env.search_mods) { @@ -689,21 +615,6 @@ function rcube_mail_ui() } } - function attachmentmenu(elem) - { - var id = elem.parentNode.id.replace(/^attach/, ''); - - $('#attachmenuopen').unbind('click').attr('onclick', '').click(function(e) { - return rcmail.command('open-attachment', id, this); - }); - - $('#attachmenudownload').unbind('click').attr('onclick', '').click(function() { - rcmail.command('download-attachment', id, this); - }); - - popupconfig.attachmentmenu.link = elem; - rcmail.command('menu-open', {menu: 'attachmentmenu', id: id}); - } function spellmenu(show) { @@ -772,8 +683,7 @@ function rcube_mail_ui() close: function() { $dialog.dialog('destroy').hide(); }, - minWidth: 500, - width: $dialog.width()+25 + width: 650 }).show(); } @@ -842,35 +752,6 @@ function rcube_mail_ui() }); } - function push_contactgroup(p) - { - // lets the contacts list swipe to the left, nice! - var table = $('#contacts-table'), - scroller = table.parent().css('overflow', 'hidden'); - - table.clone() - .css({ position:'absolute', top:'0', left:'0', width:table.width()+'px', 'z-index':10 }) - .appendTo(scroller) - .animate({ left: -(table.width()+5) + 'px' }, 300, 'swing', function(){ - $(this).remove(); - scroller.css('overflow', 'auto') - }); - } - - function pop_contactgroup(p) - { - // lets the contacts list swipe to the left, nice! - var table = $('#contacts-table'), - scroller = table.parent().css('overflow', 'hidden'), - clone = table.clone().appendTo(scroller); - - table.css({ position:'absolute', top:'0', left:-(table.width()+5) + 'px', width:table.width()+'px', height:table.height()+'px', 'z-index':10 }) - .animate({ left:'0' }, 300, 'linear', function(){ - clone.remove(); - $(this).css({ position:'relative', left:'0', width:'100%', height:'auto', 'z-index':1 }); - scroller.css('overflow', 'auto') - }); - } function show_uploadform() { @@ -881,7 +762,7 @@ function rcube_mail_ui() $dialog.dialog('close'); return; } - + // add icons to clone file input field if (rcmail.env.action == 'compose' && !$dialog.data('extended')) { $('<a>') diff --git a/skins/larry/watermark.html b/skins/larry/watermark.html index d1061d1f3..af28d6940 100644 --- a/skins/larry/watermark.html +++ b/skins/larry/watermark.html @@ -9,7 +9,7 @@ html, body { } body { - background: url(images/watermark.jpg) center no-repeat #fff; + background: url(images/watermark.jpg?v=e784.5000) center no-repeat #fff; } </style> |