From 2df9d285bdcbfe4e9a6493dc37ea9ef088672cff Mon Sep 17 00:00:00 2001 From: meaz Date: Thu, 19 Mar 2020 10:44:32 +0100 Subject: [PATCH] add themes files --- README.md | 5 + classic/README | 23 + classic/addressbook.css | 534 +++ classic/common.css | 1660 +++++++ classic/embed.css | 39 + classic/functions.js | 1124 +++++ classic/googiespell.css | 126 + classic/images/abook_toolbar.png | Bin 0 -> 4881 bytes classic/images/buttons/add_act.png | Bin 0 -> 138 bytes classic/images/buttons/add_pas.png | Bin 0 -> 154 bytes classic/images/buttons/add_sel.png | Bin 0 -> 126 bytes classic/images/buttons/bg.gif | Bin 0 -> 203 bytes classic/images/cleardot.png | Bin 0 -> 68 bytes classic/images/contactactions.png | Bin 0 -> 1114 bytes classic/images/contactgroup.png | Bin 0 -> 876 bytes classic/images/contactpic.png | Bin 0 -> 309 bytes classic/images/dbutton.png | Bin 0 -> 230 bytes classic/images/dimple.png | Bin 0 -> 158 bytes classic/images/display/icons.gif | Bin 0 -> 2329 bytes classic/images/display/icons.png | Bin 0 -> 4201 bytes classic/images/display/loading.gif | Bin 0 -> 2710 bytes classic/images/display/loading_blue.gif | Bin 0 -> 688 bytes classic/images/favicon.ico | Bin 0 -> 34494 bytes classic/images/filedrop.png | Bin 0 -> 581 bytes classic/images/googiespell/change_lang.gif | Bin 0 -> 110 bytes classic/images/googiespell/indicator.gif | Bin 0 -> 722 bytes classic/images/googiespell/ok.gif | Bin 0 -> 143 bytes classic/images/googiespell/spellc.gif | Bin 0 -> 354 bytes classic/images/icons/attachment.png | Bin 0 -> 516 bytes classic/images/icons/blank.gif | Bin 0 -> 54 bytes classic/images/icons/collapsed.png | Bin 0 -> 97 bytes classic/images/icons/columnpicker.gif | Bin 0 -> 132 bytes classic/images/icons/delete.png | Bin 0 -> 740 bytes classic/images/icons/deleted.png | Bin 0 -> 304 bytes classic/images/icons/dot.png | Bin 0 -> 100 bytes classic/images/icons/down_small.gif | Bin 0 -> 105 bytes classic/images/icons/expanded.png | Bin 0 -> 89 bytes classic/images/icons/extwin.png | Bin 0 -> 167 bytes classic/images/icons/flagged.png | Bin 0 -> 527 bytes classic/images/icons/folders.png | Bin 0 -> 5218 bytes classic/images/icons/forwarded.png | Bin 0 -> 180 bytes classic/images/icons/forwarded_replied.png | Bin 0 -> 214 bytes classic/images/icons/glass.png | Bin 0 -> 302 bytes classic/images/icons/glass_roll.png | Bin 0 -> 355 bytes classic/images/icons/groupactions.png | Bin 0 -> 604 bytes classic/images/icons/html.png | Bin 0 -> 164 bytes classic/images/icons/minus.gif | Bin 0 -> 82 bytes classic/images/icons/plus.gif | Bin 0 -> 85 bytes classic/images/icons/rename.png | Bin 0 -> 649 bytes classic/images/icons/replied.png | Bin 0 -> 176 bytes classic/images/icons/reset.gif | Bin 0 -> 164 bytes classic/images/icons/silhouette.png | Bin 0 -> 183 bytes classic/images/icons/sort.gif | Bin 0 -> 144 bytes classic/images/icons/text.png | Bin 0 -> 150 bytes classic/images/icons/unflagged.png | Bin 0 -> 248 bytes classic/images/icons/unread.png | Bin 0 -> 240 bytes classic/images/icons/unread_children.png | Bin 0 -> 248 bytes classic/images/icons/up_small.gif | Bin 0 -> 106 bytes classic/images/listheader.gif | Bin 0 -> 314 bytes classic/images/mail_footer.png | Bin 0 -> 774 bytes classic/images/mail_toolbar.png | Bin 0 -> 13035 bytes classic/images/messageactions.png | Bin 0 -> 2615 bytes classic/images/messageicons.png | Bin 0 -> 2511 bytes classic/images/pagenav.gif | Bin 0 -> 1147 bytes classic/images/quota-colors.png | Bin 0 -> 219 bytes classic/images/quota.png | Bin 0 -> 212 bytes classic/images/roundcube_logo.png | Bin 0 -> 3789 bytes classic/images/searchfield.gif | Bin 0 -> 397 bytes classic/images/tabs-left.gif | Bin 0 -> 230 bytes classic/images/tabs-right.gif | Bin 0 -> 1417 bytes classic/images/taskbar.png | Bin 0 -> 1640 bytes classic/images/taskicons.gif | Bin 0 -> 2207 bytes classic/images/taskicons.png | Bin 0 -> 1349 bytes classic/images/tree.gif | Bin 0 -> 92 bytes classic/images/watermark.gif | Bin 0 -> 11081 bytes classic/includes/header.html | 2 + classic/includes/links.html | 10 + classic/includes/messagetoolbar.html | 67 + classic/includes/settingstabs.html | 6 + classic/includes/taskbar.html | 7 + classic/mail.css | 1905 ++++++++ classic/meta.json | 6 + classic/print.css | 225 + classic/safari.css | 22 + classic/settings.css | 292 ++ classic/splitter.js | 228 + classic/templates/about.html | 37 + classic/templates/addressbook.html | 145 + classic/templates/bounce.html | 41 + classic/templates/compose.html | 245 + classic/templates/contact.html | 28 + classic/templates/contactadd.html | 43 + classic/templates/contactedit.html | 43 + classic/templates/contactprint.html | 20 + classic/templates/contactsearch.html | 15 + classic/templates/error.html | 15 + classic/templates/folderedit.html | 25 + classic/templates/folders.html | 74 + classic/templates/identities.html | 43 + classic/templates/identityedit.html | 35 + classic/templates/importcontacts.html | 13 + classic/templates/login.html | 51 + classic/templates/mail.html | 212 + classic/templates/message.html | 88 + classic/templates/messageerror.html | 68 + classic/templates/messagepart.html | 79 + classic/templates/messagepreview.html | 43 + classic/templates/messageprint.html | 19 + classic/templates/plugin.html | 26 + classic/templates/responseedit.html | 23 + classic/templates/responses.html | 43 + classic/templates/settings.html | 38 + classic/templates/settingsedit.html | 21 + classic/thumbnail.png | Bin 0 -> 2105 bytes classic/watermark.html | 16 + disroot/.gitignore | 4 + disroot/README.md | 113 + disroot/fonts/fa-regular-400.woff | Bin 0 -> 16804 bytes disroot/fonts/fa-regular-400.woff2 | Bin 0 -> 13580 bytes disroot/fonts/fa-solid-900.woff | Bin 0 -> 98020 bytes disroot/fonts/fa-solid-900.woff2 | Bin 0 -> 75440 bytes disroot/fonts/roboto-v19-italic-700.woff | Bin 0 -> 70756 bytes disroot/fonts/roboto-v19-italic-700.woff2 | Bin 0 -> 55192 bytes disroot/fonts/roboto-v19-italic.woff | Bin 0 -> 70252 bytes disroot/fonts/roboto-v19-italic.woff2 | Bin 0 -> 54984 bytes disroot/fonts/roboto-v19-regular-700.woff | Bin 0 -> 66260 bytes disroot/fonts/roboto-v19-regular-700.woff2 | Bin 0 -> 51088 bytes disroot/fonts/roboto-v19-regular.woff | Bin 0 -> 66044 bytes disroot/fonts/roboto-v19-regular.woff2 | Bin 0 -> 51116 bytes disroot/images/contactgroup.svg | 3 + disroot/images/contactpic.svg | 3 + disroot/images/corner-handle.svg | 3 + disroot/images/download.svg | 3 + disroot/images/favicon.ico | Bin 0 -> 572 bytes disroot/images/logo.svg | Bin 0 -> 12747 bytes disroot/meta.json | 18 + disroot/styles/_styles.less | 24 + disroot/styles/_variables.less | 1 + disroot/styles/colors.less | 217 + disroot/styles/embed.less | 95 + disroot/styles/fontawesome.less | 1397 ++++++ disroot/styles/global.less | 97 + disroot/styles/layout.less | 403 ++ disroot/styles/mixins.less | 62 + disroot/styles/print.less | 79 + disroot/styles/styles.less | 404 ++ disroot/styles/variables.less | 58 + disroot/styles/widgets/buttons.less | 321 ++ disroot/styles/widgets/common.less | 586 +++ disroot/styles/widgets/dialogs.less | 255 + disroot/styles/widgets/editor.less | 965 ++++ disroot/styles/widgets/forms.less | 1389 ++++++ disroot/styles/widgets/jqueryui.less | 438 ++ disroot/styles/widgets/lists.less | 1019 ++++ disroot/styles/widgets/menu.less | 936 ++++ disroot/styles/widgets/messages.less | 267 ++ disroot/templates/about.html | 16 + disroot/templates/addressbook.html | 158 + disroot/templates/bounce.html | 73 + disroot/templates/compose.html | 277 ++ disroot/templates/contact.html | 23 + disroot/templates/contactedit.html | 29 + disroot/templates/contactimport.html | 9 + disroot/templates/contactprint.html | 19 + disroot/templates/contactsearch.html | 9 + disroot/templates/dialog.html | 7 + disroot/templates/error.html | 21 + disroot/templates/folderedit.html | 13 + disroot/templates/folders.html | 61 + disroot/templates/identities.html | 43 + disroot/templates/identityedit.html | 13 + disroot/templates/includes/footer.html | 14 + disroot/templates/includes/layout.html | 35 + disroot/templates/includes/mail-menu.html | 92 + disroot/templates/includes/menu.html | 37 + disroot/templates/includes/pagenav.html | 20 + disroot/templates/includes/settings-menu.html | 12 + disroot/templates/login.html | 24 + disroot/templates/mail.html | 207 + disroot/templates/message.html | 83 + disroot/templates/messagepart.html | 121 + disroot/templates/messageprint.html | 29 + disroot/templates/plugin.html | 15 + disroot/templates/responseedit.html | 13 + disroot/templates/responses.html | 41 + disroot/templates/settings.html | 28 + disroot/templates/settingsedit.html | 13 + disroot/thumbnail.png | Bin 0 -> 5988 bytes disroot/ui.js | 4193 +++++++++++++++++ disroot/watermark.html | 18 + elastic/.gitignore | 4 + elastic/README.md | 113 + elastic/fonts/fa-regular-400.woff | Bin 0 -> 16804 bytes elastic/fonts/fa-regular-400.woff2 | Bin 0 -> 13580 bytes elastic/fonts/fa-solid-900.woff | Bin 0 -> 98020 bytes elastic/fonts/fa-solid-900.woff2 | Bin 0 -> 75440 bytes elastic/fonts/roboto-v19-italic-700.woff | Bin 0 -> 70756 bytes elastic/fonts/roboto-v19-italic-700.woff2 | Bin 0 -> 55192 bytes elastic/fonts/roboto-v19-italic.woff | Bin 0 -> 70252 bytes elastic/fonts/roboto-v19-italic.woff2 | Bin 0 -> 54984 bytes elastic/fonts/roboto-v19-regular-700.woff | Bin 0 -> 66260 bytes elastic/fonts/roboto-v19-regular-700.woff2 | Bin 0 -> 51088 bytes elastic/fonts/roboto-v19-regular.woff | Bin 0 -> 66044 bytes elastic/fonts/roboto-v19-regular.woff2 | Bin 0 -> 51116 bytes elastic/images/contactgroup.svg | 3 + elastic/images/contactpic.svg | 3 + elastic/images/corner-handle.svg | 3 + elastic/images/download.svg | 3 + elastic/images/favicon.ico | Bin 0 -> 2294 bytes elastic/images/logo.svg | 11 + elastic/meta.json | 18 + elastic/styles/_styles.less | 1 + elastic/styles/_variables.less | 1 + elastic/styles/colors.less | 217 + elastic/styles/embed.less | 95 + elastic/styles/fontawesome.less | 1397 ++++++ elastic/styles/global.less | 97 + elastic/styles/layout.less | 403 ++ elastic/styles/mixins.less | 62 + elastic/styles/print.less | 79 + elastic/styles/styles.less | 404 ++ elastic/styles/variables.less | 58 + elastic/styles/widgets/buttons.less | 321 ++ elastic/styles/widgets/common.less | 586 +++ elastic/styles/widgets/dialogs.less | 255 + elastic/styles/widgets/editor.less | 965 ++++ elastic/styles/widgets/forms.less | 1389 ++++++ elastic/styles/widgets/jqueryui.less | 438 ++ elastic/styles/widgets/lists.less | 1019 ++++ elastic/styles/widgets/menu.less | 936 ++++ elastic/styles/widgets/messages.less | 267 ++ elastic/templates/about.html | 16 + elastic/templates/addressbook.html | 158 + elastic/templates/bounce.html | 73 + elastic/templates/compose.html | 277 ++ elastic/templates/contact.html | 23 + elastic/templates/contactedit.html | 29 + elastic/templates/contactimport.html | 9 + elastic/templates/contactprint.html | 19 + elastic/templates/contactsearch.html | 9 + elastic/templates/dialog.html | 7 + elastic/templates/error.html | 21 + elastic/templates/folderedit.html | 13 + elastic/templates/folders.html | 61 + elastic/templates/identities.html | 43 + elastic/templates/identityedit.html | 13 + elastic/templates/includes/footer.html | 14 + elastic/templates/includes/layout.html | 35 + elastic/templates/includes/mail-menu.html | 92 + elastic/templates/includes/menu.html | 37 + elastic/templates/includes/pagenav.html | 20 + elastic/templates/includes/settings-menu.html | 12 + elastic/templates/login.html | 24 + elastic/templates/mail.html | 207 + elastic/templates/message.html | 83 + elastic/templates/messagepart.html | 121 + elastic/templates/messageprint.html | 29 + elastic/templates/plugin.html | 15 + elastic/templates/responseedit.html | 13 + elastic/templates/responses.html | 41 + elastic/templates/settings.html | 28 + elastic/templates/settingsedit.html | 13 + elastic/thumbnail.png | Bin 0 -> 1851 bytes elastic/ui.js | 4193 +++++++++++++++++ elastic/watermark.html | 17 + larry/README | 22 + larry/addressbook.css | 444 ++ larry/embed.css | 36 + larry/googiespell.css | 108 + larry/images/addcontact.png | Bin 0 -> 265 bytes larry/images/ajaxloader.gif | Bin 0 -> 1434 bytes larry/images/ajaxloader_dark.gif | Bin 0 -> 1849 bytes larry/images/buttons.png | Bin 0 -> 13608 bytes larry/images/contactgroup.png | Bin 0 -> 935 bytes larry/images/contactpic.png | Bin 0 -> 831 bytes larry/images/contactpic_32px.png | Bin 0 -> 246 bytes larry/images/contactpic_48px.png | Bin 0 -> 353 bytes larry/images/favicon.ico | Bin 0 -> 34494 bytes larry/images/filedrop.png | Bin 0 -> 415 bytes larry/images/filetypes.png | Bin 0 -> 4718 bytes larry/images/googiespell/change_lang.gif | Bin 0 -> 110 bytes larry/images/googiespell/indicator.gif | Bin 0 -> 722 bytes larry/images/googiespell/ok.gif | Bin 0 -> 160 bytes larry/images/googiespell/spellc.gif | Bin 0 -> 354 bytes larry/images/listicons.png | Bin 0 -> 10460 bytes larry/images/messages.png | Bin 0 -> 1264 bytes larry/images/messages_dark.png | Bin 0 -> 601 bytes larry/images/overflowshadow.png | Bin 0 -> 201 bytes larry/images/quota.png | Bin 0 -> 1389 bytes larry/images/roundcube_logo.png | Bin 0 -> 3792 bytes larry/images/selector.png | Bin 0 -> 118 bytes larry/images/splitter.png | Bin 0 -> 134 bytes larry/images/watermark.jpg | Bin 0 -> 5000 bytes larry/includes/footer.html | 5 + larry/includes/header.html | 44 + larry/includes/links.html | 11 + larry/includes/mailtoolbar.html | 63 + larry/includes/settingstabs.html | 9 + larry/mail.css | 1563 ++++++ larry/meta.json | 6 + larry/print.css | 206 + larry/settings.css | 386 ++ larry/styles.css | 3167 +++++++++++++ larry/templates/about.html | 21 + larry/templates/addressbook.html | 162 + larry/templates/bounce.html | 45 + larry/templates/compose.html | 238 + larry/templates/contact.html | 32 + larry/templates/contactedit.html | 47 + larry/templates/contactprint.html | 20 + larry/templates/contactsearch.html | 17 + larry/templates/error.html | 18 + larry/templates/folderedit.html | 24 + larry/templates/folders.html | 68 + larry/templates/identities.html | 40 + larry/templates/identityedit.html | 21 + larry/templates/importcontacts.html | 17 + larry/templates/login.html | 54 + larry/templates/mail.html | 270 ++ larry/templates/message.html | 111 + larry/templates/messageerror.html | 55 + larry/templates/messagepart.html | 90 + larry/templates/messagepreview.html | 81 + larry/templates/messageprint.html | 19 + larry/templates/plugin.html | 27 + larry/templates/responseedit.html | 21 + larry/templates/responses.html | 41 + larry/templates/settings.html | 38 + larry/templates/settingsedit.html | 21 + larry/thumbnail.png | Bin 0 -> 1995 bytes larry/ui.js | 1522 ++++++ larry/watermark.html | 21 + preview.png | Bin 0 -> 153973 bytes 333 files changed, 46880 insertions(+) create mode 100644 classic/README create mode 100644 classic/addressbook.css create mode 100644 classic/common.css create mode 100644 classic/embed.css create mode 100644 classic/functions.js create mode 100644 classic/googiespell.css create mode 100644 classic/images/abook_toolbar.png create mode 100644 classic/images/buttons/add_act.png create mode 100644 classic/images/buttons/add_pas.png create mode 100644 classic/images/buttons/add_sel.png create mode 100644 classic/images/buttons/bg.gif create mode 100644 classic/images/cleardot.png create mode 100644 classic/images/contactactions.png create mode 100644 classic/images/contactgroup.png create mode 100644 classic/images/contactpic.png create mode 100644 classic/images/dbutton.png create mode 100644 classic/images/dimple.png create mode 100644 classic/images/display/icons.gif create mode 100644 classic/images/display/icons.png create mode 100644 classic/images/display/loading.gif create mode 100644 classic/images/display/loading_blue.gif create mode 100644 classic/images/favicon.ico create mode 100644 classic/images/filedrop.png create mode 100644 classic/images/googiespell/change_lang.gif create mode 100644 classic/images/googiespell/indicator.gif create mode 100644 classic/images/googiespell/ok.gif create mode 100644 classic/images/googiespell/spellc.gif create mode 100644 classic/images/icons/attachment.png create mode 100644 classic/images/icons/blank.gif create mode 100644 classic/images/icons/collapsed.png create mode 100644 classic/images/icons/columnpicker.gif create mode 100644 classic/images/icons/delete.png create mode 100644 classic/images/icons/deleted.png create mode 100644 classic/images/icons/dot.png create mode 100644 classic/images/icons/down_small.gif create mode 100644 classic/images/icons/expanded.png create mode 100644 classic/images/icons/extwin.png create mode 100644 classic/images/icons/flagged.png create mode 100644 classic/images/icons/folders.png create mode 100644 classic/images/icons/forwarded.png create mode 100644 classic/images/icons/forwarded_replied.png create mode 100644 classic/images/icons/glass.png create mode 100644 classic/images/icons/glass_roll.png create mode 100644 classic/images/icons/groupactions.png create mode 100644 classic/images/icons/html.png create mode 100644 classic/images/icons/minus.gif create mode 100644 classic/images/icons/plus.gif create mode 100644 classic/images/icons/rename.png create mode 100644 classic/images/icons/replied.png create mode 100644 classic/images/icons/reset.gif create mode 100644 classic/images/icons/silhouette.png create mode 100644 classic/images/icons/sort.gif create mode 100644 classic/images/icons/text.png create mode 100644 classic/images/icons/unflagged.png create mode 100644 classic/images/icons/unread.png create mode 100644 classic/images/icons/unread_children.png create mode 100644 classic/images/icons/up_small.gif create mode 100644 classic/images/listheader.gif create mode 100644 classic/images/mail_footer.png create mode 100644 classic/images/mail_toolbar.png create mode 100644 classic/images/messageactions.png create mode 100644 classic/images/messageicons.png create mode 100644 classic/images/pagenav.gif create mode 100644 classic/images/quota-colors.png create mode 100644 classic/images/quota.png create mode 100644 classic/images/roundcube_logo.png create mode 100644 classic/images/searchfield.gif create mode 100644 classic/images/tabs-left.gif create mode 100644 classic/images/tabs-right.gif create mode 100644 classic/images/taskbar.png create mode 100644 classic/images/taskicons.gif create mode 100644 classic/images/taskicons.png create mode 100644 classic/images/tree.gif create mode 100644 classic/images/watermark.gif create mode 100644 classic/includes/header.html create mode 100644 classic/includes/links.html create mode 100644 classic/includes/messagetoolbar.html create mode 100644 classic/includes/settingstabs.html create mode 100644 classic/includes/taskbar.html create mode 100644 classic/mail.css create mode 100644 classic/meta.json create mode 100644 classic/print.css create mode 100644 classic/safari.css create mode 100644 classic/settings.css create mode 100644 classic/splitter.js create mode 100644 classic/templates/about.html create mode 100644 classic/templates/addressbook.html create mode 100644 classic/templates/bounce.html create mode 100644 classic/templates/compose.html create mode 100644 classic/templates/contact.html create mode 100644 classic/templates/contactadd.html create mode 100644 classic/templates/contactedit.html create mode 100644 classic/templates/contactprint.html create mode 100644 classic/templates/contactsearch.html create mode 100644 classic/templates/error.html create mode 100644 classic/templates/folderedit.html create mode 100644 classic/templates/folders.html create mode 100644 classic/templates/identities.html create mode 100644 classic/templates/identityedit.html create mode 100644 classic/templates/importcontacts.html create mode 100644 classic/templates/login.html create mode 100644 classic/templates/mail.html create mode 100644 classic/templates/message.html create mode 100644 classic/templates/messageerror.html create mode 100644 classic/templates/messagepart.html create mode 100644 classic/templates/messagepreview.html create mode 100644 classic/templates/messageprint.html create mode 100644 classic/templates/plugin.html create mode 100644 classic/templates/responseedit.html create mode 100644 classic/templates/responses.html create mode 100644 classic/templates/settings.html create mode 100644 classic/templates/settingsedit.html create mode 100644 classic/thumbnail.png create mode 100644 classic/watermark.html create mode 100644 disroot/.gitignore create mode 100644 disroot/README.md create mode 100644 disroot/fonts/fa-regular-400.woff create mode 100644 disroot/fonts/fa-regular-400.woff2 create mode 100644 disroot/fonts/fa-solid-900.woff create mode 100644 disroot/fonts/fa-solid-900.woff2 create mode 100644 disroot/fonts/roboto-v19-italic-700.woff create mode 100644 disroot/fonts/roboto-v19-italic-700.woff2 create mode 100644 disroot/fonts/roboto-v19-italic.woff create mode 100644 disroot/fonts/roboto-v19-italic.woff2 create mode 100644 disroot/fonts/roboto-v19-regular-700.woff create mode 100644 disroot/fonts/roboto-v19-regular-700.woff2 create mode 100644 disroot/fonts/roboto-v19-regular.woff create mode 100644 disroot/fonts/roboto-v19-regular.woff2 create mode 100644 disroot/images/contactgroup.svg create mode 100644 disroot/images/contactpic.svg create mode 100644 disroot/images/corner-handle.svg create mode 100644 disroot/images/download.svg create mode 100644 disroot/images/favicon.ico create mode 100644 disroot/images/logo.svg create mode 100644 disroot/meta.json create mode 100644 disroot/styles/_styles.less create mode 100644 disroot/styles/_variables.less create mode 100644 disroot/styles/colors.less create mode 100644 disroot/styles/embed.less create mode 100644 disroot/styles/fontawesome.less create mode 100644 disroot/styles/global.less create mode 100644 disroot/styles/layout.less create mode 100644 disroot/styles/mixins.less create mode 100644 disroot/styles/print.less create mode 100644 disroot/styles/styles.less create mode 100644 disroot/styles/variables.less create mode 100644 disroot/styles/widgets/buttons.less create mode 100644 disroot/styles/widgets/common.less create mode 100644 disroot/styles/widgets/dialogs.less create mode 100644 disroot/styles/widgets/editor.less create mode 100644 disroot/styles/widgets/forms.less create mode 100644 disroot/styles/widgets/jqueryui.less create mode 100644 disroot/styles/widgets/lists.less create mode 100644 disroot/styles/widgets/menu.less create mode 100644 disroot/styles/widgets/messages.less create mode 100644 disroot/templates/about.html create mode 100644 disroot/templates/addressbook.html create mode 100644 disroot/templates/bounce.html create mode 100644 disroot/templates/compose.html create mode 100644 disroot/templates/contact.html create mode 100644 disroot/templates/contactedit.html create mode 100644 disroot/templates/contactimport.html create mode 100644 disroot/templates/contactprint.html create mode 100644 disroot/templates/contactsearch.html create mode 100644 disroot/templates/dialog.html create mode 100644 disroot/templates/error.html create mode 100644 disroot/templates/folderedit.html create mode 100644 disroot/templates/folders.html create mode 100644 disroot/templates/identities.html create mode 100644 disroot/templates/identityedit.html create mode 100644 disroot/templates/includes/footer.html create mode 100644 disroot/templates/includes/layout.html create mode 100644 disroot/templates/includes/mail-menu.html create mode 100644 disroot/templates/includes/menu.html create mode 100644 disroot/templates/includes/pagenav.html create mode 100644 disroot/templates/includes/settings-menu.html create mode 100644 disroot/templates/login.html create mode 100644 disroot/templates/mail.html create mode 100644 disroot/templates/message.html create mode 100644 disroot/templates/messagepart.html create mode 100644 disroot/templates/messageprint.html create mode 100644 disroot/templates/plugin.html create mode 100644 disroot/templates/responseedit.html create mode 100644 disroot/templates/responses.html create mode 100644 disroot/templates/settings.html create mode 100644 disroot/templates/settingsedit.html create mode 100644 disroot/thumbnail.png create mode 100644 disroot/ui.js create mode 100644 disroot/watermark.html create mode 100644 elastic/.gitignore create mode 100644 elastic/README.md create mode 100644 elastic/fonts/fa-regular-400.woff create mode 100644 elastic/fonts/fa-regular-400.woff2 create mode 100644 elastic/fonts/fa-solid-900.woff create mode 100644 elastic/fonts/fa-solid-900.woff2 create mode 100644 elastic/fonts/roboto-v19-italic-700.woff create mode 100644 elastic/fonts/roboto-v19-italic-700.woff2 create mode 100644 elastic/fonts/roboto-v19-italic.woff create mode 100644 elastic/fonts/roboto-v19-italic.woff2 create mode 100644 elastic/fonts/roboto-v19-regular-700.woff create mode 100644 elastic/fonts/roboto-v19-regular-700.woff2 create mode 100644 elastic/fonts/roboto-v19-regular.woff create mode 100644 elastic/fonts/roboto-v19-regular.woff2 create mode 100644 elastic/images/contactgroup.svg create mode 100644 elastic/images/contactpic.svg create mode 100644 elastic/images/corner-handle.svg create mode 100644 elastic/images/download.svg create mode 100644 elastic/images/favicon.ico create mode 100644 elastic/images/logo.svg create mode 100644 elastic/meta.json create mode 100644 elastic/styles/_styles.less create mode 100644 elastic/styles/_variables.less create mode 100644 elastic/styles/colors.less create mode 100644 elastic/styles/embed.less create mode 100644 elastic/styles/fontawesome.less create mode 100644 elastic/styles/global.less create mode 100644 elastic/styles/layout.less create mode 100644 elastic/styles/mixins.less create mode 100644 elastic/styles/print.less create mode 100644 elastic/styles/styles.less create mode 100644 elastic/styles/variables.less create mode 100644 elastic/styles/widgets/buttons.less create mode 100644 elastic/styles/widgets/common.less create mode 100644 elastic/styles/widgets/dialogs.less create mode 100644 elastic/styles/widgets/editor.less create mode 100644 elastic/styles/widgets/forms.less create mode 100644 elastic/styles/widgets/jqueryui.less create mode 100644 elastic/styles/widgets/lists.less create mode 100644 elastic/styles/widgets/menu.less create mode 100644 elastic/styles/widgets/messages.less create mode 100644 elastic/templates/about.html create mode 100644 elastic/templates/addressbook.html create mode 100644 elastic/templates/bounce.html create mode 100644 elastic/templates/compose.html create mode 100644 elastic/templates/contact.html create mode 100644 elastic/templates/contactedit.html create mode 100644 elastic/templates/contactimport.html create mode 100644 elastic/templates/contactprint.html create mode 100644 elastic/templates/contactsearch.html create mode 100644 elastic/templates/dialog.html create mode 100644 elastic/templates/error.html create mode 100644 elastic/templates/folderedit.html create mode 100644 elastic/templates/folders.html create mode 100644 elastic/templates/identities.html create mode 100644 elastic/templates/identityedit.html create mode 100644 elastic/templates/includes/footer.html create mode 100644 elastic/templates/includes/layout.html create mode 100644 elastic/templates/includes/mail-menu.html create mode 100644 elastic/templates/includes/menu.html create mode 100644 elastic/templates/includes/pagenav.html create mode 100644 elastic/templates/includes/settings-menu.html create mode 100644 elastic/templates/login.html create mode 100644 elastic/templates/mail.html create mode 100644 elastic/templates/message.html create mode 100644 elastic/templates/messagepart.html create mode 100644 elastic/templates/messageprint.html create mode 100644 elastic/templates/plugin.html create mode 100644 elastic/templates/responseedit.html create mode 100644 elastic/templates/responses.html create mode 100644 elastic/templates/settings.html create mode 100644 elastic/templates/settingsedit.html create mode 100644 elastic/thumbnail.png create mode 100644 elastic/ui.js create mode 100644 elastic/watermark.html create mode 100644 larry/README create mode 100644 larry/addressbook.css create mode 100644 larry/embed.css create mode 100644 larry/googiespell.css create mode 100644 larry/images/addcontact.png create mode 100644 larry/images/ajaxloader.gif create mode 100644 larry/images/ajaxloader_dark.gif create mode 100644 larry/images/buttons.png create mode 100644 larry/images/contactgroup.png create mode 100644 larry/images/contactpic.png create mode 100644 larry/images/contactpic_32px.png create mode 100644 larry/images/contactpic_48px.png create mode 100644 larry/images/favicon.ico create mode 100644 larry/images/filedrop.png create mode 100644 larry/images/filetypes.png create mode 100644 larry/images/googiespell/change_lang.gif create mode 100644 larry/images/googiespell/indicator.gif create mode 100644 larry/images/googiespell/ok.gif create mode 100644 larry/images/googiespell/spellc.gif create mode 100644 larry/images/listicons.png create mode 100644 larry/images/messages.png create mode 100644 larry/images/messages_dark.png create mode 100644 larry/images/overflowshadow.png create mode 100644 larry/images/quota.png create mode 100644 larry/images/roundcube_logo.png create mode 100644 larry/images/selector.png create mode 100644 larry/images/splitter.png create mode 100644 larry/images/watermark.jpg create mode 100644 larry/includes/footer.html create mode 100644 larry/includes/header.html create mode 100644 larry/includes/links.html create mode 100644 larry/includes/mailtoolbar.html create mode 100644 larry/includes/settingstabs.html create mode 100644 larry/mail.css create mode 100644 larry/meta.json create mode 100644 larry/print.css create mode 100644 larry/settings.css create mode 100644 larry/styles.css create mode 100644 larry/templates/about.html create mode 100644 larry/templates/addressbook.html create mode 100644 larry/templates/bounce.html create mode 100644 larry/templates/compose.html create mode 100644 larry/templates/contact.html create mode 100644 larry/templates/contactedit.html create mode 100644 larry/templates/contactprint.html create mode 100644 larry/templates/contactsearch.html create mode 100644 larry/templates/error.html create mode 100644 larry/templates/folderedit.html create mode 100644 larry/templates/folders.html create mode 100644 larry/templates/identities.html create mode 100644 larry/templates/identityedit.html create mode 100644 larry/templates/importcontacts.html create mode 100644 larry/templates/login.html create mode 100644 larry/templates/mail.html create mode 100644 larry/templates/message.html create mode 100644 larry/templates/messageerror.html create mode 100644 larry/templates/messagepart.html create mode 100644 larry/templates/messagepreview.html create mode 100644 larry/templates/messageprint.html create mode 100644 larry/templates/plugin.html create mode 100644 larry/templates/responseedit.html create mode 100644 larry/templates/responses.html create mode 100644 larry/templates/settings.html create mode 100644 larry/templates/settingsedit.html create mode 100644 larry/thumbnail.png create mode 100644 larry/ui.js create mode 100644 larry/watermark.html create mode 100644 preview.png diff --git a/README.md b/README.md index e69de29..f20b38e 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,5 @@ +# Disroot Roundcube themes + +You can find here the default Roundcube themes, plus the Disroot flavor one. + +![Disroot](preview.png) diff --git a/classic/README b/classic/README new file mode 100644 index 0000000..67ec1e1 --- /dev/null +++ b/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 +https://github.com/roundcube/roundcubemail/wiki/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/classic/addressbook.css b/classic/addressbook.css new file mode 100644 index 0000000..91e675f --- /dev/null +++ b/classic/addressbook.css @@ -0,0 +1,534 @@ +/***** 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 { + display: block; + float: left; + width: 32px; + height: 32px; + padding: 0; + margin: 0 5px; + 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.print { + background: url(images/mail_toolbar.png) 0 0 no-repeat transparent; + background-position: -256px 0; +} + +#abooktoolbar a.printSel { + background: url(images/mail_toolbar.png) 0 0 no-repeat transparent; + background-position: -256px -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 a.exportAll { + background-position: -128px 0; +} + +#abooktoolbar a.exportAllSel { + background-position: -128px -32px; +} + +#abooktoolbar a.search { + background-position: -170px 0; +} + +#abooktoolbar a.searchSel { + background-position: -170px -32px; +} + +#abooktoolbar a.contactmenu { + background: url(images/mail_toolbar.png) 0 0 no-repeat transparent; + background-position: -320px 0; + width: 34px; +} + +#contactmenu li a +{ + background: url(images/contactactions.png) no-repeat 7px 0; + background-position: 7px 20px; +} + +#contactmenu li a.qrcode +{ + background-position: 7px -39px; +} + +#contactmenu li a.assigngroup +{ + background-position: 7px 0; +} + +#contactmenu li a.removegroup +{ + background-position: 7px -19px; +} + +#contactmenu li a.movelink +{ + background: url(images/messageactions.png) no-repeat 7px 0; + background-position: 6px -160px; +} + +#contactmenu li a.copylink +{ + background: url(images/messageactions.png) no-repeat 7px 0; + background-position: 6px -142px; +} + +#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; +} + +#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 li a, +#savedsearchlist li a, +#addressbook-selector li a, +#contactgroup-selector li a +{ + cursor: default; + display: block; + padding-left: 25px; + padding-top: 2px; + padding-bottom: 2px; + height: 16px; + text-decoration: none; + white-space: nowrap; + background-image: url(images/icons/folders.png); + background-position: 5px -108px; + background-repeat: no-repeat; +} + +#directorylist ul li a +{ + padding-left: 45px; + background-position: 22px -108px; +} + +#directorylist ul ul li a +{ + padding-left: 62px; + background-position: 39px -108px; +} + +#directorylist ul ul ul li a +{ + padding-left: 79px; + background-position: 39px -108px; +} + +#directorylist li.contactgroup a +{ + background-position: 5px -143px; +} + +#directorylist ul li.contactgroup a +{ + background-position: 22px -143px; +} + +#directorylist ul ul li.contactgroup a +{ + background-position: 39px -143px; +} + +#directorylist ul ul ul li.contactgroup a +{ + background-position: 56px -143px; +} + +#savedsearchlist li.contactsearch a +{ + background-position: 6px -162px; +} + +#addressbook-selector li a.addressbook +{ + padding-left: 25px; +} + +#addressbook-selector li a.contactgroup +{ + padding-left: 45px !important; + background-position: 25px -143px; +} + +#contactgroup-selector li a +{ + padding-left: 25px; + background-position: 5px -143px; +} + +#contacts-table +{ + width: 100%; + table-layout: fixed; +} + +#contacts-table tbody td +{ + cursor: default; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; +} + +/* This padding-left should be equal to the focused border-left + the focused padding-left */ +#contacts-table thead tr td:first-child, +#contacts-table tbody tr td:first-child { + border-left: 0; + padding-left: 8px; +} + +/* because of border-collapse, we make the left border twice what we want it to be - half will be hidden to the left */ +#contacts-table tbody tr.focused > td:first-child { + border-left: 2px solid #d4d4d4; + padding-left: 6px; +} + +#contacts-table tbody tr.selected.focused > td:first-child { + border-left: 1px solid #ccc; + padding-left: 7px; +} + +#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; + 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 > legend +{ + display: none; +} + +#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 { + max-width: 60px; + max-height: 80px; +} + +#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/classic/common.css b/classic/common.css new file mode 100644 index 0000000..5265c5a --- /dev/null +++ b/classic/common.css @@ -0,0 +1,1660 @@ +/***** 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; +} + +select, input, textarea, button +{ + font-size: inherit; + 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; +} + +a.disabled +{ + color: #999; + text-decoration: none; + cursor: default; +} + +hr +{ + height: 1px; + background-color: #666; + border-style: none; +} + +input[type="text"], +input[type="button"], +input[type="password"], +button, +textarea +{ + border: 1px solid #666; + color: #333; + background-color: #FFF; +} + +button, input, textarea +{ + color: black; + padding: 1px 3px; +} + +input.placeholder, +textarea.placeholder, +input:-moz-placeholder, +textarea:-moz-placeholder +{ + color: #aaa; +} + +button, +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; +} + +button:hover, +input.button:hover +{ + color: black; +} + +button[disabled], +button[disabled]:hover, +input.button[disabled], +input.button[disabled]:hover +{ + color: #aaa; + border-color: #ccc; +} + +button.mainaction, +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; +} + +.voice +{ + display: none; +} + +.noselect +{ + user-select: none; + -moz-user-select: none; + -khtml-user-select: none; + -ms-user-select: none; + -webkit-user-select: none; +} + +/* fixes vertical alignment of checkboxes and labels */ +label input, +label span +{ + vertical-align: middle; +} + +ul.proplist +{ + padding: 0; + margin: 0; + list-style: none; +} + + +/** common user interface objects */ + +#mainscreen +{ + position: absolute; + top: 85px; + right: 20px; + bottom: 20px; + left: 20px; +} + +.extwin #mainscreen +{ + top: 43px; +} + +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, +body > #mainscreen #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, +body > #message div.uploading, +#message-objects div.loading +{ + background: url(images/display/loading.gif) 6px 3px no-repeat; + background-color: #EBEBEB; + border: 1px solid #CCCCCC; +} + +body > #message div.voice +{ + position: absolute; + top: -1000px; + clip: rect(0 0 0 0); +} + +body > #message a +{ + cursor: pointer; + text-decoration: underline; +} + +body.extwin #closelink +{ + position: absolute; + top: 5px; + right: 20px; + text-align: right; + z-index:100; +} + +.box +{ + border: 1px solid #999; +} + +.boxtitle +{ + height: 12px !important; + padding: 3px 10px 4px 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 .boxwarning +{ + margin: 0 0 10px; + display: block; + min-height: 22px; + background: url(images/display/icons.png) #EF9398 6px -95px no-repeat; + border: 1px solid #DC5757; + padding: 8px 10px 8px 46px; +} + +.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; + 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; +} + +#rcmcountdisplay +{ + float: left; + margin-right: 10px; +} + +#countcontrols #pagejumper +{ + margin: 0 5px; + float: right; + text-align: center; + padding: 0; + cursor: default; + font-size: 10px; +} + +.toolbarseparator { + display: block; + float: left; + width: 5px; + height: 32px; + padding: 0; + margin: 0 5px; + overflow: hidden; + background: url(images/abook_toolbar.png) -162px 0 no-repeat transparent; + opacity: 0.99; /* this is needed to make buttons appear correctly in Chrome */ +} + +.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; + max-height: 70%; + overflow: -moz-scrollbars-vertical; + overflow-y: 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; + box-shadow: 1px 1px 12px #999; + -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, +.popupmenu li label +{ + display: block; + color: #a0a0a0; + padding: 3px 16px 3px 10px; + text-decoration: none; + min-height: 14px; + line-height: 14px; + background: transparent; +} + +.popupmenu li label.comment +{ + color: #999; + font-style: italic; + padding-top: 4px; + padding-bottom: 3px; +} + +.popupmenu li a.active, +.popupmenu li a.active:active, +.popupmenu li a.active:visited +{ + color: #333; + cursor: pointer; +} + +.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; +} + +.popup label > input { + margin-left: 10px; +} + +.ui-dialog iframe { + width: 100%; + height: 100%; + border: 0; +} + +.ui-dialog-content.iframe { + padding: 0 !important; + overflow: hidden !important; +} + + +/***** common table settings ******/ + +table.records-table thead tr th, +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; + text-align: left; +} + +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; + outline: none; +} + +table.records-table tr +{ + background-color: #FFFFFF; +} + +table.records-table tr.selected td +{ + color: #FFFFFF; + background-color: #CC3333; +} + +table.records-table tr.selected td a +{ + color: #FFFFFF; +} + +table.records-table tr.focused td +{ +} + +table.records-table tr.unfocused td +{ + color: #FFFFFF; + background-color: #929292; +} + +ul.treelist li +{ + position: relative; +} + +ul.treelist li div.treetoggle +{ + position: absolute; + left: 8px; + top: 2px; + width: 14px; + height: 16px; + cursor: pointer; +} + +ul.treelist ul li div.treetoggle +{ + left: 25px; +} + +ul.treelist ul ul li div.treetoggle +{ + left: 42px; +} + +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; +} + +ul.treelist, +ul.treelist li ul +{ + list-style: none; + margin: 0; + padding: 0; + background-color: #FFFFFF; +} + +ul.treelist li ul +{ + border-top: 1px solid #EBEBEB; +} + +ul.treelist li +{ + display: block; + font-size: 11px; + border-bottom: 1px solid #EBEBEB; + white-space: nowrap; + overflow: hidden; +} + +ul.treelist li a +{ + cursor: default; + display: block; + padding-left: 25px; + padding-top: 2px; + padding-bottom: 2px; + height: 16px; + line-height: 16px; + text-decoration: none; + white-space: nowrap; +} + +ul.treelist li ul li a +{ + padding-left: 45px; +} + +ul.treelist ul ul li a +{ + padding-left: 65px; +} + +ul.treelist li ul li:last-child +{ + border-bottom: 0; +} + +ul.treelist li.selected > a, +ul.treelist li.selected > div a +{ + color: #FFF; + font-weight: bold; + background-color: #929292; +} + +ul.treelist li.droptarget +{ + background-color: #FFFFA6; +} + +/***** folders list *****/ + +.folderlist li ul li:last-child +{ + border-bottom: 0 none; +} + +.folderlist li.inbox a +{ + background-position: 5px -18px; +} + +.folderlist li.drafts a +{ + background-position: 5px -36px; +} + +.folderlist li.sent a +{ + background-position: 5px -53px; +} + +.folderlist li.junk a +{ + background-position: 5px -72px; +} + +.folderlist li.trash a +{ + background-position: 5px -180px; +} + +.folderlist li.trash.empty a +{ + background-position: 5px -90px; +} + +.folderlist li a +{ + cursor: default; + display: block; + position: relative; + padding-left: 25px; + padding-top: 2px; + padding-bottom: 2px; + text-decoration: none; + height: 15px; + background: url(images/icons/folders.png) 5px 1px no-repeat; +} + +.folderlist li.virtual > a +{ + color: #666; +} + +.folderlist li.selected, +.folderlist li.droptarget li.selected +{ + background-color: #929292; +} + +.folderlist li.selected > a, +.folderlist li.droptarget li.selected a +{ + color: #FFF; + font-weight: bold; +} + +.folderlist li.droptarget +{ + background-color: #FFFFA6; +} + +/* styles for nested folders */ +.folderlist ul { + list-style: none; + padding: 0; + margin: 0; + border-top: 1px solid #EBEBEB; + background-color: #FFF; + font-weight: normal; +} + +.folderlist li.mailbox ul li a { + padding-left: 40px; /* 24 + 1 x 16 */ + background-position: 20px 1px; /* 4 + 1 x 16 */ +} +.folderlist li.mailbox ul li div.treetoggle { + left: 23px !important; +} + +.folderlist li.mailbox ul ul li.mailbox a { + padding-left: 56px; /* 2x */ + background-position: 36px 1px; +} +.folderlist li.mailbox ul ul li div.treetoggle { + left: 39px !important; +} + +.folderlist li.mailbox ul ul ul li.mailbox a { + padding-left: 72px; /* 3x */ + background-position: 52px 1px; +} +.folderlist li.mailbox ul ul ul li div.treetoggle { + left: 55px !important; +} + +.folderlist li.mailbox ul ul ul ul li.mailbox a { + padding-left: 88px; /* 4x */ + background-position: 68px 1px; +} +.folderlist li.mailbox ul ul ul ul li div.treetoggle { + left: 71px !important; +} + +/* indent folders on levels > 4 */ +.folderlist li.mailbox ul ul ul ul ul li { + padding-left: 16px; +} +.folderlist li.mailbox ul ul ul ul ul li div.treetoggle { + left: 87px !important; +} + +.folderlist li.mailbox ul li.drafts a +{ + background-position: 21px -36px; +} + +.folderlist li.mailbox ul li.sent a +{ + background-position: 21px -53px; +} + +.folderlist li.mailbox ul li.junk a +{ + background-position: 21px -72px; +} + +.folderlist li.mailbox ul li.trash a +{ + background-position: 21px -180px; +} + +.folderlist li.mailbox ul li.trash.empty a +{ + background-position: 21px -90px; +} + + +/***** mac-style quicksearch field *****/ + +div.searchbox, +#quicksearchbar +{ + position: relative; + width: 190px; + height: 20px; + text-align: right; + background: url(images/searchfield.gif) top left no-repeat; +} + +#quicksearchbar +{ + position: absolute; + top: 55px; + right: 10px; +} + +#searchreset, +div.searchbox a.searchreset +{ + position: absolute; + top: 3px; + right: 12px; + text-decoration: none; +} + +#searchmenulink, +div.searchbox a.searchmenu, +div.searchbox a.searchicon +{ + position: absolute; + top: 3px; + right: 168px; +} + +div.searchbox a.searchreset +{ + display: block; + width: 14px; + height: 14px; + overflow: hidden; + white-space: nowrap; + text-indent: 50000px; + background: url(images/icons/reset.gif) top left no-repeat; +} + +div.searchbox a.searchicon +{ + display: inline-block; + width: 16px; + height: 16px; + overflow: hidden; + background: url(images/icons/glass.png) top left no-repeat; +} + +#quicksearchbar img +{ + vertical-align: middle; +} + +#quicksearchbox, +div.searchbox > input +{ + position: absolute; + top: 2px; + left: 24px; + width: 140px; + height: 15px; + font-size: 11px; + padding: 0px; + border: none; + outline: none; +} + +.propform div.prop +{ + margin-bottom: 0.5em; +} + +.propform div.prop.block label +{ + display: block; + margin-bottom: 2px; +} + +.propform div.prop.block input, +.propform div.prop.block textarea +{ + width: 97%; +} + +.formcontainer +{ + background-color: #f2f2f2; +} + +.formcontent table { + width: 100%; +} + +.formcontent input, +.formcontent textarea { + width: 95%; +} + +.listsearchbox +{ + border-bottom: solid 1px #ddd; + padding: 2px 4px 1px; + display: none; + background-color: #f2f2f2; +} + +.listsearchbox a.iconbutton.reset +{ + background: url(images/icons/reset.gif) no-repeat 0 0; + width: 13px; + height: 13px; + text-indent: 50000px; + position: absolute; + top: 3px; + left: 165px; + overflow: hidden; +} + +/***** 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; + box-shadow: 1px 1px 12px #999; + -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, +#pagejump-selector 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; +} + +#login-noscriptwarning +{ + margin: 2em auto 0 auto; + width: 400px; + color: #cf2734; + font-weight: bold; +} + +.disabled, +a.disabled +{ + color: #999; +} + +font.bold +{ + font-weight: bold; +} + +#login-form .formbuttons +{ + text-align: center; +} + +/***** 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: 3px 12px 3px 28px; + text-decoration: none; + min-height: 14px; + line-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; +} + +#searchmenu ul.toolbarmenu li label +{ + padding: 2px 0; + color: black; +} + +#searchmenu ul.toolbarmenu li label.comment +{ + color: #999; +} + +#searchmenu select +{ + width: 100%; +} + +#pagejump-selector +{ + max-height: 250px; + overflow-x: hidden; +} + +#pagejump-selector ul li +{ + min-width: 45px; + padding: 2px 5px; + cursor: default; +} + + +/*** folder selector ***/ + +#folder-selector li a +{ + padding: 0; +} + +#folder-selector li span +{ + background: url(images/icons/folders.png) no-repeat 6px 0; + display: block; + height: 15px; + min-height: 14px; + padding: 2px 4px 2px 28px; + overflow: hidden; + max-width: 120px; + text-overflow: ellipsis; +} + +#folder-selector li a.virtual +{ + color: #A0A0A0; +} + +#folder-selector li a.active:hover span +{ + color: white; +} + +#folder-selector li.inbox span +{ + background-position: 6px -18px; +} +#folder-selector li.drafts span +{ + background-position: 6px -37px; +} +#folder-selector li.sent span +{ + background-position: 6px -54px; +} +#folder-selector li.trash span +{ + background-position: 6px -91px; +} +#folder-selector li.junk span +{ + background-position: 6px -73px; +} + + +/***** 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; } + +table.quota-info { + border-spacing: 0; + border-collapse: collapse; + table-layout: fixed; + margin: 2px; +} + +table.quota-info td, +table.quota-info th { + border: 1px solid #999; + padding: 2px 3px; + text-align: center; + min-width: 80px; + color: #333; + font-size: 11px; +} + +table.quota-info th { + font-weight: bold; + background-color: #ddd; +} + +table.quota-info td.name { + text-align: left; +} + +table.quota-info td.root { + font-style: italic; +} + +/********** TinyMCE styles **********/ +.mce-btn-small button +{ + height: 22px; +} + +.mce-btn-small i +{ + line-height: 16px !important; + vertical-align: text-top !important; +} + +.mce-combobox button +{ + padding: 6px 8px !important; +} + +.mce-tinymce +{ + border-radius: 0 !important; +{ + +.mce-panel.mce-toolbar-grp +{ + border: 0 !important; +} + +#image-selector-form.droptarget { + background: url(images/filedrop.png) center bottom no-repeat; +} + +#image-selector-form.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; +} + +/** PGP key import dialog **/ +.pgpkeyimport div.key { + position: relative; + margin-bottom: 2px; + padding: 1em 1em 5px; + background-color: #ebebeb; +} + +.pgpkeyimport div.key.revoked, +.pgpkeyimport div.key.disabled { + color: #a0a0a0; +} + +.pgpkeyimport div.key label { + display: inline-block; + margin-right: 0.5em; +} + +.pgpkeyimport div.key label:after { + content: ":"; +} + +.pgpkeyimport div.key label + a, +.pgpkeyimport div.key label + span { + display: inline-block; + margin-right: 2em; + white-space: nowrap; +} + +.pgpkeyimport div.key label + a { + font-weight: bold; +} + +.pgpkeyimport ul.uids { + margin: 5px 1em 0 1em; + padding: 0; +} + +.pgpkeyimport li.uid { + border: 0; + padding: 2px; +} + +.pgpkeyimport div.key button.importkey { + position: absolute; + top: 0.8em; + right: 0.8em; + padding: 2px 6px; +} + +.pgpkeyimport div.key button[disabled] { + display: none; +} diff --git a/classic/embed.css b/classic/embed.css new file mode 100644 index 0000000..6d2c63c --- /dev/null +++ b/classic/embed.css @@ -0,0 +1,39 @@ +/** + * Roundcube webmail "embedded" stylesheets + * + * Copyright (c) 2013, The Roundcube Dev Team + * + * The contents are subject to the Creative Commons Attribution-ShareAlike + * License. It is allowed to copy, distribute, transmit and to adapt the work + * by keeping credits to the original autors in the README file. + * See http://creativecommons.org/licenses/by-sa/3.0/ for details. + */ + +.rcmail-inline-message { + font-family: sans-serif; + font-size: 14px; + color: #000; + margin-bottom: .8em; + min-height: 30px; + padding: 10px 10px 6px 46px; + background: url(images/display/icons.png) 6px 3px no-repeat #F7FDCB; + border: 1px solid #C2D071; +} + +.rcmail-inline-warning { + background-position: 6px -92px; +} + +.rcmail-inline-message > button { + margin-left: 1em; + vertical-align: baseline; +} + +.rcmail-inline-message em { + font-size: 90%; + color: #666; +} + +.rcmail-inline-buttons { + margin-bottom: 0; +} diff --git a/classic/functions.js b/classic/functions.js new file mode 100644 index 0000000..99dd4aa --- /dev/null +++ b/classic/functions.js @@ -0,0 +1,1124 @@ +/** + * Roundcube functions for default skin interface + * + * @licstart The following is the entire license notice for the + * JavaScript code in this file. + * + * Copyright (c) The Roundcube Dev Team + * + * The JavaScript code in this page 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. + * + * @licend The above is the entire license notice + * for the JavaScript code in this file. + */ + +/** + * Settings + */ + +function rcube_init_settings_tabs() +{ + var el, cl, container = $('#tabsbar'), + last_tab = $('span', container).last(), + tab = '#settingstabpreferences', + 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.indexOf('identity')>0 ? 'identities' : action.replace(/\./g, '')); + + $(tab).addClass('tablink-selected'); + $('a', tab).removeAttr('onclick').click(function() { return false; }); +} + +// Fieldsets-to-tabs converter +// Warning: don't place "caller" + diff --git a/classic/includes/taskbar.html b/classic/includes/taskbar.html new file mode 100644 index 0000000..9e2cdc4 --- /dev/null +++ b/classic/includes/taskbar.html @@ -0,0 +1,7 @@ +
+ + + + + +
\ No newline at end of file diff --git a/classic/mail.css b/classic/mail.css new file mode 100644 index 0000000..3ea3406 --- /dev/null +++ b/classic/mail.css @@ -0,0 +1,1905 @@ +/***** 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; */ +} + +.extwin #messagetoolbar +{ + top: 5px; + left: 20px; +} + +#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.print { + background-position: -256px 0; +} + +#messagetoolbar a.printSel { + background-position: -256px -32px; +} + +#messagetoolbar a.markmessage { + background-position: -288px 0; +} + +#messagetoolbar a.messagemenu { + background-position: -320px 0; + width: 34px; +} + +#messagetoolbar a.spellcheck { + background-position: -418px 0; +} + +#messagetoolbar a.spellcheckSel { + background-position: -418px -32px; +} + +#messagetoolbar a.attach { + background-position: -386px 0; +} + +#messagetoolbar a.attachSel { + background-position: -386px -32px; +} + +#messagetoolbar a.insertsig { + background-position: -482px 0; +} + +#messagetoolbar a.insertsigSel { + background-position: -482px -32px; +} + +#messagetoolbar a.savedraft { + background-position: -354px 0; +} + +#messagetoolbar a.savedraftSel { + background-position: -354px -32px; +} + +#messagetoolbar a.send { + background-position: -450px 0; +} + +#messagetoolbar a.sendSel { + background-position: -450px -32px; +} + +#messagetoolbar a.move { + background-position: -580px 0; +} + +#messagetoolbar a.moveSel { + background-position: -580px -32px; +} + +#messagetoolbar a.download { + background-position: -514px 0; +} + +#messagetoolbar a.downloadSel { + background-position: -514px -32px; +} + +#messagetoolbar a.responses { + background-position: -548px 0; +} + +#messagetoolbar a.encrypt { + background-position: -612px 0; +} + +#messagetoolbar a.encryptSel { + background-position: -612px -32px; +} + +#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 +{ + 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, +#attachmentmenu li a.downloadlink +{ + background-position: 7px -17px; +} + +#attachmentmenu li a.renamelink +{ + background-position: 6px -69px; +} + +#messagemenu li a.sourcelink +{ + background-position: 7px -34px; +} + +#messagemenu li a.openlink, +#attachmentmenu li a.openlink +{ + background-position: 7px -52px; +} + +#messagemenu li a.editlink +{ + background-position: 6px -70px; +} + +#messagemenu li a.movelink +{ + background-position: 6px -160px; +} + +#messagemenu li a.copylink +{ + background-position: 6px -142px; +} + +#markmessagemenu li a, +#compose-attachments li a.delete, +#compose-attachments li a.cancelupload +{ + 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: 160px; +} + +#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: 0; + left: 170px; + right: 0; + bottom: 0; +} + +#messagepartheader +{ + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 160px; + border: 1px solid #999999; + background-color: #F9F9F9; + overflow: hidden; +} + +#messagepartheader table +{ + width: 100%; + table-layout: fixed; +} + +#messagepartheader table td +{ + text-overflow: ellipsis; +} + +#messagepartheader table td.title +{ + width: 60px; +} + +#mailcontframe +{ + position: absolute; + width: 100%; + top: 0; + bottom: 0; + border: 1px solid #999999; + background-color: #F9F9F9; + overflow: hidden; +} + +#mailpreviewframe +{ + position: absolute; + right: 0; + left: 0; + top: 205px; + bottom: 0px; + border: 1px solid #999999; + background-color: #F9F9F9; + display: none; +} + +#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: #fff; +} + + +/** mailbox list styles */ + +#mailboxlist-container +{ + position: absolute; + top: 0; + left: 0; + width: 100%; + bottom: 0; + border: 1px solid #999; + background-color: #F9F9F9; +} + +#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.unread +{ + font-weight: bold; +} + +#mailboxlist li.recent > a +{ + color: #0066FF; +} + +#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; + line-height: 14px; +} + +#countcontrols a.button, +#countcontrols a.buttonPas +{ + float: right; +} + + +/** message list styles */ + +body.messagelist +{ + margin: 0px; + background-color: #F9F9F9; +} + +table.messagelist +{ + width: 100%; + display: table; + table-layout: fixed; + border-spacing: 0; + z-index: 1; +} + +table.messagelist.fixedcopy +{ + z-index: 2; +} + +.messagelist thead tr th, +.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; + text-align: left; +} + +.messagelist thead tr > .sortedASC, +.messagelist thead tr > .sortedDESC +{ + background-position: 0 -26px; +} + +.messagelist thead tr > .sortedASC a +{ + background: url(images/icons/sort.gif) right 0 no-repeat; +} + +.messagelist thead tr > .sortedDESC a +{ + background: url(images/icons/sort.gif) right -14px no-repeat; +} + +.messagelist thead tr a +{ + display: block; + width: auto !important; + width: 100%; + color: #333333; + text-decoration: none; +} + +.messagelist thead tr > .size.sortedASC a, +.messagelist thead tr > .size.sortedDESC a +{ + padding-right: 18px; +} + +.messagelist thead tr > .subject +{ + padding-left: 18px; + width: 99%; +} + +.messagelist tbody tr th, +.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; + outline: none; +} + +.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 .flag span, +.messagelist tr .status span, +.messagelist tr .attachment span, +.messagelist tr .priority span +{ + display: block; + width: 15px; + text-indent: -5000px; + overflow: hidden; +} + +.messagelist tr td div.collapsed, +.messagelist tr td div.expanded, +.messagelist tr > .threads .listmenu, +.messagelist tr .attachment span.attachment, +.messagelist tr .attachment span.report, +.messagelist tr .attachment span.encrypted, +.messagelist tr > .priority span.priority, +.messagelist tr > .priority span.prio1, +.messagelist tr > .priority span.prio2, +.messagelist tr > .priority span.prio3, +.messagelist tr > .priority span.prio4, +.messagelist tr > .priority span.prio5, +.messagelist tr .flag span.flagged, +.messagelist tr .flag span.unflagged, +.messagelist tr:hover .flag span.unflagged, +.messagelist tr > .status span.status, +.messagelist tr > .status span.msgicon, +.messagelist tr > .status span.deleted, +.messagelist tr > .status span.unread, +.messagelist tr > .status span.unreadchildren, +.messagelist tr > .subject span.msgicon, +.messagelist tr > .subject span.deleted, +.messagelist tr > .subject span.unread, +.messagelist tr > .subject span.replied, +.messagelist tr > .subject span.forwarded, +.messagelist tr > .subject span.unreadchildren +{ + display: inline-block; + vertical-align: middle; + height: 17px; + width: 15px; + background: url(images/messageicons.png) center no-repeat; +} + +.messagelist tr .attachment span.attachment +{ + background-position: 0 -170px; +} + +.messagelist tr .attachment span.report +{ + background-position: 0 -255px; +} + +.messagelist tr .attachment span.encrypted +{ + background-position: 0 -418px; +} + +.messagelist tr > .priority span.priority +{ + background-position: 0 -309px; +} + +.messagelist tr > .priority span.prio5 +{ + background-position: 0 -358px; +} + +.messagelist tr > .priority span.prio4 +{ + background-position: 0 -340px; +} + +.messagelist tr > .priority span.prio3 +{ + background-position: 0 -324px; +} + +.messagelist tr > .priority span.prio2 +{ + background-position: 0 -309px; +} + +.messagelist tr > .priority span.prio1 +{ + background-position: 0 -290px; +} + +.messagelist tr .flag span.flagged +{ + background-position: 0 -153px; +} + +.messagelist tr:hover .flag span.unflagged +{ + background-position: 0 -136px; +} + +.messagelist tr.flaggedroot .flag span, +.messagelist tr.flaggedroot .flag span.unflagged +{ + background-position: 0 -136px; +} + +.messagelist tr > .subject span.msgicon, +.messagelist tr > .subject span.unreadchildren +{ + background-position: 0 -51px; + margin: 0 2px; +} + +.messagelist tr > .subject span.replied +{ + background-position: 0 -85px; +} + +.messagelist tr > .subject span.forwarded +{ + background-position: 0 -68px; +} + +.messagelist tr > .subject span.replied.forwarded +{ + background-position: 0 -102px; +} + +.messagelist tr > .status span.msgicon, +.messagelist tr .flag span.unflagged, +.messagelist tr > .status span.unreadchildren +{ + background-position: 0 18px; /* no icon */ +} + +.messagelist tr > .status span.msgicon:hover +{ + background-position: 0 -272px; +} + +.messagelist tr > .status span.deleted, +.messagelist tr > .subject span.deleted +{ + background-position: 0 -187px; +} + +.messagelist tr > .status span.status, +.messagelist tr > .status span.unread, +.messagelist tr > .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 > .threads .listmenu +{ + background-position: 0 -238px; + cursor: pointer; + overflow: hidden; + text-indent: -5000px; + display: block; +} + +.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 > .attachment, +.messagelist tr > .threads, +.messagelist tr > .status, +.messagelist tr > .flag, +.messagelist tr > .priority +{ + width: 17px; + padding: 0 0 0 2px; +} + +.messagelist tr > .size +{ + width: 60px; + text-align: right; + padding: 0 2px; +} + +.messagelist tr > .fromto, +.messagelist tr > .from, +.messagelist tr > .to, +.messagelist tr > .cc, +.messagelist tr > .replyto +{ + width: 180px; + padding: 0 2px; +} + +.messagelist tr > .date +{ + width: 135px; + padding: 0 2px; +} + +.messagelist tr > .folder +{ + width: 135px; +} + +.messagelist tr > .hidden +{ + display: none; +} + +.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; +} + +/* This padding-left minus the focused padding left should be half of the focused border-left */ +.messagelist thead tr th:first-child, +.messagelist thead tr td:first-child, +.messagelist tbody tr td:first-child { + border-left: 0; + padding-left: 6px; +} + +/* because of border-collapse, we make the left border twice what we want it to be - half will be hidden to the left */ +.messagelist tbody tr.focused > td:first-child { + border-left: 2px solid #d4d4d4; + padding-left: 4px; +} + +.messagelist tbody tr.selected.focused > td:first-child { + border-left: 2px solid #ccc; + padding-left: 5px; +} + +.messagelist tr.selected td +{ + color: #FFFFFF; + background-color: #929292; +} + +.messagelist.focus tr.selected td +{ + background-color: #CC3333; +} + +.messagelist tr.selected td a +{ + color: #FFFFFF; +} + +.messagelist tr.deleted td, +.messagelist tr.deleted td a +{ + color: #CCCCCC; +} + +#listmenu +{ + padding: 6px; + max-height: none; +} + +#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; +} + +.extwin #messageframe +{ + left: 0; +} + +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; +} + +#messagebody.mailvelope { + padding: 10px 8px; +} + +#messagebody table.headers-table +{ + margin: 16px 6px 6px 6px; +} + +div.message-partheaders + div.message-part +{ + border-top: 0; + padding-top: 4px; +} + +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; +} + +#attachment-list li a.drop { + background: url(images/icons/down_small.gif) no-repeat center 6px; + width: 12px; + height: 16px; + cursor: pointer; + padding: 0; + margin-left: 3px; + display: inline-block; + vertical-align: middle; +} + +#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 div.pre +{ + margin: 0px; + padding: 0px; + font-family: monospace; + font-size: 12px; +} + +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 0; + padding: 0 0.4em; + overflow: hidden; + text-overflow: ellipsis; +} + +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; +} + +#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; +} + +#messagebody fieldset.image-attachment { + border: 0; + border-top: 1px solid #ccc; + margin: 1em 1em 0 1em; +} + +#messagebody fieldset.image-attachment p > img +{ + max-width: 80%; +} + +#messagebody legend.image-filename +{ + color: #999; + font-size: 0.9em; +} + +#messagebody p.image-attachment +{ + margin: 0 1em; + padding: 1em; + border-top: 1px solid #ccc; +} + +#messagebody p.image-attachment a.image-link +{ + float: left; + margin-right: 2em; + min-width: 160px; + min-height: 60px; + text-align: center; +} + +#messagebody p.image-attachment .image-filename +{ + display: block; + font-weight: bold; + line-height: 1.6em; +} + +#messagebody p.image-attachment .image-filesize +{ + font-size: 11px; + padding-right: 1em; +} + +#messagebody p.image-attachment .attachment-links a +{ + margin-right: 0.6em; + color: #cc0000; + font-size: 11px; + text-decoration: none; +} + +#messagebody p.image-attachment .attachment-links a:hover +{ + text-decoration: underline; +} + +#messagelinks +{ + position: absolute; + top: 8px; + right: 10px; + height: 16px; + text-align: right; +} + +#messageframe #messagelinks +{ + top: 2px; + right: 2px; +} + +#compose-headers #openextwinlink +{ + position: absolute; + height: 15px; + top: 4px; + right: 2px; +} + +#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: 205px; + right: 0; + bottom: 0; + margin: 0; +} + +#compose-div +{ + position: absolute; + top: 85px; + right: 0; + left: 0; + bottom: 0; + margin: 0; +} + +#compose-body-div +{ + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 175px; + border: 1px solid #999; +} + +#compose-body-div .mce-tinymce { + border: 0 !important; + width: 100% !important; +} + +.mce-top-part::before { + box-shadow: none !important; +} + +#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; + resize: none; + border: none; + outline: none; +} + +#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; +} + +#bounceheaders td.editfield { + width: 95%; +} + +#compose-editorfooter +{ + position: absolute; + right: 5px; + bottom: 0; + text-align: right; + line-height: 20px; +} + +#compose-editorfooter label +{ + font-size: 11px; + font-weight: bold; + color: #666; +} + +#compose-buttons +{ + position: absolute; + left: 5px; + bottom: 1px; + width: auto; +} + +#compose-contacts +{ + position: absolute; + top: 0; + left: 0; + bottom: 0; + width: 195px; + border: 1px solid #999; + background-color: #F9F9F9; +} + +#compose-attachments +{ + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + 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 +{ + position: relative; + height: 18px; + line-height: 16px; + font-size: 11px; + padding: 2px 16px 1px 2px; + border-bottom: 1px solid #EBEBEB; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; +} + +#compose-attachments li a.delete, +#compose-attachments li a.cancelupload +{ + text-indent: -5000px; + width: 17px; + height: 16px; + padding-bottom: 2px; + display: inline-block; + text-decoration: none; + vertical-align: middle; + background-position: 0px -392px; +} + +#compose-attachments li img +{ + vertical-align: middle; +} + +#compose-attachments li span +{ + line-height: 18px; + vertical-align: middle; +} + +#compose-attachments li a.drop { + background: url(images/icons/down_small.gif) no-repeat center 8px; + width: 16px; + height: 22px; + cursor: pointer; + display: block; + position: absolute; + right: 0; + top: 0; +} + +#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; +} + +#quota +{ + position: absolute; + top: 3px; + right: 8px; + width: 100px; +} + +#quotaimg +{ + position: absolute; + top: 3px; + right: 6px; + z-index: 101; +} + +/* addressbook in compose - copy from addressbook.css */ + +#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; + height: 15px; +} + +#directorylist li.selected +{ + background-color: #929292; + border-bottom: 1px solid #898989; +} + +#directorylist li.selected a +{ + color: #FFF; + font-weight: bold; +} + +#contacts-table +{ + width: 100%; + table-layout: fixed; +} + +#contacts-table tbody td +{ + cursor: default; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; +} + +#contacts-table td span.email +{ + display: inline; + color: #ccc; + font-style: italic; + margin-left: 0.5em; +} + +#abookcountbar +{ + margin-top: 4px; + margin-left: 4px; + position: absolute; + margin-right: 5px; + right: 0; + top: 0; +} + +#abookactions +{ + position: absolute; + text-underline: none; +} + +#abookactions a +{ + font-weight: bold; + line-height: 22px; + height: 22px; + width: auto; + margin: 0; + padding-left: 5px; + padding-right: 5px; + text-shadow: 1px 1px white; + background: url("images/icons/groupactions.png") no-repeat right -70px; +} + +#abookactions a.disabled +{ + color: #999; +} + +#compose-contacts .searchbox +{ + top: 2px; + left: 7px; +} + +#compose-contacts #directorylist +{ + width: 100%; + top: 23px; + position: absolute; + border-top: 1px solid #eee; +} + +#compose-contacts #contacts-table +{ + top: 45px; + position: absolute; +} + +#image-selector { + padding-bottom: 0 !important; +} + +/**** Styles for widescreen (3-column) view ****/ + +.widescreen #mailview-top { + bottom: 0; + width: 400px; + height: auto; +} + +.widescreen #mailview-bottom { + left: 412px; + top:0; + border: 1px solid #a3a3a3; +} + +#messagelistheader, +.widescreen #messagelistfooter #countcontrols, +.widescreen .messagelist > thead, +.widescreen .messagelist .branch, +.widescreen table.fixedcopy { + display: none; +} + +#messagelistcontainer { + top: 0; +} + +.widescreen #messagelistcontainer { + top: 21px; + overflow-x: hidden; +} + +.widescreen #mailpreviewframe { + top: 0; +} + +.widescreen #messagelistheader { + display: block; + top: 0; + white-space: nowrap; + border-top: 0; + border-bottom: 1px solid #999; + height: 20px; +} + +.widescreen #messagelistheader .listmenu { + display: inline-block; + vertical-align: middle; + line-height: 16px; + width: 15px; + background: url(images/messageicons.png) 4px -236px no-repeat; + cursor: pointer; + overflow: hidden; + text-indent: -5000px; + padding: 2px 4px; +} + +.widescreen .messagelist td { + border-left: 0; + vertical-align: top; + padding: 3px 1px 1px !important; +} + +.widescreen .messagelist td.subject { + width: 99%; + white-space: wrap; + position: relative; /* for span.date positioning in Firefox */ +} + +.widescreen .messagelist td.threads { + width: 14px; + vertical-align: middle; +} + +.widescreen .messagelist td.flags { + width: 20px; +} + +.widescreen .messagelist td.subject span { + line-height: 16px; +} + +.widescreen .messagelist td.subject span.date { + right: 2px; + top: 3px; + position: absolute; + color: #666; +} + +.widescreen .messagelist td.subject span.fromto { + padding-left: 18px; + display: block; + margin-right: 90px; + overflow: hidden; + text-overflow: ellipsis; + color: #666; +} + +.widescreen .messagelist tr.flagged td.subject span.date, +.widescreen .messagelist tr.flagged td.subject span.fromto { + color: #ff0000; +} + +.widescreen .messagelist tr.selected td.subject span.date, +.widescreen .messagelist tr.selected td.subject span.fromto { + color: #fff; +} + +.widescreen .messagelist tr.deleted td.subject span.date, +.widescreen .messagelist tr.deleted td.subject span.fromto { + color: #ccc; +} + +.widescreen .messagelist td.subject span.subject { + clear: both; + display: block; + font-size: 13px; + overflow: hidden; + text-overflow: ellipsis; +} + +.widescreen .messagelist td.flags span { + width: 20px; + height: 18px; + display: block; +} + +.widescreen .messagelist td.flags span.flag { + cursor: pointer; +} + +.widescreen .messagelist tr td.subject span.msgicon, +.widescreen .messagelist tr td.subject span.unreadchildren { + width: 18px; + margin: 0; +} diff --git a/classic/meta.json b/classic/meta.json new file mode 100644 index 0000000..5cbdf94 --- /dev/null +++ b/classic/meta.json @@ -0,0 +1,6 @@ +{ + "name": "Classic", + "author": "The Roundcube Dev Team", + "license": "Creative Commons Attribution-ShareAlike", + "license-url": "http://creativecommons.org/licenses/by-sa/3.0/" +} \ No newline at end of file diff --git a/classic/print.css b/classic/print.css new file mode 100644 index 0000000..4d7fb24 --- /dev/null +++ b/classic/print.css @@ -0,0 +1,225 @@ +/***** 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, 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 +{ + position: relative; + 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 div.pre +{ + margin: 0; + padding: 0; + font-family: monospace; + font-size: 12px; +} + +div.message-part blockquote +{ + color: blue; + border-left: 2px solid blue; + border-right: 2px solid blue; + background-color: #F6F6F6; + margin: 2px 0; + padding: 0 0.4em; +} + +div.message-part blockquote blockquote +{ + color: green; + border-left: 2px solid green; + border-right: 2px solid green; +} + +div.message-part blockquote blockquote blockquote +{ + color: #990000; + border-left: 2px solid #bb0000; + border-right: 2px solid #bb0000; +} + +p.image-attachment +{ + position: relative; + padding: 1em; + border-top: 1px solid #ccc; +} + +p.image-attachment a.image-link +{ + float: left; + display: block; + margin-right: 2em; + min-width: 160px; + min-height: 60px; + text-align: center; +} + +p.image-attachment .image-filename +{ + display: block; + line-height: 1.6em; +} + +p.image-attachment .attachment-links +{ + display: none; +} + +/* contact print */ +#contact-details fieldset { + color: #666; + border: 1px solid #999; + margin-top: 5px; +} + +#contact-details fieldset.contactfieldgroup { + border: 0; + padding: 0; + margin: 0; +} + +#contact-details div.row { + padding: 2px 0; +} + +#contact-details .contactfieldlabel { + display: inline-block; + vertical-align: top; + width: 150px; + overflow: hidden; + text-overflow: ellipsis; +} + +#contact-details .contactfieldcontent { + display: inline-block; + vertical-align: top; + font-weight: bold; +} + +#contact-details #contactphoto { + float: left; + margin: 5px 15px 5px 3px; + width: 112px; + border: 0; + padding: 0; +} + +#contact-details #contactpic { + width: 112px; + background: white; +} + +#contact-details #contactpic img { + max-width: 112px; + visibility: inherit; +} + +#contact-details #contacthead { + border: 0; + margin: 0 16em 0 0; + padding: 0; +} + +#contact-details #contacthead > legend { + display: none; +} + +#contact-details #contacthead .names span.namefield { + font-size: 140%; + font-weight: bold; +} diff --git a/classic/safari.css b/classic/safari.css new file mode 100644 index 0000000..a1be85a --- /dev/null +++ b/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/classic/settings.css b/classic/settings.css new file mode 100644 index 0000000..fe49e23 --- /dev/null +++ b/classic/settings.css @@ -0,0 +1,292 @@ +/***** Roundcube|Mail settings task styles *****/ + +#rcmfd_timezone +{ + width: 300px; +} + +#folder-manager.droptarget +{ + border: 1px solid #CC3333; + background-color: #FFFFA6; +} + +#folderlist-title a.iconbutton.search { + background: url(images/icons/glass.png) no-repeat 0 0; + cursor: pointer; + position: absolute; + right: 4px; + top: 2px; + width: 16px; + text-indent: 50000px; +} + +.listsearchbox select { + width: 100%; + margin: 1px 0; +} + +#identities-table, +#responses-table, +#sections-table +{ + width: 100%; + table-layout: fixed; +} + +#identities-table tbody tr td, +#responses-table tbody tr td, +#sections-table tbody tr td +{ + cursor: default; +} + +#identities-table tbody tr.readonly td +{ + font-style: italic; +} + +#subscription-table li.root +{ + font-size: 5%; + line-height: 5px; + height: 5px; + padding: 2px; +} + +#subscription-table li input { + position: absolute; + right: 0; + top: 2px; +} + +#subscription-table li a { + padding-right: 20px; + overflow: hidden; + text-overflow: ellipsis; +} + +#folder-box, +#prefs-box, +#identity-box, +#response-box +{ + position: absolute; + top: 0; + right: 0; + bottom: 0; + border: 1px solid #999999; + overflow: hidden; + background-color: #F2F2F2; +} + +#identity-details table td.title, +#response-details table td.title, +#folder-details table td.title +{ + font-weight: bold; + text-align: right; + width: 1%; + white-space: nowrap; +} + +#response-details table td.title +{ + text-align: left; + vertical-align: top; + width: 140px; + padding-top: 5px; +} + +#bottomboxes +{ + position: absolute; + width: 600px; + height: 95px; + left: 0; + bottom: 0; +} + +#identities-list, +#responses-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, +#response-frame +{ + background-color: #F2F2F2; + border: none; + min-height: 100%; /* Chrome 14 bug */ +} + +#prefs-title, +#folder-title, +#identity-title, +#response-title +{ + /* fixes issue where tabs were overlapping box title when scrolling */ + z-index: 10; +} + +#formfooter +{ + width: 100%; +} + +.footerleft +{ + padding-left: 10px; +} + +#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; +} + +#formfooter .footerindent +{ + padding: 10px 0; + margin-left: 155px; +} + +#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; +} + +.skinselection +{ + display: block; + white-space: nowrap; + margin: 0.3em 0; +} + +.skinselection span +{ + display: inline-block; + vertical-align: middle; + padding-right: 1em; +} + +.skinselection .skinname +{ + font-weight: bold; +} + +.skinselection .skinlicense, +.skinselection .skinlicense a +{ + color: #999; + font-style: italic; + text-decoration: none; +} + +.skinselection .skinlicense a:hover +{ + text-decoration: underline; +} + +img.skinthumbnail +{ + width: 64px; + height: 64px; + border: 1px solid #999; + background: #fff; +} + +#pluginlist +{ + border: 1px solid #999; + width: 100%; +} + +#pluginlist td.version +{ + text-align: center; +} + +div.crop +{ + overflow: auto; +} + +#rcmfd_signature +{ + width: 99%; + min-width: 390px; +} + +#rcmfd_signature_toolbar1 td, +#rcmfd_signature_toolbar2 td +{ + width: auto; +} diff --git a/classic/splitter.js b/classic/splitter.js new file mode 100644 index 0000000..848a537 --- /dev/null +++ b/classic/splitter.js @@ -0,0 +1,228 @@ +/** + * Roundcube splitter GUI class + * + * @licstart The following is the entire license notice for the + * JavaScript code in this file. + * + * Copyright (c) The Roundcube Dev Team + * + * The JavaScript code in this page 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. + * + * @licend The above is the entire license notice + * for the JavaScript code in this file. + * + * @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.pos = attrib.start ? attrib.start * 1 : 0; + this.relative = attrib.relative ? true : false; + this.drag_active = false; + this.callback = attrib.callback; + + var me = this; + + 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 + $(this.elm).mousedown(onDragStart); + + // Update splitter position and elements with on window resize + $(window).resize(function(e) { if (e.target === window) me.resize(); }); + if (bw.ie) + $(window).resize(onResize); + + // read saved position from cookie + var cookie = rcmail.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.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); + this.p2.style.height = (new_height > 0 ? new_height : 0) + 'px'; + } + } + else { + var max_width = $(window).width() - $(this.p1).offset().left - 150, + pos = Math.min(this.pos, max_width); + + this.p1.style.width = Math.floor(pos - this.p1pos.left - this.layer.width / 2) + 'px'; + this.p2.style.left = Math.ceil(pos + this.layer.width / 2) + 'px'; + this.layer.move(Math.round(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 + */ + function onDragStart(e) + { + me.drag_active = true; + + // disable text selection while dragging the splitter + if (bw.konq || bw.chrome || bw.safari) + document.body.style.webkitUserSelect = 'none'; + + me.p1pos = me.relative ? $(me.p1).position() : $(me.p1).offset(); + me.p2pos = me.relative ? $(me.p2).position() : $(me.p2).offset(); + + // start listening to mousemove events + $(document).on('mousemove.' + me.id, onDrag).on('mouseup.' + me.id, 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 + */ + function onDrag(e) + { + if (!me.drag_active) + return false; + + // with timing events dragging action is more responsive + window.clearTimeout(me.ts); + me.ts = window.setTimeout(function() { onDragAction(e); }, 1); + + return false; + }; + + function onDragAction(e) + { + var pos = rcube_event.get_mouse_pos(e); + + if (me.relative) { + var parent = $(me.p1.parentNode).offset(); + pos.x -= parent.left; + pos.y -= parent.top; + } + + if (me.horizontal) { + if (((pos.y - me.layer.height * 1.5) > me.p1pos.top) && ((pos.y + me.layer.height * 1.5) < (me.p2pos.top + me.p2.offsetHeight))) { + me.pos = pos.y; + me.resize(); + } + } + else if (((pos.x - me.layer.width * 1.5) > me.p1pos.left) && ((pos.x + me.layer.width * 1.5) < (me.p2pos.left + me.p2.offsetWidth))) { + me.pos = pos.x; + me.resize(); + } + + me.p1pos = me.relative ? $(me.p1).position() : $(me.p1).offset(); + me.p2pos = me.relative ? $(me.p2).position() : $(me.p2).offset(); + }; + + /** + * Handler for mouseup events + */ + function onDragStop(e) + { + me.drag_active = false; + + // resume the ability to highlight text + if (bw.konq || bw.chrome || bw.safari) + document.body.style.webkitUserSelect = 'auto'; + + // cancel the listening for drag events + $(document).off('.' + me.id); + + // remove temp divs + $('div.iframe-splitter-fix').remove(); + + me.set_cookie(); + + if (typeof me.callback == 'function') + me.callback(me); + + return bw.safari ? true : rcube_event.cancel(e); + }; + + /** + * Handler for window resize events + */ + function onResize(e) + { + if (me.horizontal) { + var new_height = parseInt(me.p2.parentNode.offsetHeight, 10) - parseInt(me.p2.style.top, 10); + me.p2.style.height = (new_height > 0 ? new_height : 0) +'px'; + } + else { + var new_width = parseInt(me.p2.parentNode.offsetWidth, 10) - parseInt(me.p2.style.left, 10); + me.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); + rcmail.set_cookie(this.id, this.pos, exp); + }; + +} // end class rcube_splitter diff --git a/classic/templates/about.html b/classic/templates/about.html new file mode 100644 index 0000000..e6eb555 --- /dev/null +++ b/classic/templates/about.html @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + +
+ + +
+
+ +

Roundcube Webmail

+ +

+ +
+ +

+ + +
+ + +
+ + + + diff --git a/classic/templates/addressbook.html b/classic/templates/addressbook.html new file mode 100644 index 0000000..1a31251 --- /dev/null +++ b/classic/templates/addressbook.html @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + +
+ + + + +  + + + + + + + + +
+ +
+ + + +
+ +
+
    +
  • +
  • +
+
+ +
+
    +
  • +
  • +
  • +
  • +
  • +
+
+ +
+
    + + + + + + + + + + + + +
+
+ +
+ +
+
+
+ + +
+ +
+ +
+ +
+ +
+ +
+
+ +
+
+ + + +
+ +
+ +
+
+ +
+
    +
  • +
  • +
  • +
  • + +
+
+ +
+
    +
  • +
  • +
+
+ + + + + diff --git a/classic/templates/bounce.html b/classic/templates/bounce.html new file mode 100644 index 0000000..6d28170 --- /dev/null +++ b/classic/templates/bounce.html @@ -0,0 +1,41 @@ + + + + + + + +
+

+ + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + + diff --git a/classic/templates/compose.html b/classic/templates/compose.html new file mode 100644 index 0000000..e688dfe --- /dev/null +++ b/classic/templates/compose.html @@ -0,0 +1,245 @@ + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +   + + + +
+ + + +
+ +
+
+ + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ + +
+ + +
+ + +
+
+
+
+
+ +
+
+
+ + +
+ +
+
+ +
+
+
+ +
+
+ +
+
+ +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + +
+
+ +
+
    +
  • + +
  • + + +
+
+ +
+ + + + + +
+
    +
  • +
  • +
  • + +
+
+ +
+
    + + +
+
+ + + + + diff --git a/classic/templates/contact.html b/classic/templates/contact.html new file mode 100644 index 0000000..c6b569b --- /dev/null +++ b/classic/templates/contact.html @@ -0,0 +1,28 @@ + + + + + + + + +
+
+ +
:
+ + +
+ +
+
+ +
+

+ +

+
+ + + + diff --git a/classic/templates/contactadd.html b/classic/templates/contactadd.html new file mode 100644 index 0000000..c9e67bf --- /dev/null +++ b/classic/templates/contactadd.html @@ -0,0 +1,43 @@ + + + + + + + + +
+
+ + +
:
+ +
+ + +
+ +
+
+ +
+

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

+ +
+ + + + + + + + diff --git a/classic/templates/contactedit.html b/classic/templates/contactedit.html new file mode 100644 index 0000000..e848575 --- /dev/null +++ b/classic/templates/contactedit.html @@ -0,0 +1,43 @@ + + + + + + + + +
+
+ + +
:
+ +
+ + +
+ +
+
+ +
+

+   + +

+ +
+ + + + + + + + diff --git a/classic/templates/contactprint.html b/classic/templates/contactprint.html new file mode 100644 index 0000000..ec7c00c --- /dev/null +++ b/classic/templates/contactprint.html @@ -0,0 +1,20 @@ + + + + + + + + + +