From c40419bdfe866932fecf9fcb1f552312c669c228 Mon Sep 17 00:00:00 2001 From: Thomas Bruederli Date: Mon, 30 Jul 2012 12:00:52 +0200 Subject: Rename old 'default' skin folder to 'classic' --- skins/classic/README | 23 + skins/classic/addressbook.css | 413 ++++++ skins/classic/common.css | 977 ++++++++++++++ skins/classic/editor_content.css | 31 + skins/classic/functions.js | 831 ++++++++++++ skins/classic/googiespell.css | 119 ++ skins/classic/ie6hacks.css | 178 +++ skins/classic/iehacks.css | 295 +++++ skins/classic/images/abook_toolbar.gif | Bin 0 -> 5753 bytes skins/classic/images/abook_toolbar.png | Bin 0 -> 16395 bytes skins/classic/images/blank.gif | Bin 0 -> 54 bytes skins/classic/images/buttons/add_act.png | Bin 0 -> 179 bytes skins/classic/images/buttons/add_pas.png | Bin 0 -> 197 bytes skins/classic/images/buttons/add_sel.png | Bin 0 -> 148 bytes skins/classic/images/buttons/bg.gif | Bin 0 -> 197 bytes skins/classic/images/cleardot.png | Bin 0 -> 101 bytes skins/classic/images/contactpic.png | Bin 0 -> 375 bytes skins/classic/images/dbutton.png | Bin 0 -> 240 bytes skins/classic/images/dimple.png | Bin 0 -> 174 bytes skins/classic/images/display/icons.gif | Bin 0 -> 2329 bytes skins/classic/images/display/icons.png | Bin 0 -> 4246 bytes skins/classic/images/display/loading.gif | Bin 0 -> 2942 bytes skins/classic/images/display/loading_blue.gif | Bin 0 -> 847 bytes skins/classic/images/favicon.ico | Bin 0 -> 1150 bytes skins/classic/images/googiespell/change_lang.gif | Bin 0 -> 111 bytes skins/classic/images/googiespell/indicator.gif | Bin 0 -> 722 bytes skins/classic/images/googiespell/ok.gif | Bin 0 -> 143 bytes skins/classic/images/googiespell/spellc.gif | Bin 0 -> 354 bytes skins/classic/images/icons/attachment.png | Bin 0 -> 657 bytes skins/classic/images/icons/blank.gif | Bin 0 -> 54 bytes skins/classic/images/icons/collapsed.png | Bin 0 -> 184 bytes skins/classic/images/icons/columnpicker.gif | Bin 0 -> 133 bytes skins/classic/images/icons/delete.png | Bin 0 -> 841 bytes skins/classic/images/icons/deleted.png | Bin 0 -> 543 bytes skins/classic/images/icons/dot.png | Bin 0 -> 244 bytes skins/classic/images/icons/down_small.gif | Bin 0 -> 106 bytes skins/classic/images/icons/expanded.png | Bin 0 -> 123 bytes skins/classic/images/icons/extwin.png | Bin 0 -> 263 bytes skins/classic/images/icons/flagged.png | Bin 0 -> 674 bytes skins/classic/images/icons/folders.gif | Bin 0 -> 2568 bytes skins/classic/images/icons/folders.png | Bin 0 -> 4957 bytes skins/classic/images/icons/forwarded.png | Bin 0 -> 315 bytes skins/classic/images/icons/forwarded_replied.png | Bin 0 -> 375 bytes skins/classic/images/icons/glass.gif | Bin 0 -> 909 bytes skins/classic/images/icons/glass.png | Bin 0 -> 433 bytes skins/classic/images/icons/glass_roll.png | Bin 0 -> 544 bytes skins/classic/images/icons/groupactions.gif | Bin 0 -> 1602 bytes skins/classic/images/icons/groupactions.png | Bin 0 -> 1454 bytes skins/classic/images/icons/minus.gif | Bin 0 -> 82 bytes skins/classic/images/icons/plus.gif | Bin 0 -> 93 bytes skins/classic/images/icons/rename.png | Bin 0 -> 747 bytes skins/classic/images/icons/replied.png | Bin 0 -> 317 bytes skins/classic/images/icons/reset.gif | Bin 0 -> 164 bytes skins/classic/images/icons/silhouette.png | Bin 0 -> 255 bytes skins/classic/images/icons/sort.gif | Bin 0 -> 148 bytes skins/classic/images/icons/unflagged.png | Bin 0 -> 389 bytes skins/classic/images/icons/unread.png | Bin 0 -> 460 bytes skins/classic/images/icons/unread_children.png | Bin 0 -> 441 bytes skins/classic/images/icons/up_small.gif | Bin 0 -> 106 bytes skins/classic/images/listheader.gif | Bin 0 -> 322 bytes skins/classic/images/mail_footer.gif | Bin 0 -> 1336 bytes skins/classic/images/mail_footer.png | Bin 0 -> 1027 bytes skins/classic/images/mail_toolbar.gif | Bin 0 -> 12822 bytes skins/classic/images/mail_toolbar.png | Bin 0 -> 37571 bytes skins/classic/images/messageactions.gif | Bin 0 -> 1916 bytes skins/classic/images/messageactions.png | Bin 0 -> 2607 bytes skins/classic/images/messageicons.gif | Bin 0 -> 2226 bytes skins/classic/images/messageicons.png | Bin 0 -> 4868 bytes skins/classic/images/pagenav.gif | Bin 0 -> 357 bytes skins/classic/images/quota-colors.png | Bin 0 -> 492 bytes skins/classic/images/quota.gif | Bin 0 -> 998 bytes skins/classic/images/quota.png | Bin 0 -> 216 bytes skins/classic/images/roundcube_logo.png | Bin 0 -> 7530 bytes skins/classic/images/searchfield.gif | Bin 0 -> 336 bytes skins/classic/images/tabs-left.gif | Bin 0 -> 295 bytes skins/classic/images/tabs-right.gif | Bin 0 -> 837 bytes skins/classic/images/taskbar.gif | Bin 0 -> 2041 bytes skins/classic/images/taskbar.png | Bin 0 -> 2425 bytes skins/classic/images/taskicons.gif | Bin 0 -> 1732 bytes skins/classic/images/taskicons.png | Bin 0 -> 1732 bytes skins/classic/images/tree.gif | Bin 0 -> 92 bytes skins/classic/images/watermark.gif | Bin 0 -> 10237 bytes skins/classic/includes/header.html | 2 + skins/classic/includes/links.html | 13 + skins/classic/includes/messagetoolbar.html | 65 + skins/classic/includes/settingstabs.html | 8 + skins/classic/includes/taskbar.html | 7 + skins/classic/mail.css | 1539 ++++++++++++++++++++++ skins/classic/pngbehavior.htc | 84 ++ skins/classic/print.css | 137 ++ skins/classic/safari.css | 22 + skins/classic/settings.css | 215 +++ skins/classic/splitter.js | 203 +++ skins/classic/templates/about.html | 35 + skins/classic/templates/addressbook.html | 110 ++ skins/classic/templates/compose.html | 160 +++ skins/classic/templates/contact.html | 29 + skins/classic/templates/contactadd.html | 41 + skins/classic/templates/contactedit.html | 41 + skins/classic/templates/contactsearch.html | 18 + skins/classic/templates/error.html | 16 + skins/classic/templates/folderedit.html | 26 + skins/classic/templates/folders.html | 62 + skins/classic/templates/identities.html | 46 + skins/classic/templates/identityedit.html | 33 + skins/classic/templates/importcontacts.html | 26 + skins/classic/templates/login.html | 51 + skins/classic/templates/mail.html | 203 +++ skins/classic/templates/message.html | 70 + skins/classic/templates/messageerror.html | 78 ++ skins/classic/templates/messagepart.html | 25 + skins/classic/templates/messagepreview.html | 20 + skins/classic/templates/messageprint.html | 19 + skins/classic/templates/plugin.html | 23 + skins/classic/templates/settings.html | 41 + skins/classic/templates/settingsedit.html | 22 + skins/classic/watermark.html | 19 + 117 files changed, 6376 insertions(+) create mode 100644 skins/classic/README create mode 100644 skins/classic/addressbook.css create mode 100644 skins/classic/common.css create mode 100644 skins/classic/editor_content.css create mode 100644 skins/classic/functions.js create mode 100644 skins/classic/googiespell.css create mode 100644 skins/classic/ie6hacks.css create mode 100644 skins/classic/iehacks.css create mode 100644 skins/classic/images/abook_toolbar.gif create mode 100644 skins/classic/images/abook_toolbar.png create mode 100644 skins/classic/images/blank.gif create mode 100644 skins/classic/images/buttons/add_act.png create mode 100644 skins/classic/images/buttons/add_pas.png create mode 100644 skins/classic/images/buttons/add_sel.png create mode 100644 skins/classic/images/buttons/bg.gif create mode 100644 skins/classic/images/cleardot.png create mode 100644 skins/classic/images/contactpic.png create mode 100644 skins/classic/images/dbutton.png create mode 100644 skins/classic/images/dimple.png create mode 100644 skins/classic/images/display/icons.gif create mode 100644 skins/classic/images/display/icons.png create mode 100644 skins/classic/images/display/loading.gif create mode 100644 skins/classic/images/display/loading_blue.gif create mode 100644 skins/classic/images/favicon.ico create mode 100644 skins/classic/images/googiespell/change_lang.gif create mode 100644 skins/classic/images/googiespell/indicator.gif create mode 100644 skins/classic/images/googiespell/ok.gif create mode 100644 skins/classic/images/googiespell/spellc.gif create mode 100644 skins/classic/images/icons/attachment.png create mode 100644 skins/classic/images/icons/blank.gif create mode 100644 skins/classic/images/icons/collapsed.png create mode 100644 skins/classic/images/icons/columnpicker.gif create mode 100644 skins/classic/images/icons/delete.png create mode 100644 skins/classic/images/icons/deleted.png create mode 100644 skins/classic/images/icons/dot.png create mode 100644 skins/classic/images/icons/down_small.gif create mode 100644 skins/classic/images/icons/expanded.png create mode 100644 skins/classic/images/icons/extwin.png create mode 100644 skins/classic/images/icons/flagged.png create mode 100644 skins/classic/images/icons/folders.gif create mode 100644 skins/classic/images/icons/folders.png create mode 100644 skins/classic/images/icons/forwarded.png create mode 100644 skins/classic/images/icons/forwarded_replied.png create mode 100644 skins/classic/images/icons/glass.gif create mode 100644 skins/classic/images/icons/glass.png create mode 100644 skins/classic/images/icons/glass_roll.png create mode 100644 skins/classic/images/icons/groupactions.gif create mode 100644 skins/classic/images/icons/groupactions.png create mode 100644 skins/classic/images/icons/minus.gif create mode 100644 skins/classic/images/icons/plus.gif create mode 100644 skins/classic/images/icons/rename.png create mode 100644 skins/classic/images/icons/replied.png create mode 100644 skins/classic/images/icons/reset.gif create mode 100644 skins/classic/images/icons/silhouette.png create mode 100644 skins/classic/images/icons/sort.gif create mode 100644 skins/classic/images/icons/unflagged.png create mode 100644 skins/classic/images/icons/unread.png create mode 100644 skins/classic/images/icons/unread_children.png create mode 100644 skins/classic/images/icons/up_small.gif create mode 100644 skins/classic/images/listheader.gif create mode 100644 skins/classic/images/mail_footer.gif create mode 100644 skins/classic/images/mail_footer.png create mode 100644 skins/classic/images/mail_toolbar.gif create mode 100644 skins/classic/images/mail_toolbar.png create mode 100644 skins/classic/images/messageactions.gif create mode 100644 skins/classic/images/messageactions.png create mode 100644 skins/classic/images/messageicons.gif create mode 100644 skins/classic/images/messageicons.png create mode 100644 skins/classic/images/pagenav.gif create mode 100644 skins/classic/images/quota-colors.png create mode 100644 skins/classic/images/quota.gif create mode 100644 skins/classic/images/quota.png create mode 100644 skins/classic/images/roundcube_logo.png create mode 100644 skins/classic/images/searchfield.gif create mode 100644 skins/classic/images/tabs-left.gif create mode 100644 skins/classic/images/tabs-right.gif create mode 100644 skins/classic/images/taskbar.gif create mode 100644 skins/classic/images/taskbar.png create mode 100644 skins/classic/images/taskicons.gif create mode 100644 skins/classic/images/taskicons.png create mode 100644 skins/classic/images/tree.gif create mode 100644 skins/classic/images/watermark.gif create mode 100644 skins/classic/includes/header.html create mode 100644 skins/classic/includes/links.html create mode 100644 skins/classic/includes/messagetoolbar.html create mode 100644 skins/classic/includes/settingstabs.html create mode 100644 skins/classic/includes/taskbar.html create mode 100644 skins/classic/mail.css create mode 100644 skins/classic/pngbehavior.htc create mode 100644 skins/classic/print.css create mode 100644 skins/classic/safari.css create mode 100644 skins/classic/settings.css create mode 100644 skins/classic/splitter.js create mode 100644 skins/classic/templates/about.html create mode 100644 skins/classic/templates/addressbook.html create mode 100644 skins/classic/templates/compose.html create mode 100644 skins/classic/templates/contact.html create mode 100644 skins/classic/templates/contactadd.html create mode 100644 skins/classic/templates/contactedit.html create mode 100644 skins/classic/templates/contactsearch.html create mode 100644 skins/classic/templates/error.html create mode 100644 skins/classic/templates/folderedit.html create mode 100644 skins/classic/templates/folders.html create mode 100644 skins/classic/templates/identities.html create mode 100644 skins/classic/templates/identityedit.html create mode 100644 skins/classic/templates/importcontacts.html create mode 100644 skins/classic/templates/login.html create mode 100644 skins/classic/templates/mail.html create mode 100644 skins/classic/templates/message.html create mode 100644 skins/classic/templates/messageerror.html create mode 100644 skins/classic/templates/messagepart.html create mode 100644 skins/classic/templates/messagepreview.html create mode 100644 skins/classic/templates/messageprint.html create mode 100644 skins/classic/templates/plugin.html create mode 100644 skins/classic/templates/settings.html create mode 100644 skins/classic/templates/settingsedit.html create mode 100644 skins/classic/watermark.html (limited to 'skins/classic') diff --git a/skins/classic/README b/skins/classic/README new file mode 100644 index 000000000..ba690d733 --- /dev/null +++ b/skins/classic/README @@ -0,0 +1,23 @@ +ROUNDCUBE WEBMAIL DEFAULT SKIN +============================== + +This skin package contains the current development theme of the Roundcube +Webmail software. It can be used, modified and redistributed according to +the terms described in the LICENSE section. + +For information about building or modifiying Roundcube skins please visit +http://trac.roundcube.net/wiki/Doc_Skins + +The theme uses icons originally designed by Stephen Horlander and Kevin Gerich +for Mozilla.org. In case of redistribution giving credit to these artwork +creators is mandatory. + + +LICENSE +------- +The contents of this folder are subject to the Creative Commons +Attribution-ShareAlike License. It is allowed to copy, distribute, +transmit and to adapt the work by keeping credits to the original +autors in the README file. +See http://creativecommons.org/licenses/by-sa/3.0/ for details. + diff --git a/skins/classic/addressbook.css b/skins/classic/addressbook.css new file mode 100644 index 000000000..a398325b4 --- /dev/null +++ b/skins/classic/addressbook.css @@ -0,0 +1,413 @@ +/***** Roundcube|Mail address book task styles *****/ + +#abooktoolbar +{ + position: absolute; + top: 45px; + left: 225px; + height: 35px; +} + +#abooktoolbar a +{ + padding-right: 10px; +} + +#abooktoolbar a.button, +#abooktoolbar a.buttonPas, +#abooktoolbar span.separator { + display: block; + float: left; + width: 32px; + height: 32px; + padding: 0; + margin-right: 10px; + overflow: hidden; + background: url(images/abook_toolbar.png) 0 0 no-repeat transparent; + opacity: 0.99; /* this is needed to make buttons appear correctly in Chrome */ +} + +#abooktoolbar a.buttonPas { + opacity: 0.35; +} + +#abooktoolbar a.addcontactSel { + background-position: 0 -32px; +} + +#abooktoolbar a.compose { + background-position: -32px 0; +} + +#abooktoolbar a.composeSel { + background-position: -32px -32px; +} + +#abooktoolbar a.delete { + background-position: -64px 0; +} + +#abooktoolbar a.deleteSel { + background-position: -64px -32px; +} + +#abooktoolbar a.import { + background-position: -96px 0; +} + +#abooktoolbar a.importSel { + background-position: -96px -32px; +} + +#abooktoolbar a.export { + background-position: -128px 0; +} + +#abooktoolbar a.exportSel { + background-position: -128px -32px; +} + +#abooktoolbar span.separator { + width: 5px; + background-position: -162px 0; +} + +#abooktoolbar a.search { + background-position: -170px 0; +} + +#abooktoolbar a.searchSel { + background-position: -170px -32px; +} + +#abookcountbar +{ + margin-top: 4px; + margin-left: 4px; + min-width: 250px; +} + +#addressscreen +{ + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 205px; +} + +#directorylistbox +{ + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 195px; + border: 1px solid #999999; + background-color: #F9F9F9; + overflow: hidden; +} + +#directorylistbox input +{ + margin: 0px; + font-size: 11px; + width: 90%; +} + +#addresslist +{ + position: absolute; + top: 0; + bottom: 0; + border: 1px solid #999999; + background-color: #F9F9F9; + overflow: hidden; +} + +#contactgroupslist +{ + border-top: 1px solid #999; +} + +#addresslist +{ + left: 0px; + width: 280px; +} + +#directorylist +{ + list-style: none; + margin: 0; + padding: 0; + background-color: #FFFFFF; +} + +#directorylist li +{ + display: block; + font-size: 11px; + background: url(images/icons/folders.png) 5px -108px no-repeat; + border-bottom: 1px solid #EBEBEB; + white-space: nowrap; +} + +#directorylist li a +{ + cursor: default; + display: block; + padding-left: 25px; + padding-top: 2px; + padding-bottom: 2px; + text-decoration: none; + white-space: nowrap; +} + +#directorylist li.contactgroup +{ + padding-left: 15px; + background-position: 20px -143px; +} + +#directorylist li.contactsearch +{ + background-position: 6px -162px; +} + +#directorylist li.selected +{ + background-color: #929292; + border-bottom: 1px solid #898989; +} + +#directorylist li.selected a +{ + color: #FFF; + font-weight: bold; +} + +#directorylist li.droptarget +{ + background-color: #FFFFA6; +} + +#contacts-table +{ + width: 100%; + table-layout: fixed; +} + +#contacts-table tbody td +{ + cursor: default; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; +} + +#contacts-box +{ + position: absolute; + top: 0px; + left: 290px; + right: 0px; + bottom: 0px; + border: 1px solid #999999; + overflow: hidden; +} + +body.iframe, +#contact-frame +{ + background-color: #F2F2F2; + border: none; + min-height: 100%; /* Chrome 14 bug */ +} + +#contacttabs +{ + position: relative; + padding-bottom: 12px; +} + +#contacttabs div.tabsbar { + top: 0; + left: 2px; +} + +#contacttabs fieldset.tabbed { + position: relative; + top: 22px; + min-height: 5em; +} + +#contacthead +{ + margin-bottom: 1em; + border: 0; + padding: 0; +} + +#contacthead .names span.namefield, +#contacthead .names input +{ + font-size: 140%; +} + +#contacthead .displayname span.namefield +{ + font-size: 120%; +} + +#contacthead span.nickname:before, +#contacthead span.nickname:after, +#contacthead input.ff_nickname:before, +#contacthead input.ff_nickname:after +{ + content: '"'; +} + +#contacthead input +{ + margin-right: 6px; + margin-bottom: 0.2em; +} + +#contacthead .names input, +#contacthead .addnames input +{ + width: 180px; +} + +#contacthead input.ff_prefix, +#contacthead input.ff_suffix +{ + width: 90px; +} + +#contacthead .addnames input.ff_name +{ + width: 374px; +} + +#contactphoto +{ + float: right; + width: 60px; + margin-left: 3em; + margin-right: 4px; +} + +#contactpic +{ + width: 60px; + min-height: 60px; + border: 1px solid #ccc; + background: white; +} + +#contactpic img { + width: 60px; +} + +#contactpic.droptarget.hover { + background-color: #f0f0ee; + box-shadow: 0 0 5px 0 #999; + -moz-box-shadow: 0 0 5px 0 #999; + -o-box-shadow: 0 0 5px 0 #999; +} + +#contactphoto .formlinks +{ + margin-top: 0.5em; + text-align: center; +} + +fieldset.contactfieldgroup +{ + border: 0; + margin: 0.5em 0; + padding: 0.2em 2px; +} + +fieldset.contactfieldgroupmulti +{ + padding: 0.5em 2px; +} + +fieldset.contactfieldgroup legend +{ + font-size: 0.9em; +} + +.contactfieldgroup .row +{ + position: relative; + margin: 0.2em 0; +} + +.contactfieldgroup .contactfieldlabel +{ + position: absolute; + top: 0; + left: 2px; + width: 110px; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + color: #666; + font-weight: bold; +} + +.contactfieldgroup .contactfieldlabel select +{ + width: 100%; + background: none; + border: 0; + color: #666; + font-weight: bold; + padding-left: 0; +} + +.contactfieldgroup .contactfieldcontent +{ + padding-left: 120px; + min-height: 1em; + line-height: 1.3em; +} + +.contactfieldgroup .contactfield { + line-height: 1.3em; +} + +.contactcontrolleraddress .contactfieldcontent input { + margin-bottom: 0.1em; +} + +.contactfieldcontent .contactfieldbutton { + vertical-align: middle; + margin-left: 0.5em; +} + +#upload-form +{ + padding: 6px; +} + +#upload-form div +{ + padding: 2px; +} + +#sourcename +{ + color: #666; + font-size: 10px; + margin: -5px 0 8px 2px; +} + +#contact-title +{ + /* fixes issue where tabs were overlapping box title when scrolling */ + z-index: 10; +} diff --git a/skins/classic/common.css b/skins/classic/common.css new file mode 100644 index 000000000..735a73614 --- /dev/null +++ b/skins/classic/common.css @@ -0,0 +1,977 @@ +/***** Roundcube|Mail basic styles *****/ + +body +{ + font-family: "Lucida Grande", Verdana, Arial, Helvetica, sans-serif; + margin: 8px; + background-color: #F6F6F6; + color: #000; + font-size: 12px; +} + +body.iframe +{ + margin: 20px 0 0 0; + background-color: #FFF; +} + +body.extwin +{ + margin: 10px; +} + +td, th, div, p, select, input, textarea +{ + font-size: 12px; + font-family: inherit; +} + +th +{ + font-weight: normal; +} + +h3 +{ + font-size: 18px; +} + +a, a:active, a:visited +{ + color: #000; + outline: none; +} + +a.button, a.button:visited, a.tab, a.tab:visited, a.axislist +{ + color: #000; + text-decoration: none; +} + +a.tab +{ + width: 80px; + display: block; + text-align: center; +} + +hr +{ + height: 1px; + background-color: #666; + border-style: none; +} + +input[type="text"], +input[type="button"], +input[type="password"], +textarea +{ + border: 1px solid #666; + color: #333; + background-color: #FFF; +} + +input, textarea +{ + color: black; + padding: 1px 3px; +} + +input.placeholder, +textarea.placeholder, +input:-moz-placeholder, +textarea:-moz-placeholder +{ + color: #aaa; +} + +input.button +{ + height: 20px; + color: #333333; + font-size: 12px; + padding-left: 8px; + padding-right: 8px; + background: url(images/buttons/bg.gif) repeat-x #f0f0f0; + border: 1px solid #a4a4a4; +} + +input.button:hover +{ + color: black; +} + +input.button[disabled], +input.button[disabled]:hover +{ + color: #aaa; + border-color: #ccc; +} + +input.mainaction +{ + font-weight: bold; + border: 1px solid #999; +} + +img +{ + border: 0; +} + +.alttext +{ + font-size: 11px; +} + +.hint +{ + color: #666; + font-size: 11px; +} + +.formlinks a, +.formlinks a:visited +{ + color: #CC0000; + font-size: 11px; + text-decoration: none; +} + +.formlinks a.disabled, +.formlinks a.disabled:visited +{ + color: #999999; +} + +/** common user interface objects */ + +#mainscreen +{ + position: absolute; + top: 85px; + right: 20px; + bottom: 20px; + left: 20px; +} + +body > #logo +{ + margin-left: 12px; + cursor: pointer; +} + +#taskbar +{ + position: absolute; + top: 0px; + right: 0px; + height: 24px; + left: 250px; + background: url(images/taskbar.png) top right no-repeat; + padding: 10px 6px 5px 0px; + text-align: right; + white-space: nowrap; + z-index: 2; +} + +#taskbar a +{ + font-size: 11px; + color: #666666; + text-decoration: none; + padding: 6px 12px 6px 26px; + background: url(images/taskicons.gif) no-repeat; +} + +#taskbar a:hover +{ + color: #333333; +} + +#taskbar a.button-mail +{ + background-position: 0 0; +} + +#taskbar a.button-addressbook +{ + background-position: 0 -25px; +} + +#taskbar a.button-settings +{ + background-position: 0 -50px; +} + +#taskbar a.button-logout +{ + background-position: 0 -75px; +} + +body > #message +{ + position: absolute; + display: none; + top: -1px; + margin-left: -225px; + left: 50%; + z-index: 5000; + opacity: 0.85; +} + +body > #message div +{ + width: 400px; + margin: 0px; + min-height: 22px; + padding: 8px 10px 8px 46px; +} + +body > #message div.notice, +body > #messagebody .part-notice, +#message-objects div.notice +{ + background: url(images/display/icons.png) 6px 3px no-repeat; + background-color: #F7FDCB; + border: 1px solid #C2D071; +} + +body > #message div.error, +body > #message div.warning, +#message-objects div.warning, +#message-objects div.error +{ + background: url(images/display/icons.png) 6px -97px no-repeat; + background-color: #EF9398; + border: 1px solid #DC5757; +} + +body > #message div.confirmation, +#message-objects div.confirmation +{ + background: url(images/display/icons.png) 6px -47px no-repeat; + background-color: #A6EF7B; + border: 1px solid #76C83F; +} + +body > #message div.loading, +#message-objects div.loading +{ + background: url(images/display/loading.gif) 6px 3px no-repeat; + background-color: #EBEBEB; + border: 1px solid #CCCCCC; +} + +body > #message a +{ + cursor: pointer; + text-decoration: underline; +} + +.box +{ + border: 1px solid #999; +} + +.boxtitle +{ + height: 12px !important; + padding: 2px 10px 5px 5px; + border-bottom: 1px solid #999; + color: #333; + font-size: 11px; + font-weight: bold; + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; + white-space: nowrap; + background: url(images/listheader.gif) top left repeat-x #CCC; +} + +.boxtitle .rightalign +{ + float: right; +} + +body.iframe .boxtitle +{ + position: fixed; + top: 0; + left: 0; + width: 100%; +} + +.boxcontent +{ + padding: 15px 10px 10px 10px; + background-color: #F2F2F2; +} + +.boxcontent table td.title +{ + color: #666; + padding-right: 10px; +} + +.boxlistcontent +{ + position: absolute; + top: 20px; + bottom: 22px; + left: 0; + right: 0; + width: 100%; + overflow-y: auto; + overflow-x: hidden; +} + +.boxsubject +{ + position: absolute; + top: 0px; + left: 0px; + right: 0px; + overflow: hidden; + height: 22px; + border-bottom: 1px solid #999; + background: url(images/listheader.gif) top left repeat-x #CCC; +} + +.boxfooter +{ + position: absolute; + bottom: 0px; + left: 0px; + right: 0px; + overflow: hidden; + height: 22px; + border-top: 1px solid #999; + background: url(images/listheader.gif) top left repeat-x #CCC; +} + +.boxfooter a.button, +.boxfooter a.buttonPas +{ + display: block; + float: left; + width: 34px; + height: 22px; + padding: 0px; + margin: 0; + overflow: hidden; + background: url(images/icons/groupactions.png) 0 0 no-repeat transparent; + opacity: 0.99; /* this is needed to make buttons appear correctly in Chrome */ +} + +.boxfooter a.groupactions +{ + background-position: 0 -26px; +} + +.boxfooter a.delgroup { + background-position: 0 -49px; +} + +.boxfooter a.buttonPas +{ + opacity: 0.35; +} + +.pagenav span +{ + color: #444; + font-size: 11px; + text-shadow: white 1px 1px; + white-space: nowrap; +} + +.pagenav a.button, +.pagenav a.buttonPas +{ + display: block; + float: left; + width: 11px; + height: 11px; + padding: 0; + margin: 1px; + margin-top: 2px; + overflow: hidden; + background: url(images/pagenav.gif) 0 0 no-repeat transparent; + opacity: 0.99; /* this is needed to make buttons appear correctly in Chrome */ +} + +.pagenav a.buttonPas { + opacity: 0.35; +} + +.pagenav a.firstpageSel { + background-position: 0 -11px; +} + +.pagenav a.prevpage { + background-position: -11px 0; +} + +.pagenav a.prevpageSel { + background-position: -11px -11px; +} + +.pagenav a.nextpage { + background-position: -22px 0; +} + +.pagenav a.nextpageSel { + background-position: -22px -11px; +} + +.pagenav a.lastpage { + background-position: -33px 0; +} + +.pagenav a.lastpageSel { + background-position: -33px -11px; +} + +.splitter +{ + user-select: none; + -moz-user-select: none; + -khtml-user-select: none; + position: absolute; + background: url(images/dimple.png) center no-repeat; +} + +.splitter-h +{ + cursor: n-resize; cursor: row-resize; + background-position: center 2px; +} + +.splitter-v +{ + cursor: e-resize; cursor: col-resize; + background-position: 2px center; +} + +.popupmenu +{ + position: absolute; + top: 32px; + left: 90px; + width: auto; + display: none; + background-color: #fff; + background-color: rgba(255, 255, 255, 0.95); + border: 1px solid #999; + padding: 4px; + z-index: 240; + border-radius: 3px; + -moz-border-radius: 3px; + -webkit-border-radius: 3px; + -moz-box-shadow: 1px 1px 12px #999; + -webkit-box-shadow: #999 1px 1px 12px; +} + +.popupmenu ul +{ + margin: -4px 0; + padding: 0; + list-style: none; +} + +.popupmenu ul li +{ + font-size: 11px; + white-space: nowrap; + min-width: 100px; + margin: 3px -4px; +} + +.popupmenu li a +{ + display: block; + color: #a0a0a0; + padding: 2px 10px; + text-decoration: none; + min-height: 14px; + background: transparent; +} + +.popupmenu li a.active, +.popupmenu li a.active:active, +.popupmenu li a.active:visited +{ + color: #333; +} + +.popupmenu li a.active:hover, +.popupmenu.selectable li a.selected:hover +{ + color: #fff; + background-color: #c00; +} + +.popupmenu li.block input +{ + float: left; +} + +.popupmenu.selectable li a.selected +{ + background: url(images/messageicons.png) 2px -372px no-repeat; +} + +.popupmenu.selectable li a +{ + padding-left: 20px; +} + +.darkbg +{ + background-color: #F2F2F2 !important; +} + +.dropbutton, +.dropbutton span +{ + float: left; + height: 32px; +} + +.dropbutton:hover +{ +/* background: url(images/dbutton.png) 0 0 no-repeat transparent; */ +} + +.dropbutton span +{ + width: 9px; + background: url(images/dbutton.png) -53px 0 no-repeat transparent; +} + +.dropbutton span:hover +{ + cursor: pointer; + background-position: -74px 0; +} + +img.uploading +{ + width: 16px; + height: 16px; +} + +/***** common table settings ******/ + +table.records-table thead tr td +{ + height: 20px; + padding: 0px 4px 0px 4px; + vertical-align: middle; + border-bottom: 1px solid #999999; + color: #333333; + background: url(images/listheader.gif) top left repeat-x #CCC; + font-size: 11px; + font-weight: bold; +} + +table.records-table tbody tr td +{ + height: 16px; + padding: 2px 4px 2px 4px; + font-size: 11px; + white-space: nowrap; + border-bottom: 1px solid #EBEBEB; + overflow: hidden; + text-align: left; +} + +table.records-table tr +{ + background-color: #FFFFFF; +} + +table.records-table tr.selected td +{ + color: #FFFFFF; + background-color: #CC3333; +} + +table.records-table tr.focused td +{ +} + +table.records-table tr.unfocused td +{ + color: #FFFFFF; + background-color: #929292; +} + + +/***** mac-style quicksearch field *****/ + +#quicksearchbar +{ + position: absolute; + top: 55px; + right: 10px; + width: 190px; + height: 20px; + text-align: right; + background: url(images/searchfield.gif) top left no-repeat; +} + +#searchreset +{ + position: absolute; + top: 3px; + right: 12px; + text-decoration: none; +} + +#searchmenulink +{ + position: absolute; + top: 3px; + right: 168px; +} + +#quicksearchbar img +{ + vertical-align: middle; +} + +#quicksearchbox +{ + position: absolute; + top: 2px; + left: 24px; + width: 140px; + height: 15px; + font-size: 11px; + padding: 0px; + border: none; +} + +/***** roundcube webmail pre-defined classes *****/ + +#rcmversion +{ + position: absolute; + bottom: 10px; + right: 20px; + text-align: right; + white-space: nowrap; + font-size: 8pt; + color: #999; +} + +#rcmdraglayer +{ + min-width: 300px; + width: auto !important; + width: 300px; + border: 1px solid #999999; + background-color: #fff; + padding-left: 8px; + padding-right: 8px; + padding-top: 3px; + padding-bottom: 3px; + font-size: 11px; + white-space: nowrap; + opacity: 0.82; + border-radius: 3px; + -moz-border-radius: 3px; + -webkit-border-radius: 3px; + -moz-box-shadow: 1px 1px 12px #999; + -webkit-box-shadow: #999 1px 1px 12px; +} + +.draglayercopy:before +{ + position: absolute; + bottom: -5px; + left: -6px; + content: " "; + width: 14px; + height: 14px; + background: url(images/messageactions.png) -2px -128px no-repeat; +} + +a.rcmContactAddress +{ + text-decoration: none; +} + +a.rcmContactAddress:hover +{ + text-decoration: underline; +} + +#rcmKSearchpane +{ + background-color: #F9F9F9; + border: 1px solid #CCCCCC; +} + +#rcmKSearchpane ul +{ + margin: 0px; + padding: 2px; + list-style-image: none; + list-style-type: none; +} + +#rcmKSearchpane ul li +{ + display: block; + height: 16px; + font-size: 11px; + padding-left: 6px; + padding-top: 2px; + padding-right: 6px; + white-space: nowrap; + cursor: pointer; +} + +#rcmKSearchpane ul li.selected +{ + color: #ffffff; + background-color: #CC3333; +} + +#login-form +{ + margin-left: auto; + margin-right: auto; + margin-top: 50px; + width: 400px; + border: 1px solid #999; +} + +#login-form table td.title +{ + text-align: right; + white-space: nowrap; +} + +#login-form table +{ + width: 1%; + margin: auto; +} + +#login-form table td.input input +{ + width: 200px; +} + +#login-bottomline +{ + width: 400px; + margin: 5em auto; + font-size: 85%; + text-align: center; + color: #666; +} + +#console +{ + opacity: 0.8; +} + +.disabled, +a.disabled +{ + color: #999; +} + +font.bold +{ + font-weight: bold; +} + + +/***** onclick menu list *****/ + +ul.toolbarmenu +{ + margin: -4px 0 -4px 0; + padding: 0; + list-style: none; +} + +ul.toolbarmenu li +{ + font-size: 11px; + white-space: nowrap; + min-width: 130px; + margin: 2px -4px; +} + +ul.toolbarmenu li a +{ + display: block; + color: #a0a0a0; + padding: 1px 12px 3px 28px; + text-decoration: none; + min-height: 14px; +} + +ul.toolbarmenu li a.active, +ul.toolbarmenu li a.active:active, +ul.toolbarmenu li a.active:visited +{ + color: #333; +} + +ul.toolbarmenu li input +{ + vertical-align: middle; +} + +ul.toolbarmenu li hr +{ + color: #ccc; + width: 130px; + height: 1px; + margin: 2px 1px 2px 1px; +} + +ul.toolbarmenu li img +{ + float: left; + margin: 0 2px; +} + +div.popupmenu ul li.separator_below, +ul.toolbarmenu li.separator_below +{ + border-bottom: 1px solid #ccc; + margin-bottom: 2px; + padding-bottom: 2px; +} + +div.popupmenu ul li.separator_above, +ul.toolbarmenu li.separator_above +{ + border-top: 1px solid #ccc; + margin-top: 2px; + padding-top: 2px; +} + +#searchmenu +{ + width: 160px; +} + +#searchmenu ul.toolbarmenu +{ + margin: 0; +} + +#searchmenu ul.toolbarmenu li +{ + margin: 1px 4px 1px; +} + + +/***** tabbed interface elements *****/ + +div.tabsbar, +#tabsbar +{ + position: absolute; + top: 50px; + left: 220px; + right: 20px; + height: 22px; + border-bottom: 1px solid #999999; + white-space: nowrap; +} + +div.tabsbar +{ + top: 35px; + left: 12px; + right: 12px; +} + +span.tablink, +span.tablink-selected +{ + float: left; + height: 23px !important; + height: 22px; + overflow: hidden; + background: url(images/tabs-left.gif) top left no-repeat; +} + +span.tablink +{ + cursor: pointer; +} + +span.tablink-selected +{ + cursor: default; + background-position: 0px -23px; +} + +span.tablink a, +span.tablink-selected a +{ + display: inline-block; + padding: 5px 10px 0 5px; + margin-left: 5px; + height: 23px; + color: #555555; + max-width: 185px; + text-decoration: none; + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; + background: url(images/tabs-right.gif) top right no-repeat; +} + +span.tablink-selected a +{ + cursor: inherit; + color: #000000; + background-position: right -23px; +} + +fieldset +{ + margin-bottom: 1em; + border: 1px solid #999999; + padding: 4px 8px 9px 8px; +} + +legend +{ + color: #999999; +} + +fieldset.tabbed +{ + margin-top: 22px; + padding-top: 12px; +} + +.quota_text { + text-align: center; + font-size: 10px; + color: #666; + border: 1px solid #999; + 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_text_high { color: white; } +.quota_text_mid { color: #666; } +.quota_text_low { color: #666; } diff --git a/skins/classic/editor_content.css b/skins/classic/editor_content.css new file mode 100644 index 000000000..aabed07b5 --- /dev/null +++ b/skins/classic/editor_content.css @@ -0,0 +1,31 @@ +/* This file contains the CSS data for the editable area(iframe) of TinyMCE */ + +body, td, pre { + font-family: "Lucida Grande", Verdana, Arial, Helvetica, sans-serif; + font-size: 12px; +} + +body { + background-color: #FFFFFF; + margin-left: 4px; + margin-right: 4px; + margin-top: 2px; +} + +pre +{ + margin: 0; + padding: 0; + white-space: -moz-pre-wrap !important; + white-space: pre-wrap !important; + white-space: pre; + word-wrap: break-word; /* IE (and Safari) */ +} + +blockquote +{ + padding-left: 5px; + border-left: #1010ff 2px solid; + margin-left: 5px; + width: 100%; +} diff --git a/skins/classic/functions.js b/skins/classic/functions.js new file mode 100644 index 000000000..48f9acd75 --- /dev/null +++ b/skins/classic/functions.js @@ -0,0 +1,831 @@ +/** + * Roundcube functions for default skin interface + */ + +/** + * Settings + */ + +function rcube_init_settings_tabs() +{ + var el, cl, container = $('#tabsbar'), + last_tab = $('span:last', container), + tab = '#settingstabdefault', + action = window.rcmail && rcmail.env.action ? rcmail.env.action : null; + + // move About tab to the end + if (last_tab && last_tab.attr('id') != 'settingstababout' && (el = $('#settingstababout'))) { + cl = el.clone(true); + el.remove(); + last_tab.after(cl); + } + + // get selected tab + if (action) + tab = '#settingstab' + (action == 'preferences' ? 'default' : (action.indexOf('identity')>0 ? 'identities' : action.replace(/\./g, ''))); + + $(tab).addClass('tablink-selected'); + $('a', tab).removeAttr('onclick').click(function() { return false; }); +} + +function rcube_show_advanced(visible) +{ + $('tr.advanced').css('display', (visible ? (bw.ie ? 'block' : 'table-row') : 'none')); +} + +// Fieldsets-to-tabs converter +// Warning: don't place "caller" + diff --git a/skins/classic/includes/taskbar.html b/skins/classic/includes/taskbar.html new file mode 100644 index 000000000..dfb547b88 --- /dev/null +++ b/skins/classic/includes/taskbar.html @@ -0,0 +1,7 @@ +
+ + + + + +
\ No newline at end of file diff --git a/skins/classic/mail.css b/skins/classic/mail.css new file mode 100644 index 000000000..cf7b69a38 --- /dev/null +++ b/skins/classic/mail.css @@ -0,0 +1,1539 @@ +/***** Roundcube|Mail mail task styles *****/ + + +#messagetoolbar +{ + position: absolute; + top: 47px; + left: 205px; + right: 10px; + height: 35px; + min-width: 650px; + white-space: nowrap; +/* border: 1px solid #cccccc; */ +} + +#messagetoolbar a, +#messagetoolbar select +{ + display: block; + float: left; + padding-right: 10px; +} + +#messagetoolbar a.button, +#messagetoolbar a.buttonPas { + display: block; + float: left; + width: 32px; + height: 32px; + padding: 0; + margin: 0 5px; + overflow: hidden; + background: url(images/mail_toolbar.png) 0 0 no-repeat transparent; + opacity: 0.99; /* this is needed to make buttons appear correctly in Chrome */ +} + +#messagetoolbar a.buttonPas { + opacity: 0.35; +} + +#messagetoolbar a.button.selected { + background-color: #ddd; + margin-left: 4px; + margin-right: 4px; + margin-top: -1px; + border: 1px solid #ccc; + border-radius: 3px; + -moz-border-radius: 3px; + -webkit-border-radius: 3px; +} + +#messagetoolbar a.checkmailSel { + background-position: 0 -32px; +} + +#messagetoolbar a.back { + background-position: -32px 0; +} + +#messagetoolbar a.backSel { + background-position: -32px -32px; +} + +#messagetoolbar a.compose { + background-position: -64px 0; +} + +#messagetoolbar a.composeSel { + background-position: -64px -32px; +} + +#messagetoolbar a.reply { + background-position: -96px 0; +} + +#messagetoolbar a.replySel { + background-position: -96px -32px; +} + +#messagetoolbar a.replyAll { + background-position: -128px 0; +} + +#messagetoolbar a.replyAllSel { + background-position: -128px -32px; +} + +#messagetoolbar a.forward { + background-position: -160px 0; +} + +#messagetoolbar a.forwardSel { + background-position: -160px -32px; +} + +#messagetoolbar a.delete { + background-position: -192px 0; +} + +#messagetoolbar a.deleteSel { + background-position: -192px -32px; +} + +#messagetoolbar a.markmessage { + background-position: -256px 0; +} + +#messagetoolbar a.messagemenu { + background-position: -288px 0; +} + +#messagetoolbar a.spellcheck { + background-position: -384px 0; +} + +#messagetoolbar a.spellcheckSel { + background-position: -384px -32px; +} + +#messagetoolbar a.attach { + background-position: -352px 0; +} + +#messagetoolbar a.attachSel { + background-position: -352px -32px; +} + +#messagetoolbar a.insertsig { + background-position: -448px 0; +} + +#messagetoolbar a.insertsigSel { + background-position: -448px -32px; +} + +#messagetoolbar a.savedraft { + background-position: -322px 0; +} + +#messagetoolbar a.savedraftSel { + background-position: -322px -32px; +} + +#messagetoolbar a.send { + background-position: -416px 0; +} + +#messagetoolbar a.sendSel { + background-position: -416px -32px; +} + +#messagetoolbar select.mboxlist +{ + position: relative; + margin: 0 8px; + top: 7px; +} + +#messagetoolbar select.mboxlist option +{ + padding-left: 15px; +} + +#messagetoolbar select.mboxlist option[value=""] +{ + padding-left: 2px; +} + +#messagemenu li a.active:hover, +#markmessagemenu li a.active:hover +{ + color: #fff; + background-color: #c00; +} + +#messagemenu li a +{ + background: url(images/messageactions.png) no-repeat 7px 0; + background-position: 7px 20px; +} + +#messagemenu li a.printlink +{ + background-position: 7px 1px; +} + +#messagemenu li a.downloadlink +{ + background-position: 7px -17px; +} + +#messagemenu li a.sourcelink +{ + background-position: 7px -35px; +} + +#messagemenu li a.openlink +{ + background-position: 7px -53px; +} + +#messagemenu li a.editlink +{ + background-position: 7px -71px; +} + +#markmessagemenu li a, +#compose-attachments li a +{ + background: url(images/messageicons.png) no-repeat; +} + +#markmessagemenu li a.readlink +{ + background-position: 7px -51px; +} + +#markmessagemenu li a.unreadlink +{ + background-position: 7px -119px; +} + +#markmessagemenu li a.flaggedlink +{ + background-position: 7px -153px; +} + +#markmessagemenu li a.unflaggedlink +{ + background-position: 7px -136px; +} + +#searchfilter +{ + white-space: nowrap; + position: absolute; + right: 198px; + vertical-align: middle; +} + +#searchfilter label +{ + font-size: 11px; +} + +#mailleftcontainer +{ + position: absolute; + top: 0; + left: 0; + bottom: 0; + width: 195px; +} + +#mailrightcontainer +{ + position: absolute; + top: 0; + left: 170px; + bottom: 0; + right: 0; + min-width: 600px; +} + +#mailrightcontent +{ + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; +} + +#messagepartcontainer +{ + position: absolute; + top: 80px; + left: 20px; + right: 20px; + bottom: 20px; +} + +#mailcontframe +{ + position: absolute; + width: 100%; + top: 0; + bottom: 0; + border: 1px solid #999999; + background-color: #F9F9F9; + overflow: hidden; +} + +#mailpreviewframe +{ + position: absolute; + width: 100%; + top: 205px; + bottom: 0px; + border: 1px solid #999999; + background-color: #F9F9F9; + overflow: hidden; +} + +#messagecontframe +{ + position: relative; + top: 0px; + left: 0px; + right: 0px; + bottom: 0px; + width: 100%; + height: 100%; + min-height: 100%; /* Chrome 14 bug */ +} + +#messagepartframe +{ + width: 100%; + height: 100%; + min-height: 100%; /* Chrome 14 bug */ + border: 1px solid #999999; + background-color: #F9F9F9; +} + + +#partheader +{ + position: absolute; + top: 10px; + left: 220px; + right: 20px; + height: 40px; +} + +#partheader table td +{ + padding-left: 2px; + padding-right: 4px; + vertical-align: middle; + font-size: 11px; +} + +#partheader table td.title +{ + color: #666666; + font-weight: bold; +} + + +/** mailbox list styles */ + +#mailboxlist-container +{ + position: absolute; + top: 0; + left: 0; + width: 100%; + bottom: 0; + border: 1px solid #999; + background-color: #F9F9F9; + overflow: hidden; +} + +#mailboxlist +{ + position:relative; + height: auto; + margin: 0px; + padding: 0px; + list-style-image: none; + list-style-type: none; + overflow: hidden; + white-space: nowrap; + background-color: #FFF; +} + +#mailboxlist li +{ + display: block; + position: relative; + font-size: 11px; + background: url(images/icons/folders.png) 5px 0 no-repeat; + border-bottom: 1px solid #EBEBEB; +} + +#mailboxlist li ul li:last-child +{ + 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) bottom right no-repeat; +} + +#mailboxlist li div.expanded +{ + background: url(images/icons/expanded.png) bottom right no-repeat; +} + +#mailboxlist li.inbox +{ + background-position: 5px -18px; +} + +#mailboxlist li.drafts +{ + background-position: 5px -37px; +} + +#mailboxlist li.sent +{ + background-position: 5px -54px; +} + +#mailboxlist li.junk +{ + background-position: 5px -73px; +} + +#mailboxlist li.trash +{ + background-position: 5px -91px; +} + +#mailboxlist li a +{ + cursor: default; + display: block; + position: relative; + padding-left: 25px; + padding-top: 2px; + padding-bottom: 2px; + text-decoration: none; + height: 15px; +} + +#mailboxlist li.unread +{ + font-weight: bold; +} + +#mailboxlist li.virtual > a +{ + color: #666; +} + +#mailboxlist li.recent > a +{ + color: #0066FF; +} + +#mailboxlist li.selected, +#mailboxlist li.droptarget li.selected +{ + background-color: #929292; +} + +#mailboxlist li.selected > a, +#mailboxlist li.droptarget li.selected a +{ + color: #FFF; + font-weight: bold; +} + +#mailboxlist li.droptarget +{ + background-color: #FFFFA6; +} + +/* styles for nested folders */ +#mailboxlist ul { + list-style: none; + padding: 0; + margin: 0; + border-top: 1px solid #EBEBEB; + padding-left: 15px; + background-position: 25px 1px; + background-color: #FFF; + color: blue; + font-weight: normal; +} + +#listcontrols +{ + position: relative; + white-space: nowrap; + line-height: 22px; + padding: 0 4px; + width: auto; + min-width: 300px; +} + +#listcontrols a, +#listcontrols span +{ + display: block; + float: left; + font-size: 11px; +} + +#listcontrols span input +{ + vertical-align: middle; +} + +#listcontrols a.button, +#listcontrols a.buttonPas +{ + display: block; + float: left; + width: 15px; + height: 15px; + padding: 0; + margin-top: 4px; + margin-right: 2px; + overflow: hidden; + background: url(images/mail_footer.png) 0 0 no-repeat transparent; + opacity: 0.99; /* this is needed to make buttons appear correctly in Chrome */ +} + +#listcontrols a.buttonPas +{ + opacity: 0.35; +} + +#listcontrols a.all { + background-position: -30px 0; +} + +#listcontrols a.allsel { + background-position: -30px -15px; +} + +#listcontrols a.page { + background-position: -135px 0; +} + +#listcontrols a.pagesel { + background-position: -135px -15px; +} + +#listcontrols a.unread { + background-position: -45px 0; +} + +#listcontrols a.unreadsel { + background-position: -45px -15px; +} + +#listcontrols a.invert { + background-position: -60px 0; +} + +#listcontrols a.invertsel { + background-position: -60px -15px; +} + +#listcontrols a.none { + background-position: -75px 0; +} + +#listcontrols a.nonesel { + background-position: -75px -15px; +} + +#listcontrols a.expand-all { + background-position: -90px 0; +} + +#listcontrols a.expand-allsel { + background-position: -90px -15px; +} + +#listcontrols a.collapse-all { + background-position: -105px 0; +} + +#listcontrols a.collapse-allsel { + background-position: -105px -15px; +} + +#listcontrols a.expand-unread { + background-position: -120px 0; +} + +#listcontrols a.expand-unreadsel { + background-position: -120px -15px; +} + +#countcontrols +{ + position: absolute; + top: 4px; + right: 4px; + white-space: nowrap; + font-size: 11px; +} + +#countcontrols a.button, +#countcontrols a.buttonPas +{ + float: right; +} + + +/** message list styles */ + +body.messagelist +{ + margin: 0px; + background-color: #F9F9F9; +} + +#messagelist +{ + width: 100%; + display: table; + table-layout: fixed; +} + +#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; + font-size: 11px; + font-weight: bold; +} + +#messagelist thead tr td.sortedASC, +#messagelist thead tr td.sortedDESC +{ + background-position: 0 -26px; +} + +#messagelist thead tr td.sortedASC a +{ + background: url(images/icons/sort.gif) right 0 no-repeat; +} + +#messagelist thead tr td.sortedDESC a +{ + background: url(images/icons/sort.gif) right -14px no-repeat; +} + +#messagelist thead tr td a +{ + display: block; + width: auto !important; + width: 100%; + color: #333333; + text-decoration: none; +} + +#messagelist thead tr td.size +{ + text-align: left; +} + +#messagelist thead tr td.subject +{ + padding-left: 18px; + width: 99%; +} + +#messagelist tbody tr td +{ + height: 20px; + padding: 0; + font-size: 11px; + overflow: hidden; + vertical-align: middle; + white-space: nowrap; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; + border-bottom: 1px solid #EBEBEB; + cursor: default; +} + +#messagelist tbody tr td a +{ + color: #000; + text-decoration: none; + white-space: nowrap; + cursor: inherit; +} + +#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 +{ + cursor: pointer; +} + +#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 +{ + display: inline-block; + vertical-align: middle; + height: 17px; + width: 15px; + background: url(images/messageicons.png) center no-repeat; +} + +#messagelist tr td.attachment span.attachment +{ + background-position: 0 -170px; +} + +#messagelist tr td.attachment span.report +{ + background-position: 0 -255px; +} + +#messagelist tr td.priority span.priority +{ + background-position: 0 -309px; +} + +#messagelist tr td.priority span.prio5 +{ + background-position: 0 -358px; +} + +#messagelist tr td.priority span.prio4 +{ + background-position: 0 -340px; +} + +#messagelist tr td.priority span.prio3 +{ + background-position: 0 -324px; +} + +#messagelist tr td.priority span.prio2 +{ + background-position: 0 -309px; +} + +#messagelist tr td.priority span.prio1 +{ + background-position: 0 -290px; +} + +#messagelist tr td.flag span.flagged +{ + background-position: 0 -153px; +} + +#messagelist tr td.flag span.unflagged:hover +{ + background-position: 0 -136px; +} + +#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 +{ + background-position: 0 -85px; +} + +#messagelist tr td.subject span.forwarded +{ + background-position: 0 -68px; +} + +#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 +{ + background-position: 0 17px; /* no icon */ +} + +#messagelist tr td.status span.msgicon:hover +{ + background-position: 0 -272px; +} + +#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 +{ + background-position: 0 -119px; +} + +#messagelist tr td div.collapsed +{ + background-position: 0 -221px; + cursor: pointer; +} + +#messagelist tr td div.expanded +{ + background-position: 0 -204px; + cursor: pointer; +} + +#messagelist tr td.threads div.listmenu +{ + background-position: 0 -238px; + cursor: pointer; +} + +#messagelist tbody tr td.subject +{ + width: 99%; +} + +#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 +{ + text-decoration: underline; +} + +#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 +{ + width: 60px; + text-align: right; + padding: 0 2px; +} + +#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 +{ + width: 118px; + padding: 0 2px; +} + +#messagelist tr.message +{ + background-color: #FFF; +} + +#messagelist tr.unread +{ + font-weight: bold; + background-color: #FFFFFF; +} + +#messagelist tr.flagged td, +#messagelist tr.flagged td a +{ + color: #CC0000; +} + +#messagelist tr.selected td +{ + color: #FFFFFF; + background-color: #CC3333; +} + +#messagelist tr.unfocused td +{ + color: #FFFFFF; + background-color: #929292; +} + +#messagelist tr.selected td a +{ + color: #FFFFFF; +} + +#messagelist tr.unfocused td a +{ + color: #FFFFFF; +} + +#messagelist tr.deleted td, +#messagelist tr.deleted td a +{ + color: #CCCCCC; +} + +#listmenu +{ + padding: 6px; +} + +#listmenu legend +{ + color: #999999; +} + +#listmenu fieldset +{ + border: 1px solid #999999; + margin: 0 5px; + float: left; +} + +#listmenu div +{ + padding: 8px 0 3px 0; + text-align: center; + clear: both; +} + +/***** tree indicators *****/ + +td span.branch div +{ + float: left; + height: 16px; +} + +td span.branch div.tree +{ + height: 17px; + width: 15px; + background: url(images/tree.gif) 0px 0px no-repeat; +} + +td span.branch div.l1 +{ + background-position: 0px 0px; /* L */ +} + +td span.branch div.l2 +{ + background-position: -30px 0px; /* | */ +} + +td span.branch div.l3 +{ + background-position: -15px 0px; /* |- */ +} + + +/** message view styles */ + +#messageframe +{ + position: absolute; + top: 0; + left: 180px; + right: 0; + bottom: 0; + border: 1px solid #999; + background-color: #FFF; + overflow: auto; + z-index: 1; +} + +div.messageheaderbox +{ + margin: -14px 8px 0px 8px; + border: 1px solid #ccc; +} + +table.headers-table +{ + width: 100%; + background-color: #EBEBEB; +} + +#messagebody #full-headers, +#messagebody table.headers-table +{ + width: auto; + margin: 6px 8px; + background-color: #F4F4F4; +} + +table.headers-table tr td +{ + font-size: 11px; + border-bottom:1px solid #FFFFFF; +} + +table.headers-table tr td.header-title +{ + width: 1%; + color: #666666; + font-weight: bold; + text-align: right; + white-space: nowrap; + padding: 0 4px 0 8px; +} + +table.headers-table tr td.header +{ + width: 99%; +} + +table.headers-table tr td.subject +{ + font-weight: bold; +} + +table.headers-table tr td.header span +{ + white-space: nowrap; +} + +#attachment-list +{ + margin: 0; + padding: 0 4px 0 8px; + min-height: 16px; + list-style-image: none; + list-style-type: none; + background: url(images/icons/attachment.png) 4px 2px no-repeat #DFDFDF; +} + +#messageframe #attachment-list +{ + border-bottom: 1px solid #ccc; +} + +.messageheaderbox #attachment-list +{ + border-top: 1px solid #ccc; +} + +#attachment-list:after +{ + content: "."; + display: block; + height: 0; + font-size: 0; + clear: both; + visibility: hidden; +} + +#attachment-list li +{ + float: left; + height: 18px; + font-size: 11px; + padding: 2px 0px 0px 15px; + white-space: nowrap; +} + +#attachment-list li a +{ + text-decoration: none; +} + +#attachment-list li a:hover +{ + text-decoration: underline; +} + +#messagebody +{ + position:relative; + padding-bottom: 10px; + background-color: #FFFFFF; +} + +div.message-part, +div.message-htmlpart +{ + padding: 10px 8px; + border-top: 1px solid #ccc; +/* overflow: hidden; */ +} + +#messagebody div:first-child +{ + border-top: 0; +} + +div.message-part a, +div.message-htmlpart a +{ + color: #0000CC; +} + +div.message-part pre, +div.message-htmlpart pre, +div.message-part div.pre +{ + margin: 0px; + padding: 0px; + font-family: monospace; + font-size: 12px; + white-space: -moz-pre-wrap !important; + white-space: pre-wrap !important; + white-space: pre; +} + +div.message-part span.sig +{ + color: #666666; +} + +div.message-part blockquote +{ + color: blue; + border-left: 2px solid blue; + border-right: 2px solid blue; + background-color: #F6F6F6; + margin: 2px 0px; + padding: 1px 8px 1px 10px; +} + +div.message-part blockquote blockquote +{ + color: green; + border-left: 2px solid green; + border-right: 2px solid green; +} + +div.message-part blockquote blockquote blockquote +{ + color: #990000; + border-left: 2px solid #bb0000; + border-right: 2px solid #bb0000; +} + +body.iframe div.message-htmlpart +{ + margin: 8px; +} + +div.message-htmlpart div.rcmBody +{ + margin: 8px; +} + +#messagebody span.part-notice +{ + display: block; +} + +#message-objects div, +#messagebody span.part-notice +{ + margin: 8px; + min-height: 20px; + padding: 10px 10px 6px 46px; +} + +#message-objects div a, +#messagebody span.part-notice a +{ + color: #666666; + padding-left: 10px; +} + +#message-objects div a:hover, +#messagebody span.part-notice a:hover +{ + color: #333333; +} + +#messageviewlink +{ + position: absolute; + top: 8px; + right: 10px; + width: 15px; + height: 15px; + border: 0; +} + +#full-headers +{ + color: #666666; + text-align: center; + padding: 2px 6px; + border-bottom: 1px solid #ccc; + background-color: #EBEBEB; +} + +.messageheaderbox #full-headers +{ + border-bottom: 0; +} + +div.more-headers +{ + cursor: pointer; + height: 8px; + border-bottom: 0; +} + +div.show-headers +{ + background: url(images/icons/down_small.gif) no-repeat center; +} + +div.hide-headers +{ + background: url(images/icons/up_small.gif) no-repeat center; +} + +#headers-source +{ + margin: 2px 0; + padding: 0.5em; + height: 145px; + background: white; + overflow: auto; + font-size: 11px; + border: 1px solid #CCC; + display: none; + text-align: left; + color: #333; +} + + +/** message compose styles */ + +#compose-container +{ + position: absolute; + top: 0; + left: 185px; + right: 0; + bottom: 0; + margin: 0; +} + +#compose-div +{ + position: absolute; + top: 85px; + bottom: 0; + margin: 0; + width: 100%; +} + +#compose-div .boxfooter +{ + height: 22px; + background: none; + border-top: 0; +} + +#compose-div .boxlistcontent +{ + bottom: 23px; +} + +#compose-body +{ + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + margin: 0; + font-size: 9pt; + font-family: monospace; + border: 1px solid #999; + resize: none; +} + +#compose-body_tbl +{ + border: 1px solid #999; +} + +#compose-body_tbl td +{ + border: none; +} + +#compose-body_tbl tr.mceFirst td.mceToolbar +{ + border-bottom: 1px solid #ccc; +} + +#compose-headers +{ + width: 100%; +} + +#compose-headers td.editfield +{ + padding-right: 8px; + width: 95%; +} + +#compose-headers td.top +{ + vertical-align: top; +} + +#compose-headers td.title, +#compose-subject td.title +{ + width: 80px !important; + font-size: 11px; + font-weight: bold; + padding-right: 10px; + white-space: nowrap; + color: #666; +} + +#compose-headers td textarea, +#compose-headers td input +{ + resize: none; + width: 100%; + border: 1px solid #999; +} + +#compose-headers td textarea +{ + height: 32px; +} + +input.from_address +{ + width: 80% !important; +} + +#compose-cc, +#compose-bcc, +#compose-replyto, +#compose-followupto +{ + display: none; +} + +#compose-editorfooter +{ + position: absolute; + right: 0; + bottom: 0; + text-align: right; +} + +#compose-editorfooter label +{ + font-size: 11px; + font-weight: bold; + color: #666; +} + +#compose-buttons +{ + position: absolute; + left: 0; + bottom: 0; + width: auto; +} + +#compose-attachments +{ + position: absolute; + top: 0; + left: 0; + bottom: 0; + width: 175px; + border: 1px solid #999; + background-color: #F9F9F9; +} + +#compose-attachments.droptarget.hover +{ + background-color: #F0F0EE; + box-shadow: 0 0 5px 0 #999; + -moz-box-shadow: 0 0 5px 0 #999; + -o-box-shadow: 0 0 5px 0 #999; +} + +#compose-attachments ul +{ + margin: 0px; + padding: 0px; + background-color: #FFF; + list-style-image: none; + list-style-type: none; +} + +#compose-attachments ul li +{ + height: 18px; + font-size: 11px; + padding-left: 2px; + padding-top: 2px; + padding-right: 4px; + border-bottom: 1px solid #EBEBEB; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; +} + +#compose-attachments li a +{ + text-indent: -5000px; + width: 17px; + height: 16px; + display: block; + float: left; + text-decoration: none; +} + +#compose-attachments li img +{ + vertical-align: middle; +} + +#compose-attachments li a.delete, +#compose-attachments li a.cancelupload +{ + background-position: 0px -392px; +} + +#compose-attachments li span +{ + line-height: 18px; + vertical-align: middle; +} + +#attachment-form +{ + padding: 6px; +} + +#attachment-form div +{ + padding: 2px; +} + +#attachment-form div.buttons +{ + margin-top: 4px; +} + +#quota +{ + position: absolute; + top: 3px; + right: 8px; + width: 100px; +} + +#quotaimg +{ + position: absolute; + top: 3px; + right: 6px; + z-index: 101; +} diff --git a/skins/classic/pngbehavior.htc b/skins/classic/pngbehavior.htc new file mode 100644 index 000000000..fb5f1c8d4 --- /dev/null +++ b/skins/classic/pngbehavior.htc @@ -0,0 +1,84 @@ + + + + + + diff --git a/skins/classic/print.css b/skins/classic/print.css new file mode 100644 index 000000000..129770d25 --- /dev/null +++ b/skins/classic/print.css @@ -0,0 +1,137 @@ +/***** Roundcube|Mail message print styles *****/ + +body +{ + font-family: "Lucida Grande", Verdana, Arial, Helvetica, sans-serif; + background-color: #ffffff; + color: #000000; + margin: 2mm; +} + +body, td, th, span, div, p +{ + font-size: 9pt; + color: #000000; +} + +h3 +{ + font-size: 18px; + color: #000000; +} + +a, a:active, a:visited +{ + color: #000000; +} + +body > #logo +{ + float: right; + margin: 0 5mm 3mm 5mm; +} + +table.headers-table +{ + table-layout: fixed; + margin-top: 14px; +} + +table.headers-table tr td +{ + font-size: 9pt; +} + +table.headers-table td.header-title +{ + color: #666666; + font-weight: bold; + text-align: right; + vertical-align: top; + padding-right: 4mm; + white-space: nowrap; +} + +table.headers-table tr td.subject +{ + width: 90%; + font-weight: bold; +} + +#attachment-list +{ + margin-top: 3mm; + padding-top: 3mm; + border-top: 1pt solid #cccccc; +} + +#attachment-list li +{ + font-size: 9pt; +} + +#attachment-list li a +{ + text-decoration: none; +} + +#attachment-list li a:hover +{ + text-decoration: underline; +} + +#messagebody +{ + margin-top: 5mm; + border-top: none; +} + +div.message-part +{ + padding: 2mm; + margin-top: 5mm; + margin-bottom: 5mm; + border-top: 1pt solid #cccccc; +} + +div.message-part a +{ + color: #0000CC; +} + +div.message-part pre, +div.message-htmlpart pre, +div.message-part div.pre +{ + margin: 0; + padding: 0; + font-family: monospace; + white-space: -moz-pre-wrap !important; + white-space: pre-wrap !important; + white-space: pre; + word-wrap: break-word; /* IE (and Safari) */ +} + +div.message-part blockquote +{ + color: blue; + border-left: 2px solid blue; + border-right: 2px solid blue; + background-color: #F6F6F6; + margin: 2px 0px; + padding: 1px 8px 1px 10px; +} + +div.message-part blockquote blockquote +{ + color: green; + border-left: 2px solid green; + border-right: 2px solid green; +} + +div.message-part blockquote blockquote blockquote +{ + color: #990000; + border-left: 2px solid #bb0000; + border-right: 2px solid #bb0000; +} diff --git a/skins/classic/safari.css b/skins/classic/safari.css new file mode 100644 index 000000000..a1be85ab4 --- /dev/null +++ b/skins/classic/safari.css @@ -0,0 +1,22 @@ +body +{ + height: 100%; +} + +html>body*#messagelist[id$="messagelist"]:not([class="none"]) { width: 99.8%; } +html>body*#messagelist[id$="messagelist"]:not([class="none"]) tr td.flag, +html>body*#messagelist[id$="messagelist"]:not([class="none"]) tr td.icon { width: 20px; } +html>body*input[type$="file"]:not([class="none"]) { background-color: transparent; border: 0; } + +div.message-part pre, +div.message-htmlpart pre, +div.message-part div.pre +{ + word-wrap: break-word; +} + +#messagelist thead tr td, +#messagelist tbody tr td +{ + height: 18px; +} diff --git a/skins/classic/settings.css b/skins/classic/settings.css new file mode 100644 index 000000000..24c4382b5 --- /dev/null +++ b/skins/classic/settings.css @@ -0,0 +1,215 @@ +/***** Roundcube|Mail settings task styles *****/ + +#rcmfd_timezone +{ + width: 300px; +} + +#folder-manager.droptarget +{ + border: 1px solid #CC3333; + background-color: #FFFFA6; +} + +#identities-table, +#subscription-table, +#sections-table +{ + width: 100%; + table-layout: fixed; +} + +#subscription-table input +{ + font: inherit; +} + +#subscription-table tbody td, +#identities-table tbody td, +#sections-table tbody td +{ + cursor: default; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; + height: 18px; +} + +#subscription-table tr.virtual td +{ + color: #666; +} + +#subscription-table tr.root td +{ + font-size: 10%; + height: 5px; +} + +#subscription-table tr.selected td +{ + color: #FFFFFF; + background-color: #CC3333; +} + +#subscription-table tr.droptarget td +{ + background-color: #FFFFA6; +} + +#subscription-table td.name +{ + width: auto; +} + +#subscription-table td.subscribed +{ + text-align: right; + padding-right: 12px; +} + +#folder-box, +#prefs-box, +#identity-box +{ + position: absolute; + top: 0; + right: 0; + bottom: 0; + border: 1px solid #999999; + overflow: hidden; + background-color: #F2F2F2; +} + +#identity-details table td.title, +#folder-details table td.title +{ + font-weight: bold; + text-align: right; +} + +#bottomboxes +{ + position: absolute; + width: 600px; + height: 95px; + left: 0; + bottom: 0; +} + +#identities-list, +#folder-manager, +#sectionslist +{ + position: absolute; + top: 0; + left: 0; + bottom: 0; + border: 1px solid #999999; + background-color: #F9F9F9; + overflow: hidden; +} + +body.iframe, +#prefs-frame, +#folder-frame, +#identity-frame +{ + background-color: #F2F2F2; + border: none; + min-height: 100%; /* Chrome 14 bug */ +} + +#prefs-title, +#folder-title, +#identity-title +{ + /* fixes issue where tabs were overlapping box title when scrolling */ + z-index: 10; +} + +#formfooter +{ + width: 100%; +} + +#formfooter .footerleft +{ + padding: 0 2px 10px; + white-space: nowrap; + float: left; +} + +#formfooter .footerright +{ + padding: 0 2px 10px; + white-space: nowrap; + text-align: right; + float: right; +} + +#quota +{ + position: absolute; + top: 3px; + right: 8px; + width: 100px; +} + +#quotaimg +{ + position: absolute; + top: 3px; + right: 6px; + z-index: 101; +} + +#rcmfd_signature +{ + font-family: monospace; +} + +div.readtext +{ + width: 42em; + padding: 20px; +} + +#license +{ + min-height: 200px; + padding-bottom: 2em; + background: url(images/watermark.gif) no-repeat center; +} + +#license .sysname +{ + font-size: 18px; + font-weight: bold; +} + +#license .copyright +{ + font-weight: bold; +} + +#license .license, +#license .links +{ + margin-top: 1.5em; +} + +#pluginlist +{ + border: 1px solid #999; + width: 100%; +} + +#pluginlist td.version +{ + text-align: center; +} + +div.crop +{ + overflow: auto; +} diff --git a/skins/classic/splitter.js b/skins/classic/splitter.js new file mode 100644 index 000000000..59ebb5151 --- /dev/null +++ b/skins/classic/splitter.js @@ -0,0 +1,203 @@ + +/** + * Roundcube splitter GUI class + * + * @constructor + */ +function rcube_splitter(attrib) +{ + this.p1id = attrib.p1; + this.p2id = attrib.p2; + this.id = attrib.id ? attrib.id : this.p1id + '_' + this.p2id + '_splitter'; + this.orientation = attrib.orientation; + this.horizontal = (this.orientation == 'horizontal' || this.orientation == 'h'); + this.offset = bw.ie6 ? 2 : 0; + this.pos = attrib.start ? attrib.start * 1 : 0; + this.relative = attrib.relative ? true : false; + this.drag_active = false; + this.callback = attrib.callback; + + this.init = function() + { + this.p1 = document.getElementById(this.p1id); + this.p2 = document.getElementById(this.p2id); + + // create and position the handle for this splitter + this.p1pos = this.relative ? $(this.p1).position() : $(this.p1).offset(); + this.p2pos = this.relative ? $(this.p2).position() : $(this.p2).offset(); + + if (this.horizontal) { + var top = this.p1pos.top + this.p1.offsetHeight; + this.layer = new rcube_layer(this.id, {x: 0, y: top, height: 10, + width: '100%', vis: 1, parent: this.p1.parentNode}); + } + else { + var left = this.p1pos.left + this.p1.offsetWidth; + this.layer = new rcube_layer(this.id, {x: left, y: 0, width: 10, + height: '100%', vis: 1, parent: this.p1.parentNode}); + } + + this.elm = this.layer.elm; + this.elm.className = 'splitter '+(this.horizontal ? 'splitter-h' : 'splitter-v'); + this.elm.unselectable = 'on'; + + // add the mouse event listeners + rcube_event.add_listener({element: this.elm, event:'mousedown', object:this, method:'onDragStart'}); + if (bw.ie) + rcube_event.add_listener({element: window, event:'resize', object:this, method:'onResize'}); + + // read saved position from cookie + var cookie = bw.get_cookie(this.id); + if (cookie && !isNaN(cookie)) { + this.pos = parseFloat(cookie); + this.resize(); + } + else if (this.pos) { + this.resize(); + this.set_cookie(); + } + }; + + /** + * Set size and position of all DOM objects + * according to the saved splitter position + */ + this.resize = function() + { + if (this.horizontal) { + var lh = this.layer.height - this.offset * 2; + this.p1.style.height = Math.floor(this.pos - this.p1pos.top - lh / 2) + 'px'; + this.p2.style.top = Math.ceil(this.pos + lh / 2) + 'px'; + this.layer.move(this.layer.x, Math.round(this.pos - lh / 2 + 1)); + if (bw.ie) { + var new_height = parseInt(this.p2.parentNode.offsetHeight, 10) - parseInt(this.p2.style.top, 10) - (bw.ie8 ? 2 : 0); + this.p2.style.height = (new_height > 0 ? new_height : 0) + 'px'; + } + } + else { + this.p1.style.width = Math.floor(this.pos - this.p1pos.left - this.layer.width / 2) + 'px'; + this.p2.style.left = Math.ceil(this.pos + this.layer.width / 2) + 'px'; + this.layer.move(Math.round(this.pos - this.layer.width / 2 + 1), this.layer.y); + if (bw.ie) { + var new_width = parseInt(this.p2.parentNode.offsetWidth, 10) - parseInt(this.p2.style.left, 10) ; + this.p2.style.width = (new_width > 0 ? new_width : 0) + 'px'; + } + } + $(this.p2).resize(); + $(this.p1).resize(); + }; + + /** + * Handler for mousedown events + */ + this.onDragStart = function(e) + { + // disable text selection while dragging the splitter + if (bw.konq || bw.chrome || bw.safari) + document.body.style.webkitUserSelect = 'none'; + + this.p1pos = this.relative ? $(this.p1).position() : $(this.p1).offset(); + this.p2pos = this.relative ? $(this.p2).position() : $(this.p2).offset(); + this.drag_active = true; + + // start listening to mousemove events + rcube_event.add_listener({element:document, event:'mousemove', object:this, method:'onDrag'}); + rcube_event.add_listener({element:document, event:'mouseup', object:this, method:'onDragStop'}); + + // enable dragging above iframes + $('iframe').each(function() { + $('
') + .css({background: '#fff', + width: this.offsetWidth+'px', height: this.offsetHeight+'px', + position: 'absolute', opacity: '0.001', zIndex: 1000 + }) + .css($(this).offset()) + .appendTo('body'); + }); + }; + + /** + * Handler for mousemove events + */ + this.onDrag = function(e) + { + if (!this.drag_active) + return false; + + var pos = rcube_event.get_mouse_pos(e); + + if (this.relative) { + var parent = $(this.p1.parentNode).offset(); + pos.x -= parent.left; + pos.y -= parent.top; + } + + if (this.horizontal) { + if (((pos.y - this.layer.height * 1.5) > this.p1pos.top) && ((pos.y + this.layer.height * 1.5) < (this.p2pos.top + this.p2.offsetHeight))) { + this.pos = pos.y; + this.resize(); + } + } + else { + if (((pos.x - this.layer.width * 1.5) > this.p1pos.left) && ((pos.x + this.layer.width * 1.5) < (this.p2pos.left + this.p2.offsetWidth))) { + this.pos = pos.x; + this.resize(); + } + } + + this.p1pos = this.relative ? $(this.p1).position() : $(this.p1).offset(); + this.p2pos = this.relative ? $(this.p2).position() : $(this.p2).offset(); + return false; + }; + + /** + * Handler for mouseup events + */ + this.onDragStop = function(e) + { + // resume the ability to highlight text + if (bw.konq || bw.chrome || bw.safari) + document.body.style.webkitUserSelect = 'auto'; + + // cancel the listening for drag events + rcube_event.remove_listener({element:document, event:'mousemove', object:this, method:'onDrag'}); + rcube_event.remove_listener({element:document, event:'mouseup', object:this, method:'onDragStop'}); + this.drag_active = false; + + // remove temp divs + $('div.iframe-splitter-fix').each(function() { this.parentNode.removeChild(this); }); + + this.set_cookie(); + + if (typeof this.callback == 'function') + this.callback(this); + + return bw.safari ? true : rcube_event.cancel(e); + }; + + /** + * Handler for window resize events + */ + this.onResize = function(e) + { + if (this.horizontal) { + var new_height = parseInt(this.p2.parentNode.offsetHeight, 10) - parseInt(this.p2.style.top, 10) - (bw.ie8 ? 2 : 0); + this.p2.style.height = (new_height > 0 ? new_height : 0) +'px'; + } + else { + var new_width = parseInt(this.p2.parentNode.offsetWidth, 10) - parseInt(this.p2.style.left, 10); + this.p2.style.width = (new_width > 0 ? new_width : 0) + 'px'; + } + }; + + /** + * Saves splitter position in cookie + */ + this.set_cookie = function() + { + var exp = new Date(); + exp.setYear(exp.getFullYear() + 1); + bw.set_cookie(this.id, this.pos, exp); + }; + +} // end class rcube_splitter diff --git a/skins/classic/templates/about.html b/skins/classic/templates/about.html new file mode 100644 index 000000000..f51180699 --- /dev/null +++ b/skins/classic/templates/about.html @@ -0,0 +1,35 @@ + + + +<roundcube:object name="pagetitle" /> + + + + + + + + + +
+
+
+ +

Roundcube Webmail

+ +

This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License +as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+Some exceptions for skins & plugins apply. +

+ +
+ +

Installed plugins

+ + +
+
+ + + diff --git a/skins/classic/templates/addressbook.html b/skins/classic/templates/addressbook.html new file mode 100644 index 000000000..d77bb38d9 --- /dev/null +++ b/skins/classic/templates/addressbook.html @@ -0,0 +1,110 @@ + + + +<roundcube:object name="pagetitle" /> + + + + + + + + + + + +
+ + + +  + + + + +
+ +
+ + + +
+ +
+
    +
  • +
  • +
  • +
  • +
  • +
+
+ +
+ +
+
+
+ + +
+ +
+ +
+ +
+
+
+ +
+
+ +
+
+ + + +
+ +
+ +
+
+ +
+
    +
  • +
  • +
  • +
  • +
  • + +
+
+ + + diff --git a/skins/classic/templates/compose.html b/skins/classic/templates/compose.html new file mode 100644 index 000000000..caebf31a0 --- /dev/null +++ b/skins/classic/templates/compose.html @@ -0,0 +1,160 @@ + + + +<roundcube:object name="productname" /> :: <roundcube:label name="compose" /> + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + + + + +
+ +
+ +
+
+
+ +
+
+ +
+
+ + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ + +
+ + +
+ + +
+
+
+
+ +
+
+
+ + +
+
+ + + + + + +
+
+
+
+ +
+ +
+ + + + + + + + + + + + + + +
+
+ +
+ +
+ + + + + diff --git a/skins/classic/templates/contact.html b/skins/classic/templates/contact.html new file mode 100644 index 000000000..d74a78b27 --- /dev/null +++ b/skins/classic/templates/contact.html @@ -0,0 +1,29 @@ + + + +<roundcube:object name="pagetitle" /> + + + + + +
+
+ +
:
+ + +
+ +
+
+ +
+

+ +

+
+ + + + diff --git a/skins/classic/templates/contactadd.html b/skins/classic/templates/contactadd.html new file mode 100644 index 000000000..05cc8aa82 --- /dev/null +++ b/skins/classic/templates/contactadd.html @@ -0,0 +1,41 @@ + + + +<roundcube:object name="pagetitle" /> + + + + + +
+
+
+ +
:
+ +
+ + +
+ +
+
+ +
+

+ " class="button" onclick="history.back()" />  + +

+ +
+ + + + + + + + diff --git a/skins/classic/templates/contactedit.html b/skins/classic/templates/contactedit.html new file mode 100644 index 000000000..db8599ac6 --- /dev/null +++ b/skins/classic/templates/contactedit.html @@ -0,0 +1,41 @@ + + + +<roundcube:object name="pagetitle" /> + + + + + +
+
+
+ +
:
+ +
+ + +
+ +
+
+ +
+

+   + +

+ +
+ + + + + + + + diff --git a/skins/classic/templates/contactsearch.html b/skins/classic/templates/contactsearch.html new file mode 100644 index 000000000..23cbec4cb --- /dev/null +++ b/skins/classic/templates/contactsearch.html @@ -0,0 +1,18 @@ + + + +<roundcube:object name="pagetitle" /> + + + + + +
+
+ +

+
+ + + + diff --git a/skins/classic/templates/error.html b/skins/classic/templates/error.html new file mode 100644 index 000000000..fdd7c887b --- /dev/null +++ b/skins/classic/templates/error.html @@ -0,0 +1,16 @@ + + + +<roundcube:object name="productname" /> :: ERROR + + + + +