From 47e3da633dcc89b5ff9652bb58ccca287ff0ae23 Mon Sep 17 00:00:00 2001 From: Thomas Bruederli Date: Sun, 15 Jan 2012 15:56:45 +0100 Subject: [PATCH] Adapt calednar styles for new skin Larry --- plugins/calendar/calendar.php | 5 +- plugins/calendar/calendar_ui.js | 8 +- plugins/calendar/localization/de_CH.inc | 7 +- plugins/calendar/localization/de_DE.inc | 7 +- plugins/calendar/localization/en_US.inc | 7 +- plugins/calendar/skins/larry/.htaccess | 5 + plugins/calendar/skins/larry/calendar.css | 1240 +++++++++++++++++ .../skins/larry/templates/attachment.html | 36 + .../skins/larry/templates/calendar.html | 202 +++ .../skins/larry/templates/eventedit.html | 100 ++ .../skins/larry/templates/freebusylegend.html | 7 + .../skins/larry/templates/itipattend.html | 36 + .../skins/larry/templates/kolabacl.html | 12 + .../skins/larry/templates/kolabform.html | 6 + .../calendar/skins/larry/templates/print.html | 28 + 15 files changed, 1694 insertions(+), 12 deletions(-) create mode 100644 plugins/calendar/skins/larry/.htaccess create mode 100644 plugins/calendar/skins/larry/calendar.css create mode 100644 plugins/calendar/skins/larry/templates/attachment.html create mode 100644 plugins/calendar/skins/larry/templates/calendar.html create mode 100644 plugins/calendar/skins/larry/templates/eventedit.html create mode 100644 plugins/calendar/skins/larry/templates/freebusylegend.html create mode 100644 plugins/calendar/skins/larry/templates/itipattend.html create mode 100644 plugins/calendar/skins/larry/templates/kolabacl.html create mode 100644 plugins/calendar/skins/larry/templates/kolabform.html create mode 100644 plugins/calendar/skins/larry/templates/print.html diff --git a/plugins/calendar/calendar.php b/plugins/calendar/calendar.php index 56247e6c..4a1ee3df 100644 --- a/plugins/calendar/calendar.php +++ b/plugins/calendar/calendar.php @@ -177,8 +177,9 @@ class calendar extends rcube_plugin 'command' => 'calendar-create-from-mail', 'label' => 'calendar.createfrommail', 'type' => 'link', - 'classact' => 'calendarlink active', - 'class' => 'calendarlink', + 'classact' => 'icon calendarlink active', + 'class' => 'icon calendarlink', + 'innerclass' => 'icon calendar', ))), 'messagemenu'); } diff --git a/plugins/calendar/calendar_ui.js b/plugins/calendar/calendar_ui.js index cd1a5d95..5fc5a206 100644 --- a/plugins/calendar/calendar_ui.js +++ b/plugins/calendar/calendar_ui.js @@ -6,7 +6,7 @@ * @author Thomas Bruederli * * Copyright (C) 2010, Lazlo Westerhof - * Copyright (C) 2011, Kolab Systems AG + * Copyright (C) 2012, Kolab Systems AG * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as @@ -2146,7 +2146,7 @@ function rcube_calendar_ui(settings) this.dialog_resize = function(id, height, width) { var win = $(window), w = win.width(), h = win.height(); - $(id).dialog('option', { height: Math.min(h-20, height+110), width: Math.min(w-20, width+50) }) + $(id).dialog('option', { height: Math.min(h-20, height+130), width: Math.min(w-20, width+50) }) .dialog('option', 'position', ['center', 'center']); // only works in a separate call (!?) }; @@ -2154,7 +2154,7 @@ function rcube_calendar_ui(settings) this.view_resize = function() { var footer = fc.fullCalendar('getView').name == 'table' ? $('#agendaoptions').height() + 2 : 0; - fc.fullCalendar('option', 'height', $('#main').height() - footer); + fc.fullCalendar('option', 'height', $('#calendar').height() - footer); }; @@ -2236,7 +2236,7 @@ function rcube_calendar_ui(settings) month: viewdate.getMonth(), year: viewdate.getFullYear(), ignoreTimezone: true, // will treat the given date strings as in local (browser's) timezone - height: $('#main').height(), + height: $('#calendar').height(), eventSources: event_sources, monthNames : settings['months'], monthNamesShort : settings['months_short'], diff --git a/plugins/calendar/localization/de_CH.inc b/plugins/calendar/localization/de_CH.inc index 266b37bf..aceeccb1 100644 --- a/plugins/calendar/localization/de_CH.inc +++ b/plugins/calendar/localization/de_CH.inc @@ -31,6 +31,7 @@ $labels['day'] = 'Tag'; $labels['week'] = 'Woche'; $labels['month'] = 'Monat'; $labels['agenda'] = 'Agenda'; +$labels['new'] = 'Neu'; $labels['new_event'] = 'Neuer Termin'; $labels['edit_event'] = 'Termin bearbeiten'; $labels['edit'] = 'Bearbeiten'; @@ -38,11 +39,13 @@ $labels['save'] = 'Speichern'; $labels['remove'] = 'Entfernen'; $labels['cancel'] = 'Abbrechen'; $labels['select'] = 'Auswählen'; -$labels['print'] = 'Kalender drucken'; +$labels['print'] = 'Drucken'; +$labels['printtitle'] = 'Kalender drucken'; $labels['title'] = 'Titel'; $labels['description'] = 'Beschrieb'; $labels['all-day'] = 'ganztägig'; -$labels['export'] = 'Exportieren...'; +$labels['export'] = 'Exportieren'; +$labels['exporttitle'] = 'Kalender als iCalendar exportieren'; $labels['location'] = 'Ort'; $labels['date'] = 'Datum'; $labels['start'] = 'Beginn'; diff --git a/plugins/calendar/localization/de_DE.inc b/plugins/calendar/localization/de_DE.inc index 91b7ef5b..a3e6510b 100644 --- a/plugins/calendar/localization/de_DE.inc +++ b/plugins/calendar/localization/de_DE.inc @@ -31,6 +31,7 @@ $labels['day'] = 'Tag'; $labels['week'] = 'Woche'; $labels['month'] = 'Monat'; $labels['agenda'] = 'Agenda'; +$labels['new'] = 'Neu'; $labels['new_event'] = 'Neuer Termin'; $labels['edit_event'] = 'Termin bearbeiten'; $labels['edit'] = 'Bearbeiten'; @@ -38,11 +39,13 @@ $labels['save'] = 'Speichern'; $labels['remove'] = 'Entfernen'; $labels['cancel'] = 'Abbrechen'; $labels['select'] = 'Auswählen'; -$labels['print'] = 'Kalender drucken'; +$labels['print'] = 'Drucken'; +$labels['printtitle'] = 'Kalender drucken'; $labels['title'] = 'Titel'; $labels['description'] = 'Beschrieb'; $labels['all-day'] = 'ganztägig'; -$labels['export'] = 'Exportieren...'; +$labels['export'] = 'Exportieren'; +$labels['exporttitle'] = 'Kalender als iCalendar exportieren'; $labels['location'] = 'Ort'; $labels['date'] = 'Datum'; $labels['start'] = 'Beginn'; diff --git a/plugins/calendar/localization/en_US.inc b/plugins/calendar/localization/en_US.inc index 664eecfb..a5e48d5e 100644 --- a/plugins/calendar/localization/en_US.inc +++ b/plugins/calendar/localization/en_US.inc @@ -31,6 +31,7 @@ $labels['day'] = 'Day'; $labels['week'] = 'Week'; $labels['month'] = 'Month'; $labels['agenda'] = 'Agenda'; +$labels['new'] = 'New'; $labels['new_event'] = 'New event'; $labels['edit_event'] = 'Edit event'; $labels['edit'] = 'Edit'; @@ -38,11 +39,13 @@ $labels['save'] = 'Save'; $labels['remove'] = 'Remove'; $labels['cancel'] = 'Cancel'; $labels['select'] = 'Select'; -$labels['print'] = 'Print calendars'; +$labels['print'] = 'Print'; +$labels['printtitle'] = 'Print calendars'; $labels['title'] = 'Summary'; $labels['description'] = 'Description'; $labels['all-day'] = 'all-day'; -$labels['export'] = 'Export to iCalendar'; +$labels['export'] = 'Export'; +$labels['exporttitle'] = 'Export to iCalendar'; $labels['location'] = 'Location'; $labels['date'] = 'Date'; $labels['start'] = 'Start'; diff --git a/plugins/calendar/skins/larry/.htaccess b/plugins/calendar/skins/larry/.htaccess new file mode 100644 index 00000000..d9731059 --- /dev/null +++ b/plugins/calendar/skins/larry/.htaccess @@ -0,0 +1,5 @@ +# get all unknown files from default skin folder +RewriteEngine On +RewriteCond %{REQUEST_FILENAME} !-f +RewriteCond %{REQUEST_FILENAME} !-d +RewriteRule (.*) ../default/$1 [qsappend,last] diff --git a/plugins/calendar/skins/larry/calendar.css b/plugins/calendar/skins/larry/calendar.css new file mode 100644 index 00000000..292bba17 --- /dev/null +++ b/plugins/calendar/skins/larry/calendar.css @@ -0,0 +1,1240 @@ +/** + * Roundcube Calendar plugin styles for skin "Larry" + * + * Copyright (c) 2012, The Roundcube Dev Team + * Screendesign by FLINT / Büro für Gestaltung, bueroflint.com + * + * The contents are subject to the Creative Commons Attribution-ShareAlike + * License. It is allowed to copy, distribute, transmit and to adapt the work + * by keeping credits to the original autors in the README file. + * See http://creativecommons.org/licenses/by-sa/3.0/ for details. + * + * $Id$ + */ + +body.calendarmain { + overflow: hidden; +} + +#mainscreen { + left: 0; +} + +#sidebar { + position: absolute; + top: 0; + left: 10px; + bottom: 0; + width: 240px; +} + +#datepicker { + margin-top: 12px; + width: 100%; +} + +#datepicker .ui-datepicker { + width: 100% !important; + box-shadow: none; + -moz-box-shadow: none; + -webkit-box-shadow: none; +} + +.ui-datepicker td a { + padding: 5px 4px; + font-size: 12px; +} + +#datepicker td.ui-datepicker-activerange { + border-color: #69a2b6; +} + +#datepicker .ui-datepicker-activerange a { + color: #185d7a; + background: #d9f1fb; + background: -moz-linear-gradient(top, #d9f1fb 0%, #c5e3ee 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#d9f1fb), color-stop(100%,#c5e3ee)); + background: -o-linear-gradient(top, #d9f1fb 0%, #c5e3ee 100%); + background: -ms-linear-gradient(top, #d9f1fb 0%, #c5e3ee 100%); + background: linear-gradient(top, #d9f1fb 0%, #c5e3ee 100%); +} + +#datepicker .ui-datepicker-activerange a.ui-state-active { + color: #fff; + background: #00acd4; + background: -moz-linear-gradient(top, #00acd4 0%, #008fc7 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#00acd4), color-stop(100%,#008fc7)); + background: -o-linear-gradient(top, #00acd4 0%, #008fc7 100%); + background: -ms-linear-gradient(top, #00acd4 0%, #008fc7 100%); + background: linear-gradient(top, #00acd4 0%, #008fc7 100%); +} + +#datepicker td.ui-datepicker-week-col { + cursor: pointer; +} + +#datepicker .ui-datepicker-title { + margin: 2px 2.3em 3px 2.3em; +} + +#datepicker .ui-datepicker .ui-datepicker-prev, +#datepicker .ui-datepicker .ui-datepicker-next { + top: 4px; +} + +#sidebartoggle { + position: absolute; + left: 254px; + width: 8px; + top: 37px; + bottom: 0; + background: url(images/toggle.gif) 0 48% no-repeat transparent; + cursor: pointer; +} + +div.sidebarclosed { + background-position: -8px 48% !important; +} + +#sidebartoggle:hover { + background-color: #ddd; +} + +#calendar { + position: absolute; + top: 0; + left: 266px; + right: 0; + bottom: 0; + padding-bottom: 28px; +} + +#print { + width: 680px; +} + +pre { + font-family: "Lucida Grande", Verdana, Arial, Helvetica, sans-serif; +} + +#calendars { + position: absolute; + top: 276px; + left: 0; + bottom: 0; + right: 0; +} + +#attachmentlist li, +#calendarslist li { + margin: 0; + height: 20px; + padding: 6px 8px 2px; + display: block; + position: relative; + white-space: nowrap; +} + +#calendarslist li label { + display: block; +} + +#calendarslist li span { + cursor: default; + background: url(images/calendars.png) 0 -2px no-repeat; + padding-left: 22px; +} + +#calendarslist li input { + position: absolute; + top: 3px; + right: 5px; +} + +#calendarslist li.selected { + background-color: #c7e3ef; + color: inherit; +} + +#calendarslist li.selected span { + font-weight: bold; +} + +#calendarslist li.readonly span { + background-position: 0 -20px; +} + +#calendarslist li.other span { + background-position: 0 -38px; +} + +#calendarslist li.other.readonly span { + background-position: 0 -56px; +} + +#calendarslist li.shared span { + background-position: 0 -74px; +} + +#calendarslist li.shared.readonly span { + background-position: 0 -92px; +} + +#calfeedurl { + width: 98%; + background: #fbfbfb; + padding: 4px; + margin-bottom: 1em; + resize: none; +} + +#agendalist { + width: 100%; + margin: 0 auto; + margin-top: 60px; + border: 1px solid #C1DAD7; + display: none; +} + +#agendalist table { + width: 100%; +} + +#agendalist td, +#agendalist th { + border-right: 1px solid #C1DAD7; + border-bottom: 1px solid #C1DAD7; + background: #fff; + padding: 6px 6px 6px 12px; +} + +#agendalist tr { + vertical-align: top; +} + +#agendalist th { + font-weight: bold; +} + +#calendartoolbar { + position: absolute; + top: -6px; + right: 0; + height: 40px; + z-index: 200; +} + +#calendartoolbar a { + padding-right: 10px; +} + +#quicksearchbar { + right: 4px; +} + +div.uidialog { + display: none; +} + +#user { + position: absolute; + top: 10px; + right: 100px; + left: 100px; + text-align: center; +} + +a.morelink { + font-size: 90%; + color: #C33; + text-decoration: none; +} + +a.morelink:hover { + text-decoration: underline; +} + +a.miniColors-trigger { + margin-top: -3px; +} + +#attachmentcontainer { + position: absolute; + top: 80px; + left: 20px; + right: 20px; + bottom: 20px; +} + +#attachmentframe { + width: 100%; + height: 100%; + border: 1px solid #999999; + background-color: #F9F9F9; +} + +#partheader { + position: absolute; + top: 20px; + left: 220px; + right: 20px; + height: 40px; +} + +#partheader table td { + padding-left: 2px; + padding-right: 4px; + vertical-align: middle; + font-size: 11px; +} + +#partheader table td.title { + color: #666; + font-weight: bold; +} + +.attachments-list ul { + margin: 0px; + padding: 0px; + list-style-image: none; + list-style-type: none; +} + +.attachments-list ul li { + height: 18px; + font-size: 12px; + padding-top: 2px; + padding-right: 8px; + white-space: nowrap; +} + +.attachments-list ul li img { + padding-right: 2px; + vertical-align: middle; +} + +.attachments-list ul li a { + text-decoration: none; +} + +.attachments-list ul li a:hover { + text-decoration: underline; +} + +#attachmentlist { + margin: 0 -0.8em; +} + +#attachmentlist li { + padding: 2px 2px 3px 0.8em; +} + +#eventshow .attachments-list ul li { + float: left; +} + +#edit-attachments-form { + padding-top: 1.2em; +} + +#edit-attachments-form .buttons { + margin: 0.5em 0; +} + +#event-attendees span.attendee { + padding-right: 18px; + margin-right: 0.5em; + background: url(images/attendee-status.gif) right 0 no-repeat; +} + +#event-attendees span.attendee a.mailtolink { + text-decoration: none; + white-space: nowrap; +} + +#event-attendees span.attendee a.mailtolink:hover { + text-decoration: underline; +} + +#event-attendees span.accepted { + background-position: right -20px; +} + +#event-attendees span.declined { + background-position: right -40px; +} + +#event-attendees span.tentative { + background-position: right -60px; +} + +#event-attendees span.organizer { + background-position: right -80px; +} + +/* jQuery UI overrides */ + +#eventshow h1 { + font-size: 18px; + margin: -0.3em 0 0.4em 0; +} + +#eventshow label, +#eventshow h5.label { + font-weight: normal; + font-size: 1em; + color: #999; + margin: 0 0 0.2em 0; +} + +#eventshow { + margin: 0 -0.2em; +} + +#eventshow.sensitivity-private { + background: url(images/badge_private.png) top right no-repeat; +} + +#eventshow.sensitivity-confidential { + background: url(images/badge_confidential.png) top right no-repeat; +} + +.sensitivity-private #event-title { + margin-right: 50px; +} + +.sensitivity-confidential #event-title { + margin-right: 60px; +} + +#eventshow div.event-line { + margin-top: 0.1em; + margin-bottom: 0.3em; +} + +#eventedit { + position: relative; + top: -1.5em; + padding: 0.5em 0.1em; + margin: 0 -0.2em; +} + +#eventedit input.text, +#eventedit textarea { + width: 97%; +} + +#eventtabs { + position: relative; + padding: 0; + border: 0; + border-radius: 0; +} + +div.form-section, +#eventshow div.event-section, +#eventtabs div.event-section { + margin-top: 0.2em; + margin-bottom: 0.8em; +} + +#eventtabs .border-after { + padding-bottom: 0.8em; + margin-bottom: 0.8em; + border-bottom: 2px solid #fafafa; +} + +#eventshow label, +#eventedit label, +.form-section label { + display: inline-block; + min-width: 7em; + padding-right: 0.5em; +} + +#eventedit .formtable td.label { + min-width: 6em; +} + +td.topalign { + vertical-align: top; +} + +#eventedit label.weekday, +#eventedit label.monthday { + min-width: 3em; +} + +#eventedit label.month { + min-width: 5em; +} + +#edit-recurrence-yearly-bymonthblock { + margin-left: 7.5em; +} + +#eventedit .recurrence-form { + display: none; +} + +#eventedit .formtable td { + padding: 0.2em 0; +} + +.ui-dialog .event-update-confirm { + padding: 0 0.5em 0.5em 0.5em; +} + +.event-dialog-message, +.event-update-confirm .message { + margin-top: 0.5em; + padding: 0.8em; + background-color: #F7FDCB; + border: 1px solid #C2D071; +} + +.event-dialog-message .message, +.event-update-confirm .message { + margin-bottom: 0.5em; +} + +.edit-recurring-warning .savemode { + padding-left: 20px; +} + +.event-update-confirm .savemode { + padding-left: 30px; +} + +.event-dialog-message span.ui-icon, +.event-update-confirm span.ui-icon { + float: left; + margin: 0 7px 20px 0; +} + +.event-dialog-message label, +.event-update-confirm label { + min-width: 3em; + padding-right: 1em; +} + +.event-update-confirm a.button { + margin: 0 0.5em 0 0.2em; + min-width: 5em; +} + +#event-rsvp, +#edit-attendees-notify { + margin: 0.3em 0; + padding: 0.5em; + background-color: #F7FDCB; + border: 1px solid #C2D071; +} + +#edit-attendees-table { + width: 100%; + margin-top: 0.5em; +} + +#edit-attendees-table td.role { + width: 9em; +} + +#edit-attendees-table td.availability, +#edit-attendees-table td.confirmstate { + width: 4em; +} + +#edit-attendees-table td.options { + width: 3em; + text-align: right; + padding-right: 4px; +} + +#edit-attendees-table td.name { + width: auto; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +#edit-attendees-form { + position: relative; + margin-top: 1em; +} + +#edit-attendees-form #edit-attendee-schedule { + position: absolute; + top: 0; + right: 0; +} + +#edit-attendees-table select.edit-attendee-role { + border: 0; + padding: 2px; + background: white; +} + +.availability img.availabilityicon { + margin: 1px; + width: 14px; + height: 14px; + border-radius: 4px; + -moz-border-radius: 4px; +} + +.availability img.availabilityicon.loading { + background: url(images/loading_blue.gif) center no-repeat; +} + +#schedule-freebusy-times td.unknown, +.availability img.availabilityicon.unknown { + background: #ddd; +} + +#schedule-freebusy-times td.free, +.availability img.availabilityicon.free { + background: #0c0; +} + +#schedule-freebusy-times td.busy, +.availability img.availabilityicon.busy { + background: #c00; +} + +#schedule-freebusy-times td.tentative, +.availability img.availabilityicon.tentative { + background: #66d; +} + +#schedule-freebusy-times td.out-of-office, +.availability img.availabilityicon.out-of-office { + background: #f0b400; +} + +#schedule-freebusy-times td.all-busy, +#schedule-freebusy-times td.all-tentative, +#schedule-freebusy-times td.all-out-of-office { + background-image: url(images/freebusy-colors.png); + background-position: top right; + background-repeat: no-repeat; +} + +#schedule-freebusy-times td.all-tentative { + background-position: right -40px; +} + +#schedule-freebusy-times td.all-out-of-office { + background-position: right -80px; +} + +#edit-attendees-legend { + margin-top: 3em; + margin-bottom: 0.5em; +} + +#edit-attendees-legend .legend { + margin-right: 2em; + white-space: nowrap; +} + +#edit-attendees-legend img.availabilityicon { + vertical-align: middle; +} + +#edit-attendees-table tbody td.confirmstate { + overflow: hidden; + white-space: nowrap; + text-indent: -2000%; +} + +#edit-attendees-table td.confirmstate span { + display: block; + width: 20px; + background: url(images/attendee-status.gif) 5px 0 no-repeat; +} + +#edit-attendees-table td.confirmstate span.needs-action { +} + +#edit-attendees-table td.confirmstate span.accepted { + background-position: 5px -20px; +} + +#edit-attendees-table td.confirmstate span.declined { + background-position: 5px -40px; +} + +#edit-attendees-table td.confirmstate span.tentative { + background-position: 5px -60px; +} + +#attendees-freebusy-table { + width: 100%; + table-layout: fixed; + border-collapse: collapse; + margin: 0.5em 0; +} + +#attendees-freebusy-table td.attendees { + width: 18em; + border: 1px solid #ccc; + vertical-align: top; + overflow: hidden; +} + +#attendees-freebusy-table td.times { + width: auto; + vertical-align: top; + border: 1px solid #ccc; +} + +#attendees-freebusy-table div.scroll { + position: relative; + overflow: auto; +} + +#attendees-freebusy-table h3.boxtitle { + margin: 0; + height: auto !important; + border-color: #ccc; +} + +.attendees-list .attendee { + padding: 3px 4px 3px 1px; + background: url(images/attendee-status.gif) 2px -97px no-repeat; + white-space: nowrap; +} + +.attendees-list a.attendee-role-toggle { + display: inline-block; + width: 16px; + margin-right: 3px; + cursor: pointer; +} + +.attendees-list div.attendee { + border-top: 1px solid #ccc; +} + +.attendees-list span.attendee { + padding-left: 20px; + margin-right: 2em; +} + +.attendees-list .organizer { + background-position: 3px -77px; +} + +.attendees-list .opt-participant { + background-position: 2px -117px; +} + +.attendees-list .chair { + background-position: 2px -137px; +} + +.attendees-list .loading { + background: url(images/loading_blue.gif) 1px 50% no-repeat; +} + +.attendees-list .total { + background: none; + padding-left: 4px; + font-weight: bold; +} + +.attendees-list .spacer, +#schedule-freebusy-times tr.spacer td { + background: 0; + font-size: 50%; +} + +#schedule-freebusy-times { + border-collapse: collapse; + width: 100%; +} + +#schedule-freebusy-times td { + padding: 3px; + border: 1px solid #ccc; +} + +#schedule-freebusy-times tr.dates th { + border-color: #aaa; + border-style: solid; + border-width: 0 1px 0 1px; + white-space: nowrap; +} + +#attendees-freebusy-table div.timesheader, +#schedule-freebusy-times tr.times td { + min-width: 30px; + font-size: 9px; + padding: 5px 2px 6px 2px; + text-align: center; +} + +#schedule-freebusy-times tr.times td.allday { + min-width: 60px; +} + +#schedule-freebusy-times tr.times td { + cursor: pointer; +} + +#schedule-event-time { + position: absolute; + border: 2px solid #333; + background: #777; + background: rgba(60, 60, 60, 0.6); + opacity: 0.5; + border-radius: 4px; + cursor: move; + filter: alpha(opacity=40); /* IE8 */ +} + +#eventfreebusy .schedule-options { + position: relative; + margin-bottom: 1.5em; +} + +#eventfreebusy .schedule-buttons { + position: absolute; + top: 0; + right: 0; +} + +#eventfreebusy .schedule-find-buttons { + padding-bottom:0.5em; +} + +#eventfreebusy .schedule-find-buttons button { + min-width: 9em; + text-align: center; +} + +span.edit-alarm-set { + white-space: nowrap; +} + +a.dropdown-link { + color: #CC0000; + font-size: 12px; + text-decoration: none; +} + +a.dropdown-link:after { + content: ' ▼'; + font-size: 11px; + color: #666; +} + +#eventedit .ui-tabs-panel { + min-height: 20em; +} + +.alarm-item { + margin: 0.4em 0 1em 0; +} + +.alarm-item .event-title { + font-size: 14px; + margin: 0.1em 0 0.3em 0; +} + +.alarm-item div.event-section { + margin-top: 0.1em; + margin-bottom: 0.3em; +} + +.alarm-item .alarm-actions { + margin-top: 0.4em; +} + +.alarm-item div.alarm-actions a { + color: #CC0000; + margin-right: 0.8em; + text-decoration: none; +} + +a.alarm-action-snooze:after { + content: ' ▼'; + font-size: 10px; + color: #666; +} + +#alarm-snooze-dropdown { + z-index: 5000; +} + +.ui-dialog-buttonset a.dropdown-link { + margin-right: 1em; +} +/* +.ui-datepicker-calendar .ui-datepicker-today .ui-state-default { + border-color: #cccccc; + background: #ffffcc; + color: #000; +} +*/ +.ui-datepicker-calendar .ui-datepicker-week-col { + border: 0; + color: #999; + font-size: 90%; + text-align: right; + padding-right: 6px; +} +/* +.ui-datepicker th { + padding: 0.3em 0; + font-size: 10px; +} + +.ui-datepicker td span, +.ui-datepicker td a { + padding-left: 0.1em; +} +*/ +.ui-autocomplete { + max-height: 160px; + overflow-y: auto; + overflow-x: hidden; +} + +.ui-autocomplete .ui-menu-item { + white-space: nowrap; +} + +* html .ui-autocomplete { + height: 160px; +} + +span.spacer { + padding-left: 3em; +} + +#agendaoptions { + position: absolute; + top: 37; + left: 0; + right: 0; + height: auto; + z-index: 200; + border: 1px solid #ccc; + padding: 2px 5px 1px; + font-size: 90%; +} + +#agendaoptions label { + color: #444; + text-shadow: 1px 1px #eee; + padding-right: 0.5em; +} + +#calendar-kolabform { + position: relative; + padding-top: 24px; + margin: 0 -8px; + min-width: 660px; + min-height: 400px; +} + +#calendar-kolabform div.tabsbar { + top: 0; + right: 2px; + left: 2px; + height: 24px; +} + +#calendar-kolabform fieldset.tabbed { + background-color: #fff; + margin-top: 0; +} + +#calendar-kolabform span.tablink { + background-color: #e8e8e9; + background-image: -moz-linear-gradient(center top, #f4f4f4, #e6e6e6); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.0, #f4f4f4), color-stop(1.0, #e6e6e6)); + filter: progid:DXImageTransform.Microsoft.gradient(enabled='true', startColorstr=#f4f4f4, endColorstr=#e6e6e6, GradientType=0); + height: 24px !important; +} + +#calendar-kolabform span.tablink-selected { + background: #fff; + height: 25px !important; +} + +#calendar-kolabform span.tablink a, +#calendar-kolabform span.tablink-selected a { + background: none; + border: 1px solid #AAAAAA; + border-top-left-radius: 2px; + border-top-right-radius: 2px; + padding: 4px 10px 0 10px; + margin-left: 0; +} + +#calendar-kolabform table td.title { + font-weight: bold; + white-space: nowrap; + color: #666; + padding-right: 10px; +} + + +/* fullcalendar style overrides */ + +.rcube-fc-content { + position: absolute !important; + top: 37px; + left: 0; + right: 0; + bottom: 28px; + overflow: hidden; + border: 0; + border-radius: 4px 4px 0 0; + box-shadow: 0 0 2px #999; + -o-box-shadow: 0 0 2px #999; + -webkit-box-shadow: 0 0 2px #999; + -moz-box-shadow: 0 0 2px #999; + background: #fff; +} + +#calendar .fc-header-right { + padding-right: 280px; +} + +.fc-event { + font-size: 1em !important; +} + +.fc-event-title { + font-weight: bold; +} + +.fc-event-hori .fc-event-title { + font-weight: normal; + white-space: nowrap; +} + +.fc-event-hori .fc-event-time { + white-space: nowrap; + font-weight: normal !important; + font-size: 10px; + padding-right: 0.6em; +} + +.fc-grid .fc-event-time { + font-weight: normal !important; + padding-right: 0.3em; +} + +.fc-event-cateories { + font-style:italic; +} + +div.fc-event-location { + font-size: 90%; +} + +.fc-more-link { + color: #999; + padding-top: 1px; + cursor: pointer; +} + +.fc-agenda-slots td div { + height: 22px; +} + +.fc-sat, .fc-sun { + background-color: #fdfdfd; +} + +.fc-widget-header { + background-color: #d6eaf3; + color: #004458; + text-shadow: 0px 1px 1px #fff; +} + +.fc-view thead th.fc-widget-header { + padding: 8px 0; + color: #69939e; +} + +.fc-day-number { + color: #578da5; +} + +.fc-icon-alarms, +.fc-icon-sensitive, +.fc-icon-recurring { + display: inline-block; + width: 11px; + height: 11px; + background: url(images/eventicons.gif) 0 0 no-repeat; + margin-left: 3px; + line-height: 10px; +} + +.fc-icon-alarms { + background-position: 0 -13px; +} + +.fc-icon-sensitive { + background-position: 0 -25px; +} + +.fc-list-section .fc-event { + cursor: pointer; +} +/* +.fc-view-list div.fc-list-header, +.fc-view-table td.fc-list-header, +#edit-attendees-table thead td { + padding: 3px; + background: #dddddd; + background-image: -moz-linear-gradient(center top, #f4f4f4, #d2d2d2); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #f4f4f4), color-stop(1.00, #d2d2d2)); + filter: progid:DXImageTransform.Microsoft.gradient(enabled='true', startColorstr=#f4f4f4, endColorstr=#d2d2d2, GradientType=0); + font-weight: bold; + color: #333; +} +*/ +.fc-view-list .fc-event-skin .fc-event-content { + background: #F6F6F6; + padding: 2px; +} + +.fc-view-list .fc-event-skin .fc-event-title, +.fc-view-list .fc-event-skin .fc-event-location { + color: #333; +} + +.fc-view-table col.fc-event-location { + width: 20%; +} + +.fc-listappend { + text-align: center; + margin: 1em 0; +} + +.fc-listappend .message { + padding: 0.5em; + margin-bottom: 0.5em; + font-size: 150%; + color: #999; +} + +.fc-listappend .formlinks a { + font-size: 12px; + padding: 0 0.3em; +} + +.fc-event-temp { + opacity: 0.4; + filter: alpha(opacity=40); /* IE8 */ +} + +/* Settings section */ + +fieldset #calendarcategories div { + margin-bottom: 0.3em; +} + +/* Invitation UI in mail */ + +#messagemenu li a.calendarlink span.calendar { +/* background-position: 7px -109px; */ +} + +div.calendar-invitebox { + min-height: 20px; + margin: 5px 8px; + padding: 3px 6px 6px 34px; + border: 1px solid #C2D071; + background: url(images/calendar.png) 6px 5px no-repeat #F7FDCB; +} + +div.calendar-invitebox td.ititle { + font-weight: bold; + padding-right: 0.5em; +} + +div.calendar-invitebox td.label { + color: #666; + padding-right: 1em; +} + +#event-rsvp .rsvp-buttons, +div.calendar-invitebox .rsvp-status, +div.calendar-invitebox .rsvp-buttons { + margin-top: 0.5em; +} + +#event-rsvp input.button, +div.calendar-invitebox input.button, +div.calendar-invitebox select { + font-size: 11px; + margin-right: 0.5em; +} + +div.calendar-invitebox .calendar-select { + font-size: 11px; + margin-left: 1em; +} + +div.calendar-invitebox .rsvp-status.loading { + color: #666; + padding: 1px 0 2px 24px; + background: url(images/loading_blue.gif) top left no-repeat; +} + +div.calendar-invitebox .rsvp-status.declined, +div.calendar-invitebox .rsvp-status.tentative, +div.calendar-invitebox .rsvp-status.accepted { + padding: 0 0 1px 22px; + background: url(images/attendee-status.gif) 2px -20px no-repeat; +} + +div.calendar-invitebox .rsvp-status.declined { + background-position: 2px -40px; +} + +div.calendar-invitebox .rsvp-status.tentative { + background-position: 2px -60px; +} + +/* iTIP attend reply page */ + +.calendaritipattend .centerbox { + width: 40em; + margin: 80px auto; + padding: 10px 10px 10px 90px; + border: 1px solid #ccc; + box-shadow: 1px 1px 24px #ccc; + -moz-box-shadow: 1px 1px 18px #ccc; + -webkit-box-shadow: #ccc 1px 1px 18px; + background: url(images/invitation.png) 10px 10px no-repeat #fbfbfb; +} + +.calendaritipattend .calendar-invitebox { + background: none; + padding-left: 0; + border: 0; + margin: 0 0 2em 0; +} + +.calendaritipattend .calendar-invitebox .rsvp-status { + margin-top: 2.5em; + font-size: 110%; + font-weight: bold; +} + +.calendaritipattend .calendar-invitebox td.title, +.calendaritipattend .calendar-invitebox td.ititle { + font-size: 120%; +} + diff --git a/plugins/calendar/skins/larry/templates/attachment.html b/plugins/calendar/skins/larry/templates/attachment.html new file mode 100644 index 00000000..439afd40 --- /dev/null +++ b/plugins/calendar/skins/larry/templates/attachment.html @@ -0,0 +1,36 @@ + + + +<roundcube:object name="pagetitle" /> + + + + + + +
+
+ +
+ +
+ +
+ +
+ + + + diff --git a/plugins/calendar/skins/larry/templates/calendar.html b/plugins/calendar/skins/larry/templates/calendar.html new file mode 100644 index 00000000..ec41f7cb --- /dev/null +++ b/plugins/calendar/skins/larry/templates/calendar.html @@ -0,0 +1,202 @@ + + + +<roundcube:object name="pagetitle" /> + + + + + + + +
+ +
+ +
+ + + + +
+ +
+ + +
+
+ +
+
    +
  • +
  • +
  • +
  • + +
  • + +
+
+ +
+

Event Title

+
Location
+
From-To
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + Default +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ +
+
+ +
+ + + +
+ + +
+   +
+ +
+
+ +
+
+ +   + +
+
+ +   + +
+
+
+
+ + +
+
+ +
+
+
+ + +
+ + + + +
+
+ +
+ +
+ +
+ +
+ +
+

+ +
+ +
+ +
+ + + + + + + diff --git a/plugins/calendar/skins/larry/templates/eventedit.html b/plugins/calendar/skins/larry/templates/eventedit.html new file mode 100644 index 00000000..07afc179 --- /dev/null +++ b/plugins/calendar/skins/larry/templates/eventedit.html @@ -0,0 +1,100 @@ +
+
+
    +
  • +
+ +
+
+ +
+ +
+
+ +
+ +
+
+ +
+ +
+
+ + +   + +
+
+ +   + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+ + + +
+ +
+
+ +
+
+ +
+
+
+ +
\ No newline at end of file diff --git a/plugins/calendar/skins/larry/templates/freebusylegend.html b/plugins/calendar/skins/larry/templates/freebusylegend.html new file mode 100644 index 00000000..51e5ddc4 --- /dev/null +++ b/plugins/calendar/skins/larry/templates/freebusylegend.html @@ -0,0 +1,7 @@ +
+ + + + + +
diff --git a/plugins/calendar/skins/larry/templates/itipattend.html b/plugins/calendar/skins/larry/templates/itipattend.html new file mode 100644 index 00000000..e1c7cc7e --- /dev/null +++ b/plugins/calendar/skins/larry/templates/itipattend.html @@ -0,0 +1,36 @@ + + + +<roundcube:object name="pagetitle" /> + + + + + + +
+ +
+ + + + +
+ + +
+ + + \ No newline at end of file diff --git a/plugins/calendar/skins/larry/templates/kolabacl.html b/plugins/calendar/skins/larry/templates/kolabacl.html new file mode 100644 index 00000000..f32a92fc --- /dev/null +++ b/plugins/calendar/skins/larry/templates/kolabacl.html @@ -0,0 +1,12 @@ + + + +<roundcube:object name="pagetitle" /> + + + + + + + + diff --git a/plugins/calendar/skins/larry/templates/kolabform.html b/plugins/calendar/skins/larry/templates/kolabform.html new file mode 100644 index 00000000..03b023fc --- /dev/null +++ b/plugins/calendar/skins/larry/templates/kolabform.html @@ -0,0 +1,6 @@ +
+ +
+ \ No newline at end of file diff --git a/plugins/calendar/skins/larry/templates/print.html b/plugins/calendar/skins/larry/templates/print.html new file mode 100644 index 00000000..1c31ca29 --- /dev/null +++ b/plugins/calendar/skins/larry/templates/print.html @@ -0,0 +1,28 @@ + + + +<roundcube:object name="pagetitle" /> + + + +
+
+ + + +
+
+ + + +
+ +
+ +
+ + + + + + \ No newline at end of file