Branch 'roundcubemail-plugins-kolab-0.8' - plugins/calendar plugins/kolab_addressbook plugins/kolab_zpush plugins/owncloud

Jeroen van Meeuwen vanmeeuwen at kolabsys.com
Wed Aug 1 18:51:11 CEST 2012


 dev/null                                                        |binary
 plugins/calendar/skins/.htaccess                                |    5 
 plugins/calendar/skins/classic/README                           |    5 
 plugins/calendar/skins/classic/calendar.css                     | 1268 ++++++++++
 plugins/calendar/skins/classic/fullcalendar.css                 |  724 +++++
 plugins/calendar/skins/classic/iehacks.css                      |   88 
 plugins/calendar/skins/classic/images/attendee-status.gif       |binary
 plugins/calendar/skins/classic/images/badge_confidential.gif    |binary
 plugins/calendar/skins/classic/images/badge_confidential.png    |binary
 plugins/calendar/skins/classic/images/badge_private.gif         |binary
 plugins/calendar/skins/classic/images/badge_private.png         |binary
 plugins/calendar/skins/classic/images/calendar-blue.png         |binary
 plugins/calendar/skins/classic/images/calendar.gif              |binary
 plugins/calendar/skins/classic/images/calendar.png              |binary
 plugins/calendar/skins/classic/images/calendars.gif             |binary
 plugins/calendar/skins/classic/images/calendars.png             |binary
 plugins/calendar/skins/classic/images/eventicons.gif            |binary
 plugins/calendar/skins/classic/images/export.png                |binary
 plugins/calendar/skins/classic/images/freebusy-colors.gif       |binary
 plugins/calendar/skins/classic/images/freebusy-colors.png       |binary
 plugins/calendar/skins/classic/images/invitation.png            |binary
 plugins/calendar/skins/classic/images/listheader.gif            |binary
 plugins/calendar/skins/classic/images/loading_blue.gif          |binary
 plugins/calendar/skins/classic/images/minicolors-all.png        |binary
 plugins/calendar/skins/classic/images/minicolors-handles.gif    |binary
 plugins/calendar/skins/classic/images/preview.png               |binary
 plugins/calendar/skins/classic/images/print.png                 |binary
 plugins/calendar/skins/classic/images/spacer.gif                |binary
 plugins/calendar/skins/classic/images/toggle.gif                |binary
 plugins/calendar/skins/classic/images/toolbar.gif               |binary
 plugins/calendar/skins/classic/images/toolbar.png               |binary
 plugins/calendar/skins/classic/jquery.miniColors.css            |  106 
 plugins/calendar/skins/classic/print.css                        |  208 +
 plugins/calendar/skins/classic/print.iehacks.css                |   25 
 plugins/calendar/skins/classic/templates/attachment.html        |   26 
 plugins/calendar/skins/classic/templates/calendar.html          |  201 +
 plugins/calendar/skins/classic/templates/eventedit.html         |  103 
 plugins/calendar/skins/classic/templates/freebusylegend.html    |    7 
 plugins/calendar/skins/classic/templates/itipattend.html        |   21 
 plugins/calendar/skins/classic/templates/kolabacl.html          |   13 
 plugins/calendar/skins/classic/templates/kolabform.html         |    7 
 plugins/calendar/skins/classic/templates/print.html             |   28 
 plugins/calendar/skins/default/README                           |    5 
 plugins/calendar/skins/default/calendar.css                     | 1268 ----------
 plugins/calendar/skins/default/fullcalendar.css                 |  724 -----
 plugins/calendar/skins/default/iehacks.css                      |   88 
 plugins/calendar/skins/default/jquery.miniColors.css            |  106 
 plugins/calendar/skins/default/print.css                        |  208 -
 plugins/calendar/skins/default/print.iehacks.css                |   25 
 plugins/calendar/skins/default/templates/attachment.html        |   26 
 plugins/calendar/skins/default/templates/calendar.html          |  201 -
 plugins/calendar/skins/default/templates/eventedit.html         |  103 
 plugins/calendar/skins/default/templates/freebusylegend.html    |    7 
 plugins/calendar/skins/default/templates/itipattend.html        |   21 
 plugins/calendar/skins/default/templates/kolabacl.html          |   13 
 plugins/calendar/skins/default/templates/kolabform.html         |    7 
 plugins/calendar/skins/default/templates/print.html             |   28 
 plugins/calendar/skins/larry/.htaccess                          |    5 
 plugins/kolab_addressbook/skins/classic/kolab_addressbook.css   |   35 
 plugins/kolab_addressbook/skins/classic/kolab_folders.gif       |binary
 plugins/kolab_addressbook/skins/classic/kolab_folders.png       |binary
 plugins/kolab_addressbook/skins/classic/templates/bookedit.html |   27 
 plugins/kolab_addressbook/skins/default/kolab_addressbook.css   |   35 
 plugins/kolab_addressbook/skins/default/templates/bookedit.html |   27 
 plugins/kolab_zpush/skins/classic/alarm-clock.png               |binary
 plugins/kolab_zpush/skins/classic/config.css                    |  119 
 plugins/kolab_zpush/skins/classic/deviceactions.png             |binary
 plugins/kolab_zpush/skins/classic/foldertypes.png               |binary
 plugins/kolab_zpush/skins/classic/pointer-left.gif              |binary
 plugins/kolab_zpush/skins/classic/synchronize.png               |binary
 plugins/kolab_zpush/skins/classic/templates/config.html         |   63 
 plugins/kolab_zpush/skins/default/config.css                    |  119 
 plugins/kolab_zpush/skins/default/templates/config.html         |   63 
 plugins/owncloud/skins/classic/cloud.png                        |binary
 plugins/owncloud/skins/classic/owncloud.css                     |   12 
 plugins/owncloud/skins/classic/templates/owncloud.html          |   19 
 plugins/owncloud/skins/default/owncloud.css                     |   12 
 plugins/owncloud/skins/default/templates/owncloud.html          |   19 
 78 files changed, 3110 insertions(+), 3110 deletions(-)

New commits:
commit ff320d9e244b3e4a4d0f1fa37efcd1b2e0c01560
Author: Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen at kolabsys.com>
Date:   Wed Aug 1 17:48:34 2012 +0100

    Rename default skin to classic now that larry is the default in roundcube 0.8

diff --git a/plugins/calendar/skins/.htaccess b/plugins/calendar/skins/.htaccess
new file mode 100644
index 0000000..734b6cd
--- /dev/null
+++ b/plugins/calendar/skins/.htaccess
@@ -0,0 +1,5 @@
+# get all unknown files from default skin folder
+RewriteEngine On
+RewriteCond  %{REQUEST_FILENAME}  !-f
+RewriteCond  %{REQUEST_FILENAME}  !-d
+RewriteRule  larry/(.*)           %{REQUEST_URI}/../../classic/$1  [qsappend,last]
diff --git a/plugins/calendar/skins/classic/README b/plugins/calendar/skins/classic/README
new file mode 100644
index 0000000..ccd513a
--- /dev/null
+++ b/plugins/calendar/skins/classic/README
@@ -0,0 +1,5 @@
+Icons by Fugue Icons <http://p.yusukekamiyamane.com/>
+
+Copyright (C) 2010 Yusuke Kamiyamane. All rights reserved.
+The icons are licensed under a Creative Commons Attribution
+3.0 license. <http://creativecommons.org/licenses/by/3.0/>
diff --git a/plugins/calendar/skins/classic/calendar.css b/plugins/calendar/skins/classic/calendar.css
new file mode 100644
index 0000000..21dcb1b
--- /dev/null
+++ b/plugins/calendar/skins/classic/calendar.css
@@ -0,0 +1,1268 @@
+/*** Style for Calendar plugin ***/
+
+body.calendarmain {
+	overflow: hidden;
+}
+
+#taskbar a.button-calendar {
+	background: url(images/calendar.png) 0px 1px no-repeat;
+}
+
+/* hack for IE 6/7 */
+* html #taskbar a.button-calendar {
+	background-image: url(images/calendar.gif);
+}
+
+#main {
+	position: absolute;
+	clear: both;
+	top: 90px;
+	left: 0;
+	right: 0;
+	bottom: 10px;
+}
+
+#calendarsidebar {
+	position: absolute;
+	top: 37px;
+	left: 10px;
+	bottom: 0;
+	width: 230px;
+}
+
+#datepicker {
+	width: 100%;
+}
+
+#datepicker .ui-datepicker {
+	width: 97% !important;
+	box-shadow: none;
+	-moz-box-shadow: none;
+	-webkit-box-shadow: none;
+}
+
+#datepicker .ui-datepicker-activerange a {
+	border-color: #c33;
+	color: #a22;
+}
+
+#datepicker .ui-datepicker-activerange a.ui-state-active {
+	color: #fff;
+}
+
+#datepicker .ui-priority-secondary {
+	opacity: 0.4;
+}
+
+#datepicker td.ui-datepicker-week-col {
+	cursor: pointer;
+}
+
+#calendarsidebartoggle {
+	position: absolute;
+	left: 244px;
+	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;
+}
+
+#calendarsidebartoggle:hover {
+	background-color: #ddd;
+}
+
+#calendar {
+	position: absolute;
+	top: 0;
+	left: 256px;
+	right: 10px;
+	bottom: 0;
+}
+
+#print {
+	width: 680px;
+}
+
+pre {
+ font-family: "Lucida Grande", Verdana, Arial, Helvetica, sans-serif;
+}
+
+#calendars {
+	position: absolute;
+	top: 220px;
+	left: 0;
+	bottom: 0;
+	right: 0;
+	background-color: #F9F9F9;
+	border: 1px solid #999999;
+	overflow: hidden;
+}
+
+#calendarslist {
+	list-style: none;
+	margin: 0;
+	padding: 0;
+}
+
+#attachmentlist li,
+#calendarslist li {
+	margin: 0;
+	padding: 1px;
+	display: block;
+	background: #fff;
+	border-bottom: 1px solid #EBEBEB;
+	white-space: nowrap;
+}
+
+#calendarslist li label {
+	display: block;
+}
+
+#calendarslist li span.handle {
+	cursor: default;
+	background: url(images/calendars.png) 0 -2px no-repeat;
+	display: inline-block;
+	width: 20px;
+}
+
+#calendarslist li input {
+	margin-right: 5px;
+}
+
+#calendarslist li.selected {
+	background-color: #ccc;
+	border-bottom: 1px solid #bbb;
+}
+
+#calendarslist li.selected span {
+	font-weight: bold;
+}
+
+#calendarslist li.readonly span.handle {
+    background-position: 0 -20px;
+}
+
+#calendarslist li.other span.handle {
+    background-position: 0 -38px;
+}
+
+#calendarslist li.other.readonly span.handle {
+    background-position: 0 -56px;
+}
+
+#calendarslist li.shared span.handle {
+    background-position: 0 -74px;
+}
+
+#calendarslist li.shared.readonly span.handle {
+    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: 45px;
+	left: 256px;
+	height: 35px;
+}
+
+#calendartoolbar a {
+	padding-right: 10px;
+}
+
+#calendartoolbar a.button,
+#calendartoolbar a.buttonPas {
+	display: block;
+	float: left;
+	width: 32px;
+	height: 32px;
+	padding: 0;
+	margin-right: 10px;
+	overflow: hidden;
+	background: url(images/toolbar.png) 0 0 no-repeat transparent;
+	opacity: 0.99; /* this is needed to make buttons appear correctly in Chrome */
+}
+
+#calendartoolbar a.buttonPas {
+	opacity: 0.35;
+}
+
+#calendartoolbar a.addeventSel {
+	background-position: 0 -32px;
+}
+
+#calendartoolbar a.delete {
+  background-position: -32px 0;
+}
+
+#calendartoolbar a.deleteSel {
+  background-position: -32px -32px;
+}
+
+#calendartoolbar a.print {
+  background-position: -64px 0;
+}
+
+#calendartoolbar a.printSel {
+  background-position: -64px -32px;
+}
+
+#calendartoolbar a.export {
+	background-position: -128px 0;
+}
+
+#calendartoolbar a.exportSel {
+	background-position: -128px -32px;
+}
+
+#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: 20px;
+	margin: 0.1em 0 0.4em 0;
+}
+
+#eventshow label,
+#eventshow h5.label {
+	font-weight: normal;
+	font-size: 0.9em;
+	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;
+	padding: 0.5em 0.1em;
+}
+
+#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 .tabsbar {
+	position: absolute;
+	top: 0;
+}
+
+#eventtabs .ui-tabs-panel {
+	padding: 1em 0.8em;
+	border: 1px solid #aaa;
+	border-width: 0 1px 1px 1px;
+}
+
+#eventtabs .ui-tabs-nav {
+	background: none;
+	padding: 0;
+	border-width: 0 0 1px 0;
+	border-radius: 0;
+}
+
+#eventtabs .border-after {
+	padding-bottom: 0.6em;
+	margin-bottom: 0.6em;
+	border-bottom: 1px solid #999;
+}
+
+#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%;
+	display: table;
+	table-layout: fixed;
+	border-collapse: collapse;
+	border: 1px solid #ccc;
+}
+
+#edit-attendees-table td {
+	padding: 3px;
+	border-bottom: 1px solid #ccc;
+}
+
+#edit-attendees-table td.role {
+	width: 8em;
+}
+
+#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-table thead td {
+	background: url(images/listheader.gif) top left repeat-x #CCC;
+}
+
+#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 {
+	text-align: right;
+	padding-right: 0.5em;
+}
+
+.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;
+	left: 0;
+	right: 0;
+	bottom: 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: 0;
+	overflow: hidden;
+}
+
+.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-mon, .fc-tue, .fc-wed, .fc-thu, .fc-fri {
+	background-color: #fdfdfd;
+}
+
+.fc-widget-header {
+	background-color: #fff;
+}
+
+.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 {
+	background-image: url(images/calendars.png);
+	background-position: 7px -109px;
+	background-repeat: no-repeat;
+}
+
+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/classic/fullcalendar.css b/plugins/calendar/skins/classic/fullcalendar.css
new file mode 100644
index 0000000..17f1b37
--- /dev/null
+++ b/plugins/calendar/skins/classic/fullcalendar.css
@@ -0,0 +1,724 @@
+/*
+ * FullCalendar v1.5.3-rcube-0.7.1 Stylesheet
+ *
+ * Copyright (c) 2011 Adam Shaw
+ * Copyright (c) 2011, Kolab Systems AG
+ * Dual licensed under the MIT and GPL licenses, located in
+ * MIT-LICENSE.txt and GPL-LICENSE.txt respectively.
+ *
+ * Date: Mon Feb 13 23:00:46 2012 +0100
+ *
+ */
+
+
+.fc {
+	direction: ltr;
+	text-align: left;
+	}
+	
+.fc table {
+	border-collapse: collapse;
+	border-spacing: 0;
+	}
+	
+html .fc,
+.fc table {
+	font-size: 1em;
+	}
+	
+.fc td,
+.fc th {
+	padding: 0;
+	vertical-align: top;
+	}
+
+
+
+/* Header
+------------------------------------------------------------------------*/
+
+.fc-header td {
+	white-space: nowrap;
+	}
+
+.fc-header-left {
+	width: 25%;
+	text-align: left;
+	}
+	
+.fc-header-center {
+	text-align: center;
+	}
+	
+.fc-header-right {
+	width: 25%;
+	text-align: right;
+	}
+	
+.fc-header-title {
+	display: inline-block;
+	vertical-align: top;
+	}
+	
+.fc-header-title h2 {
+	margin-top: 0;
+	white-space: nowrap;
+	}
+	
+.fc .fc-header-space {
+	padding-left: 10px;
+	}
+	
+.fc-header .fc-button {
+	margin-bottom: 1em;
+	vertical-align: top;
+	}
+	
+/* buttons edges butting together */
+
+.fc-header .fc-button {
+	margin-right: -1px;
+	}
+	
+.fc-header .fc-corner-right {
+	margin-right: 1px; /* back to normal */
+	}
+	
+.fc-header .ui-corner-right {
+	margin-right: 0; /* back to normal */
+	}
+	
+/* button layering (for border precedence) */
+	
+.fc-header .fc-state-hover,
+.fc-header .ui-state-hover {
+	z-index: 2;
+	}
+	
+.fc-header .fc-state-down {
+	z-index: 3;
+	}
+
+.fc-header .fc-state-active,
+.fc-header .ui-state-active {
+	z-index: 4;
+	}
+	
+	
+	
+/* Content
+------------------------------------------------------------------------*/
+	
+.fc-content {
+	clear: both;
+	}
+	
+.fc-view {
+	width: 100%; /* needed for view switching (when view is absolute) */
+	overflow: hidden;
+	}
+	
+	
+
+/* Cell Styles
+------------------------------------------------------------------------*/
+
+.fc-widget-header,    /* <th>, usually */
+.fc-widget-content {  /* <td>, usually */
+	border: 1px solid #ccc;
+	}
+	
+.fc-state-highlight { /* <td> today cell */ /* TODO: add .fc-today to <th> */
+	background: #ffc;
+	}
+	
+.fc-cell-overlay { /* semi-transparent rectangle while dragging */
+	background: #9cf;
+	opacity: .2;
+	filter: alpha(opacity=20); /* for IE */
+	}
+	
+
+
+/* Buttons
+------------------------------------------------------------------------*/
+
+.fc-button {
+	position: relative;
+	display: inline-block;
+	cursor: pointer;
+	}
+	
+.fc-state-default { /* non-theme */
+	border-style: solid;
+	border-width: 1px 0;
+	}
+	
+.fc-button-inner {
+	position: relative;
+	float: left;
+	overflow: hidden;
+	}
+	
+.fc-state-default .fc-button-inner { /* non-theme */
+	border-style: solid;
+	border-width: 0 1px;
+	}
+	
+.fc-button-content {
+	position: relative;
+	float: left;
+	height: 1.9em;
+	line-height: 1.9em;
+	padding: 0 .6em;
+	white-space: nowrap;
+	}
+	
+/* icon (for jquery ui) */
+	
+.fc-button-content .fc-icon-wrap {
+	position: relative;
+	float: left;
+	top: 50%;
+	}
+	
+.fc-button-content .ui-icon {
+	position: relative;
+	float: left;
+	margin-top: -50%;
+	*margin-top: 0;
+	*top: -50%;
+	}
+	
+/* gloss effect */
+	
+.fc-state-default .fc-button-effect {
+	position: absolute;
+	top: 50%;
+	left: 0;
+	}
+	
+.fc-state-default .fc-button-effect span {
+	position: absolute;
+	top: -100px;
+	left: 0;
+	width: 500px;
+	height: 100px;
+	border-width: 100px 0 0 1px;
+	border-style: solid;
+	border-color: #fff;
+	background: #444;
+	opacity: .09;
+	filter: alpha(opacity=9);
+	}
+	
+/* button states (determines colors)  */
+	
+.fc-state-default,
+.fc-state-default .fc-button-inner {
+	border-style: solid;
+	border-color: #ccc #bbb #aaa;
+	background: #F3F3F3;
+	color: #000;
+	}
+	
+.fc-state-hover,
+.fc-state-hover .fc-button-inner {
+	border-color: #999;
+	}
+	
+.fc-state-down,
+.fc-state-down .fc-button-inner {
+	border-color: #555;
+	background: #777;
+	}
+	
+.fc-state-active,
+.fc-state-active .fc-button-inner {
+	border-color: #555;
+	background: #777;
+	color: #fff;
+	}
+	
+.fc-state-disabled,
+.fc-state-disabled .fc-button-inner {
+	color: #999;
+	border-color: #ddd;
+	}
+	
+.fc-state-disabled {
+	cursor: default;
+	}
+	
+.fc-state-disabled .fc-button-effect {
+	display: none;
+	}
+	
+	
+
+/* Global Event Styles
+------------------------------------------------------------------------*/
+	 
+.fc-event {
+	border-style: solid;
+	border-width: 0;
+	font-size: .85em;
+	cursor: default;
+	}
+	
+a.fc-event,
+.fc-event-draggable {
+	cursor: pointer;
+	}
+	
+a.fc-event {
+	text-decoration: none;
+	}
+	
+.fc-rtl .fc-event {
+	text-align: right;
+	}
+	
+.fc-event-skin {
+	border-color: #36c;     /* default BORDER color */
+	background-color: #36c; /* default BACKGROUND color */
+	color: #fff;            /* default TEXT color */
+	}
+	
+.fc-event-inner {
+	position: relative;
+	width: 100%;
+	height: 100%;
+	border-style: solid;
+	border-width: 0;
+	overflow: hidden;
+	}
+	
+.fc-event-time,
+.fc-event-title {
+	padding: 0 1px;
+	}
+	
+.fc .ui-resizable-handle { /*** TODO: don't use ui-resizable anymore, change class ***/
+	display: block;
+	position: absolute;
+	z-index: 99999;
+	overflow: hidden; /* hacky spaces (IE6/7) */
+	font-size: 300%;  /* */
+	line-height: 50%; /* */
+	}
+	
+	
+	
+/* Horizontal Events
+------------------------------------------------------------------------*/
+
+.fc-event-hori {
+	border-width: 1px 0;
+	margin-bottom: 1px;
+	}
+	
+/* resizable */
+	
+.fc-event-hori .ui-resizable-e {
+	top: 0           !important; /* importants override pre jquery ui 1.7 styles */
+	right: -3px      !important;
+	width: 7px       !important;
+	height: 100%     !important;
+	cursor: e-resize;
+	}
+	
+.fc-event-hori .ui-resizable-w {
+	top: 0           !important;
+	left: -3px       !important;
+	width: 7px       !important;
+	height: 100%     !important;
+	cursor: w-resize;
+	}
+	
+.fc-event-hori .ui-resizable-handle {
+	_padding-bottom: 14px; /* IE6 had 0 height */
+	}
+	
+	
+	
+/* Fake Rounded Corners (for buttons and events)
+------------------------------------------------------------*/
+	
+.fc-corner-left {
+	margin-left: 1px;
+	}
+	
+.fc-corner-left .fc-button-inner,
+.fc-corner-left .fc-event-inner {
+	margin-left: -1px;
+	}
+	
+.fc-corner-right {
+	margin-right: 1px;
+	}
+	
+.fc-corner-right .fc-button-inner,
+.fc-corner-right .fc-event-inner {
+	margin-right: -1px;
+	}
+	
+.fc-corner-top {
+	margin-top: 1px;
+	}
+	
+.fc-corner-top .fc-event-inner {
+	margin-top: -1px;
+	}
+	
+.fc-corner-bottom {
+	margin-bottom: 1px;
+	}
+	
+.fc-corner-bottom .fc-event-inner {
+	margin-bottom: -1px;
+	}
+	
+	
+	
+/* Fake Rounded Corners SPECIFICALLY FOR EVENTS
+-----------------------------------------------------------------*/
+	
+.fc-corner-left .fc-event-inner {
+	border-left-width: 1px;
+	}
+	
+.fc-corner-right .fc-event-inner {
+	border-right-width: 1px;
+	}
+	
+.fc-corner-top .fc-event-inner {
+	border-top-width: 1px;
+	}
+	
+.fc-corner-bottom .fc-event-inner {
+	border-bottom-width: 1px;
+	}
+	
+	
+	
+/* Reusable Separate-border Table
+------------------------------------------------------------*/
+
+table.fc-border-separate {
+	border-collapse: separate;
+	}
+	
+.fc-border-separate th,
+.fc-border-separate td {
+	border-width: 1px 0 0 1px;
+	}
+	
+.fc-border-separate th.fc-last,
+.fc-border-separate td.fc-last {
+	border-right-width: 1px;
+	}
+	
+.fc-border-separate tr.fc-last th,
+.fc-border-separate tr.fc-last td {
+	border-bottom-width: 1px;
+	}
+	
+.fc-border-separate tbody tr.fc-first td,
+.fc-border-separate tbody tr.fc-first th {
+	border-top-width: 0;
+	}
+	
+	
+
+/* Month View, Basic Week View, Basic Day View
+------------------------------------------------------------------------*/
+
+.fc-grid th {
+	text-align: center;
+	}
+	
+.fc-grid .fc-day-number {
+	float: right;
+	padding: 0 2px;
+	}
+	
+.fc-grid .fc-other-month .fc-day-number {
+	opacity: 0.3;
+	filter: alpha(opacity=30); /* for IE */
+	/* opacity with small font can sometimes look too faded
+	   might want to set the 'color' property instead
+	   making day-numbers bold also fixes the problem */
+	}
+	
+.fc-grid .fc-day-content {
+	clear: both;
+	padding: 2px 2px 1px; /* distance between events and day edges */
+	}
+	
+/* event styles */
+	
+.fc-grid .fc-event-time {
+	font-weight: bold;
+	}
+	
+/* right-to-left */
+	
+.fc-rtl .fc-grid .fc-day-number {
+	float: left;
+	}
+	
+.fc-rtl .fc-grid .fc-event-time {
+	float: right;
+	}
+	
+.fc-more-link {
+	font-size: 0.85em;
+	white-space: nowrap;
+	text-decoration: none;
+	cursor: pointer;
+	padding: 1px;
+}
+
+/* Agenda Week View, Agenda Day View
+------------------------------------------------------------------------*/
+
+.fc-agenda table {
+	border-collapse: separate;
+	}
+	
+.fc-agenda-days th {
+	text-align: center;
+	}
+	
+.fc-agenda .fc-agenda-axis {
+	width: 50px;
+	padding: 0 4px;
+	vertical-align: middle;
+	text-align: right;
+	white-space: nowrap;
+	font-weight: normal;
+	}
+	
+.fc-agenda .fc-day-content {
+	padding: 2px 2px 1px;
+	}
+	
+/* make axis border take precedence */
+	
+.fc-agenda-days .fc-agenda-axis {
+	border-right-width: 1px;
+	}
+	
+.fc-agenda-days .fc-col0 {
+	border-left-width: 0;
+	}
+	
+/* all-day area */
+	
+.fc-agenda-allday th {
+	border-width: 0 1px;
+	}
+	
+.fc-agenda-allday .fc-day-content {
+	min-height: 34px; /* TODO: doesnt work well in quirksmode */
+	_height: 34px;
+	}
+	
+/* divider (between all-day and slots) */
+	
+.fc-agenda-divider-inner {
+	height: 2px;
+	overflow: hidden;
+	}
+	
+.fc-widget-header .fc-agenda-divider-inner {
+	background: #eee;
+	}
+	
+/* slot rows */
+	
+.fc-agenda-slots th {
+	border-width: 1px 1px 0;
+	}
+	
+.fc-agenda-slots td {
+	border-width: 1px 0 0;
+	background: none;
+	}
+	
+.fc-agenda-slots td div {
+	height: 20px;
+	}
+	
+.fc-agenda-slots tr.fc-slot0 th,
+.fc-agenda-slots tr.fc-slot0 td {
+	border-top-width: 0;
+	}
+
+.fc-agenda-slots tr.fc-minor th,
+.fc-agenda-slots tr.fc-minor td {
+	border-top-style: dotted;
+	}
+	
+.fc-agenda-slots tr.fc-minor th.ui-widget-header {
+	*border-top-style: solid; /* doesn't work with background in IE6/7 */
+	}
+	
+
+
+/* Vertical Events
+------------------------------------------------------------------------*/
+
+.fc-event-vert {
+	border-width: 0 1px;
+	}
+	
+.fc-event-vert .fc-event-head,
+.fc-event-vert .fc-event-content {
+	position: relative;
+	z-index: 2;
+	width: 100%;
+	overflow: hidden;
+	}
+	
+.fc-event-vert .fc-event-time {
+	white-space: nowrap;
+	font-size: 10px;
+	}
+	
+.fc-event-vert .fc-event-bg { /* makes the event lighter w/ a semi-transparent overlay  */
+	position: absolute;
+	z-index: 1;
+	top: 0;
+	left: 0;
+	width: 100%;
+	height: 100%;
+	background: #fff;
+	opacity: .3;
+	filter: alpha(opacity=30);
+	}
+	
+.fc .ui-draggable-dragging .fc-event-bg, /* TODO: something nicer like .fc-opacity */
+.fc-select-helper .fc-event-bg {
+	display: none\9; /* for IE6/7/8. nested opacity filters while dragging don't work */
+	}
+	
+/* resizable */
+	
+.fc-event-vert .ui-resizable-s {
+	bottom: 0        !important; /* importants override pre jquery ui 1.7 styles */
+	width: 100%      !important;
+	height: 8px      !important;
+	overflow: hidden !important;
+	line-height: 8px !important;
+	font-size: 11px  !important;
+	font-family: monospace;
+	text-align: center;
+	cursor: s-resize;
+	}
+	
+.fc-agenda .ui-resizable-resizing { /* TODO: better selector */
+	_overflow: hidden;
+	}
+	
+.fc-timeline {
+	position: absolute;
+	width: 100%;
+	left: 0;
+	margin: 0;
+	padding: 0;
+	border: none;
+	border-top: 2px solid #3ec400;
+	z-index: 999;
+}
+
+/* List view  (by bruederli at kolabsys.com)
+------------------------------------------------------------------------*/
+
+.fc-view-list,
+.fc-view-table {
+	border: 1px solid #ccc;
+	width: auto;
+}
+
+.fc-view-list .fc-list-header,
+.fc-view-table td.fc-list-header {
+	border-width: 0;
+	border-bottom-width: 1px;
+	padding: 3px 5px;
+}
+
+.fc-view-table .fc-first td.fc-list-header {
+	border-top-width: 0;
+}
+
+.fc-list-section {
+	padding: 4px 2px;
+	border-width: 0;
+	border-bottom-width: 1px;
+}
+
+.fc-view-list .fc-last {
+	border-bottom-width: 0;
+}
+
+.fc-list-section .fc-event {
+	position: relative;
+	margin: 1px 2px 3px 2px;
+}
+
+.fc-view-table tr.fc-event td {
+	padding: 2px;
+	border-bottom: 1px solid #ccc;
+}
+
+.fc-view-table tr.fc-event td.fc-event-handle {
+	padding: 3px 8px 3px 3px;
+}
+
+.fc-view-table .fc-event-handle .fc-event-skin {
+	border-radius: 2px;
+	-moz-border-radius: 2px;
+}
+
+.fc-view-table .fc-event-handle .fc-event-inner {
+	display: block;
+	width: 8px;
+	height: 10px;
+	border-radius: 2px;
+	-moz-border-radius: 2px;
+}
+
+.fc-view-table table {
+	table-layout: fixed;
+	width: 100%;
+}
+
+.fc-view-table col.fc-event-handle {
+	width: 18px;
+}
+
+.fc-event-handle .fc-event-inner {
+	border-color: inherit;
+	background-color: inherit;
+}
+
+.fc-view-table col.fc-event-date {
+	width: 7em;
+}
+
+.fc-view-table .fc-list-day col.fc-event-date {
+	width: 1px;
+}
+
+.fc-view-table col.fc-event-time {
+	width: 8em;
+}
+
+.fc-view-table td.fc-event-date,
+.fc-view-table td.fc-event-time {
+	white-space: nowrap;
+	padding-right: 1em;
+}
+
diff --git a/plugins/calendar/skins/classic/iehacks.css b/plugins/calendar/skins/classic/iehacks.css
new file mode 100644
index 0000000..831266f
--- /dev/null
+++ b/plugins/calendar/skins/classic/iehacks.css
@@ -0,0 +1,88 @@
+/* CSS hacks for IE 6/7 */
+
+#main {
+	width: expression(Math.max(300, parseInt(document.documentElement.clientWidth)-10)+'px');
+	height: expression(Math.max(300, parseInt(document.documentElement.clientHeight)-100)+'px');
+}
+
+#sidebar,
+#sidebartoggle {
+	height: expression((parseInt(this.parentNode.offsetHeight)-37)+'px');
+}
+
+#calendar {
+	width: expression((parseInt(this.parentNode.offsetWidth)-parseInt(document.getElementById('sidebartoggle').offsetWidth)-parseInt(document.getElementById('sidebartoggle').offsetLeft)-4)+'px');
+	height: expression(parseInt(this.parentNode.offsetHeight)+'px');
+}
+
+#calendars {
+	height: expression((parseInt(this.parentNode.offsetHeight)-220)+'px');
+}
+
+#agendaoptions {
+	width: expression((parseInt(this.parentNode.offsetWidth)-12)+'px');
+}
+
+#calendartoolbar a.buttonPas {
+	filter: alpha(opacity=35);
+}
+
+html #calendartoolbar a.button,
+html #calendartoolbar a.buttonPas {
+	background-image: url(images/toolbar.gif);
+}
+
+#datepicker a.ui-priority-secondary {
+	filter: alpha(opacity=40);
+}
+
+#calendarslist li span {
+	background-image: url(images/calendars.gif);
+}
+
+#datepicker .ui-widget-header {
+	width: 102%;
+}
+
+#eventshow.sensitivity-private {
+	background-image: url(images/badge_private.gif);
+}
+
+#eventshow.sensitivity-confidential {
+	background-image: url(images/badge_confidential.gif);
+}
+
+.fc-day-content {
+	cursor: default;
+}
+
+.fc-header-title h2 {
+	font-size: 16px;
+}
+
+.fc-event-temp .fc-event-bg {
+	display: none; /* nested opacity filters while dragging don't work */
+}
+
+#schedule-event-time {
+	filter: alpha(opacity=40);
+}
+
+#eventfreebusy .schedule-buttons,
+#edit-attendees-form #edit-attendee-schedule {
+	right: 0.6em;
+}
+
+#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.gif');
+}
+
+#schedule-freebusy-times tr.times td.allday {
+	width: expression(Math.max(60, parseInt(this.offsetWidth))+'px');
+}
+
+.ui-dialog .ui-dialog-titlebar {
+	width: expression((parseInt(this.parentNode.offsetWidth)-26)+'px');
+}
diff --git a/plugins/calendar/skins/classic/images/attendee-status.gif b/plugins/calendar/skins/classic/images/attendee-status.gif
new file mode 100644
index 0000000..5c08aae
Binary files /dev/null and b/plugins/calendar/skins/classic/images/attendee-status.gif differ
diff --git a/plugins/calendar/skins/classic/images/badge_confidential.gif b/plugins/calendar/skins/classic/images/badge_confidential.gif
new file mode 100644
index 0000000..ce6b2a0
Binary files /dev/null and b/plugins/calendar/skins/classic/images/badge_confidential.gif differ
diff --git a/plugins/calendar/skins/classic/images/badge_confidential.png b/plugins/calendar/skins/classic/images/badge_confidential.png
new file mode 100644
index 0000000..e12e788
Binary files /dev/null and b/plugins/calendar/skins/classic/images/badge_confidential.png differ
diff --git a/plugins/calendar/skins/classic/images/badge_private.gif b/plugins/calendar/skins/classic/images/badge_private.gif
new file mode 100644
index 0000000..900ed73
Binary files /dev/null and b/plugins/calendar/skins/classic/images/badge_private.gif differ
diff --git a/plugins/calendar/skins/classic/images/badge_private.png b/plugins/calendar/skins/classic/images/badge_private.png
new file mode 100644
index 0000000..acf3207
Binary files /dev/null and b/plugins/calendar/skins/classic/images/badge_private.png differ
diff --git a/plugins/calendar/skins/classic/images/calendar-blue.png b/plugins/calendar/skins/classic/images/calendar-blue.png
new file mode 100644
index 0000000..95c9452
Binary files /dev/null and b/plugins/calendar/skins/classic/images/calendar-blue.png differ
diff --git a/plugins/calendar/skins/classic/images/calendar.gif b/plugins/calendar/skins/classic/images/calendar.gif
new file mode 100644
index 0000000..4b25de0
Binary files /dev/null and b/plugins/calendar/skins/classic/images/calendar.gif differ
diff --git a/plugins/calendar/skins/classic/images/calendar.png b/plugins/calendar/skins/classic/images/calendar.png
new file mode 100644
index 0000000..caab8a3
Binary files /dev/null and b/plugins/calendar/skins/classic/images/calendar.png differ
diff --git a/plugins/calendar/skins/classic/images/calendars.gif b/plugins/calendar/skins/classic/images/calendars.gif
new file mode 100644
index 0000000..cf12ebd
Binary files /dev/null and b/plugins/calendar/skins/classic/images/calendars.gif differ
diff --git a/plugins/calendar/skins/classic/images/calendars.png b/plugins/calendar/skins/classic/images/calendars.png
new file mode 100644
index 0000000..feb3945
Binary files /dev/null and b/plugins/calendar/skins/classic/images/calendars.png differ
diff --git a/plugins/calendar/skins/classic/images/eventicons.gif b/plugins/calendar/skins/classic/images/eventicons.gif
new file mode 100644
index 0000000..7adbdeb
Binary files /dev/null and b/plugins/calendar/skins/classic/images/eventicons.gif differ
diff --git a/plugins/calendar/skins/classic/images/export.png b/plugins/calendar/skins/classic/images/export.png
new file mode 100644
index 0000000..d02781d
Binary files /dev/null and b/plugins/calendar/skins/classic/images/export.png differ
diff --git a/plugins/calendar/skins/classic/images/freebusy-colors.gif b/plugins/calendar/skins/classic/images/freebusy-colors.gif
new file mode 100644
index 0000000..699f4b9
Binary files /dev/null and b/plugins/calendar/skins/classic/images/freebusy-colors.gif differ
diff --git a/plugins/calendar/skins/classic/images/freebusy-colors.png b/plugins/calendar/skins/classic/images/freebusy-colors.png
new file mode 100644
index 0000000..ca37cd0
Binary files /dev/null and b/plugins/calendar/skins/classic/images/freebusy-colors.png differ
diff --git a/plugins/calendar/skins/classic/images/invitation.png b/plugins/calendar/skins/classic/images/invitation.png
new file mode 100644
index 0000000..f3df83a
Binary files /dev/null and b/plugins/calendar/skins/classic/images/invitation.png differ
diff --git a/plugins/calendar/skins/classic/images/listheader.gif b/plugins/calendar/skins/classic/images/listheader.gif
new file mode 100644
index 0000000..bf77a11
Binary files /dev/null and b/plugins/calendar/skins/classic/images/listheader.gif differ
diff --git a/plugins/calendar/skins/classic/images/loading_blue.gif b/plugins/calendar/skins/classic/images/loading_blue.gif
new file mode 100644
index 0000000..2ea6b19
Binary files /dev/null and b/plugins/calendar/skins/classic/images/loading_blue.gif differ
diff --git a/plugins/calendar/skins/classic/images/minicolors-all.png b/plugins/calendar/skins/classic/images/minicolors-all.png
new file mode 100644
index 0000000..001ed88
Binary files /dev/null and b/plugins/calendar/skins/classic/images/minicolors-all.png differ
diff --git a/plugins/calendar/skins/classic/images/minicolors-handles.gif b/plugins/calendar/skins/classic/images/minicolors-handles.gif
new file mode 100644
index 0000000..9aa9f75
Binary files /dev/null and b/plugins/calendar/skins/classic/images/minicolors-handles.gif differ
diff --git a/plugins/calendar/skins/classic/images/preview.png b/plugins/calendar/skins/classic/images/preview.png
new file mode 100644
index 0000000..75f43aa
Binary files /dev/null and b/plugins/calendar/skins/classic/images/preview.png differ
diff --git a/plugins/calendar/skins/classic/images/print.png b/plugins/calendar/skins/classic/images/print.png
new file mode 100644
index 0000000..52dd67e
Binary files /dev/null and b/plugins/calendar/skins/classic/images/print.png differ
diff --git a/plugins/calendar/skins/classic/images/spacer.gif b/plugins/calendar/skins/classic/images/spacer.gif
new file mode 100644
index 0000000..c749aaf
Binary files /dev/null and b/plugins/calendar/skins/classic/images/spacer.gif differ
diff --git a/plugins/calendar/skins/classic/images/toggle.gif b/plugins/calendar/skins/classic/images/toggle.gif
new file mode 100644
index 0000000..d3be86f
Binary files /dev/null and b/plugins/calendar/skins/classic/images/toggle.gif differ
diff --git a/plugins/calendar/skins/classic/images/toolbar.gif b/plugins/calendar/skins/classic/images/toolbar.gif
new file mode 100644
index 0000000..2cf2693
Binary files /dev/null and b/plugins/calendar/skins/classic/images/toolbar.gif differ
diff --git a/plugins/calendar/skins/classic/images/toolbar.png b/plugins/calendar/skins/classic/images/toolbar.png
new file mode 100644
index 0000000..94beddb
Binary files /dev/null and b/plugins/calendar/skins/classic/images/toolbar.png differ
diff --git a/plugins/calendar/skins/classic/jquery.miniColors.css b/plugins/calendar/skins/classic/jquery.miniColors.css
new file mode 100644
index 0000000..dc7c4a7
--- /dev/null
+++ b/plugins/calendar/skins/classic/jquery.miniColors.css
@@ -0,0 +1,106 @@
+.miniColors-trigger {
+	height: 22px;
+	width: 22px;
+	background: url('images/minicolors-all.png') -170px 0 no-repeat;
+	vertical-align: middle;
+	margin: 0 .25em;
+	display: inline-block;
+	outline: none;
+}
+
+.miniColors-selector {
+	position: absolute;
+	width: 175px;
+	height: 150px;
+	background: #FFF;
+	border: solid 1px #BBB;
+	-moz-box-shadow: 0 0 6px rgba(0, 0, 0, .25);
+	-webkit-box-shadow: 0 0 6px rgba(0, 0, 0, .25);
+	box-shadow: 0 0 6px rgba(0, 0, 0, .25);
+	-moz-border-radius: 5px;
+	-webkit-border-radius: 5px;
+	border-radius: 5px;
+	padding: 5px;
+	z-index: 999999;
+}
+
+.miniColors-selector.black {
+	background: #000;
+	border-color: #000;
+}
+
+.miniColors-colors {
+	position: absolute;
+	top: 5px;
+	left: 5px;
+	width: 150px;
+	height: 150px;
+	background: url('images/minicolors-all.png') top left no-repeat;
+	cursor: crosshair;
+}
+
+.miniColors-hues {
+	position: absolute;
+	top: 5px;
+	left: 160px;
+	width: 20px;
+	height: 150px;
+	background: url('images/minicolors-all.png') -150px 0 no-repeat;
+	cursor: crosshair;
+}
+
+.miniColors-colorPicker {
+	position: absolute;
+	width: 11px;
+	height: 11px;
+	background: url('images/minicolors-all.png') -170px -28px no-repeat;
+}
+
+.miniColors-huePicker {
+	position: absolute;
+	left: -3px;
+	width: 26px;
+	height: 3px;
+	background: url('images/minicolors-all.png') -170px -24px no-repeat;
+	overflow: hidden;
+}
+
+.miniColors-presets {
+	position: absolute;
+	left: 185px;
+	top: 5px;
+	width: 60px;
+}
+
+.miniColors-colorPreset {
+	float: left;
+	width: 18px;
+	height: 15px;
+	margin: 2px;
+	border: 1px solid #333;
+	cursor: pointer;
+}
+
+.miniColors-colorPreset-active {
+	border: 2px dotted #666;
+	margin: 1px;
+}
+
+/* Hacks for IE6/7 */
+
+* html .miniColors-colors {
+	background-image: none;
+	filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='plugins/calendar/skins/default/images/minicolors-all.png', sizingMethod='crop');
+}
+
+* html .miniColors-colorPicker {
+	background: url('images/minicolors-handles.gif') 0 -28px no-repeat;
+}
+
+* html .miniColors-huePicker {
+	background: url('images/minicolors-handles.gif') 0 -24px no-repeat;
+}
+
+* html .miniColors-trigger {
+	background: url('images/minicolors-handles.gif') 0 0 no-repeat;
+}
diff --git a/plugins/calendar/skins/classic/print.css b/plugins/calendar/skins/classic/print.css
new file mode 100644
index 0000000..3c9bd71
--- /dev/null
+++ b/plugins/calendar/skins/classic/print.css
@@ -0,0 +1,208 @@
+/*** Printing styles for Calendar plugin ***/
+
+body {
+	margin: 0;
+	color: #000;
+	background: #fff;
+}
+
+body, td, th, div, p, h3, select, input, textarea {
+	font-family: "Lucida Grande", Verdana, Arial, Helvetica, sans-serif;
+	font-size: 8pt;
+}
+
+#calendar {
+	position: relative;
+	top: 0;
+	left: 0;
+	height: auto;
+	margin: 5em auto 0 auto;
+	overflow: visible;
+}
+
+#calendar .fc-header-right {
+	padding-right: 0;
+}
+
+#printconfig {
+	position: fixed;
+	top: 0;
+	left: 0;
+	width: 100%;
+	z-index: 10000;
+	padding: 0.5em;
+	background: #ebebeb;
+	border-bottom: 1px solid #999;
+	box-shadow: 0 3px 4px #ccc;
+	-moz-box-shadow: 0 3px 4px #ccc;
+	-webkit-box-shadow: 0 3px 4px #ccc;
+}
+
+#printconfig .prop {
+	padding-right: 2em;
+}
+
+#message {
+	position: absolute;
+	top: 5.5em;
+	left: 1em;
+}
+
+#message div.loading {
+	color: #666;
+	font-style: italic;
+}
+
+#calendarlist {
+	list-style-type: square;
+	margin: 2em 0;
+	padding-left: 1em;
+}
+
+#calendarlist li {
+	float: left;
+	padding-left: 0;
+	padding-right: 3em;
+	margin-left: 0;
+	font-weight: bold;
+}
+
+#calendarlist input {
+	display: none;
+}
+
+.calwidth {
+	width: 700px;
+	margin: 0 auto;
+}
+
+.rightalign {
+	float: right;
+	padding-top: 0.3em;
+}
+
+ at media print {
+	.noprint,
+	.fc-header-right span {
+		display: none;
+	}
+	
+	#calendar {
+		margin-top: 0;
+	}
+}
+
+/* fullcalendar style overrides */
+
+.fc-view {
+	overflow: visible;
+}
+
+.fc-event-skin,
+.fc-event-inner .fc-event-skin {
+	color: black;
+	background-color: #fff !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-agenda-slots td div {
+	height: 1.4em;
+}
+
+.fc-widget-header,
+.fc-mon, .fc-tue, .fc-wed, .fc-thu, .fc-fri {
+	background-color: #fff;
+}
+
+.fc-widget-header, .fc-widget-content {
+	border-color: #ccc;
+}
+
+.fc-icon-alarms,
+.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-view-list, .fc-view-table {
+	border: 0;
+}
+
+.fc-view-list div.fc-list-header,
+.fc-view-table td.fc-list-header {
+	padding: 0.3em;
+	background: #fff;
+	font-weight: bold;
+	font-size: 1.2em;
+	color: #333;
+	border-color: #333;
+	border-style: solid;
+	border-width: 1px 0;
+	filter: none;
+}
+
+.fc-list-section .fc-event {
+	cursor: auto;
+}
+
+.fc-view-table tr.fc-event td,
+.fc-view-table tr.fc-event td.fc-event-handle {
+	border-color: #999;
+	padding-top: 0.5em;
+	padding-bottom: 0.5em;
+}
+
+.fc-view-table tr.fc-last td {
+	border: 0;
+}
+
+.fc-view-table tr.fc-event .fc-event-description {
+	padding-left: 2em;
+	padding-top: 0em;
+}
+
+.fc-event-vert .fc-event-description {
+	font-size: 90%;
+	font-style: italic;
+}
+
+
+.fc-view-table col.fc-event-location {
+	width: 20%;
+}
diff --git a/plugins/calendar/skins/classic/print.iehacks.css b/plugins/calendar/skins/classic/print.iehacks.css
new file mode 100644
index 0000000..986f004
--- /dev/null
+++ b/plugins/calendar/skins/classic/print.iehacks.css
@@ -0,0 +1,25 @@
+/* CSS hacks for IE 6/7 */
+
+#calendar {
+	top: 5em;
+}
+
+.calwidth {
+	width: 172mm;
+}
+
+.fc-header-title h2 {
+	font-size: 16px;
+}
+
+#calendarlist li {
+	float: none;
+	padding: 0;
+	margin-left: 1em;
+}
+
+ at media print {
+	#calendar {
+		top: 0;
+	}
+}
\ No newline at end of file
diff --git a/plugins/calendar/skins/classic/templates/attachment.html b/plugins/calendar/skins/classic/templates/attachment.html
new file mode 100644
index 0000000..34d4da6
--- /dev/null
+++ b/plugins/calendar/skins/classic/templates/attachment.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title><roundcube:object name="pagetitle" /></title>
+<roundcube:include file="/includes/links.html" />
+</head>
+<body class="extwin">
+
+<roundcube:include file="/includes/header.html" />
+
+<div id="partheader">
+<roundcube:object name="plugin.attachmentcontrols" cellpadding="2" cellspacing="0" />
+
+<div style="position:absolute; top:2px; right:0; width:12em; text-align:right">
+  [<a href="#close" class="closelink" onclick="self.close()"><roundcube:label name="close" /></a>]
+</div>
+</div>
+
+
+<div id="attachmentcontainer">
+<roundcube:object name="plugin.attachmentframe" id="attachmentframe" width="100%" height="100%" />
+</div>
+
+</body>
+</html>
+
diff --git a/plugins/calendar/skins/classic/templates/calendar.html b/plugins/calendar/skins/classic/templates/calendar.html
new file mode 100644
index 0000000..a22056d
--- /dev/null
+++ b/plugins/calendar/skins/classic/templates/calendar.html
@@ -0,0 +1,201 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title><roundcube:object name="pagetitle" /></title>
+<roundcube:include file="/includes/links.html" />
+<script type="text/javascript" src="/functions.js"></script>
+<!--[if lte IE 7]><link rel="stylesheet" type="text/css" href="./plugins/calendar/skins/default/iehacks.css" /><![endif]-->
+</head>
+<body class="calendarmain">
+
+<roundcube:include file="/includes/taskbar.html" />
+<roundcube:include file="/includes/header.html" />
+
+<div id="main">
+  <div id="calendarsidebar">
+    <div id="datepicker"></div>
+    <div id="calendars" style="visibility:hidden">
+      <div class="boxtitle"><roundcube:label name="calendar.calendars" /></div>
+      <div class="boxlistcontent">
+      <roundcube:object name="plugin.calendar_list" id="calendarslist" />
+      </div>
+      <div class="boxfooter">
+        <roundcube:button command="calendar-create" type="link" title="calendar.createcalendar" class="buttonPas addgroup" classAct="button addgroup" content=" " />
+        <roundcube:button name="calendaroptionslink" id="calendaroptionslink" type="link" title="calendaractions" class="button groupactions" onclick="rcmail_ui.show_popup('calendaroptions');return false" content=" " />
+      </div>
+    </div>
+  </div>
+  <div id="calendarsidebartoggle"></div>
+  <div id="calendar">
+    <roundcube:object name="plugin.angenda_options" class="boxfooter" id="agendaoptions" />
+  </div>
+</div>
+
+<div id="calendaroptionsmenu" class="popupmenu">
+  <ul>
+    <li><roundcube:button command="calendar-edit" label="calendar.edit" classAct="active" /></li>
+    <li><roundcube:button command="calendar-remove" label="calendar.remove" classAct="active" /></li>
+    <li><roundcube:button command="events-import" label="calendar.importevents" classAct="active" /></li>
+    <li><roundcube:button command="calendar-showurl" label="calendar.showurl" classAct="active" /></li>
+    <roundcube:if condition="env:calendar_driver == 'kolab'" />
+    <li class="separator_above"><roundcube:button command="folders" task="settings" type="link" label="managefolders" classAct="active" /></li>
+    <roundcube:endif />
+  </ul>
+</div>
+
+<div id="eventshow" class="uidialog">
+  <h1 id="event-title">Event Title</h1>
+  <div class="event-section" id="event-location">Location</div>
+  <div class="event-section" id="event-date">From-To</div>
+  <div class="event-section" id="event-description">
+    <h5 class="label"><roundcube:label name="calendar.description" /></h5>
+    <div class="event-text"></div>
+  </div>
+  <div class="event-section" id="event-repeat">
+    <h5 class="label"><roundcube:label name="calendar.repeat" /></h5>
+    <div class="event-text"></div>
+  </div>
+  <div class="event-section" id="event-alarm">
+    <h5 class="label"><roundcube:label name="calendar.alarms" /></h5>
+    <div class="event-text"></div>
+  </div>
+  <div class="event-section" id="event-attendees">
+    <h5 class="label"><roundcube:label name="calendar.tabattendees" /></h5>
+    <div class="event-text"></div>
+  </div>
+  <div class="event-line" id="event-calendar">
+    <label><roundcube:label name="calendar.calendar" /></label>
+    <span class="event-text">Default</span>
+  </div>
+  <div class="event-line" id="event-category">
+    <label><roundcube:label name="calendar.category" /></label>
+    <span class="event-text"></span>
+  </div>
+  <div class="event-line" id="event-free-busy">
+    <label><roundcube:label name="calendar.freebusy" /></label>
+    <span class="event-text"></span>
+  </div>
+  <div class="event-line" id="event-priority">
+    <label><roundcube:label name="calendar.priority" /></label>
+    <span class="event-text"></span>
+  </div>
+  <div class="event-line" id="event-sensitivity">
+    <label><roundcube:label name="calendar.sensitivity" /></label>
+    <span class="event-text"></span>
+  </div>
+  <div class="event-section" id="event-attachments">
+    <label><roundcube:label name="attachments" /></label>
+    <div class="event-text attachments-list"></div>
+  </div>
+  
+  <roundcube:object name="plugin.event_rsvp_buttons" id="event-rsvp" style="display:none" />
+</div>
+
+<roundcube:include file="/templates/eventedit.html" />
+
+<div id="eventfreebusy" class="uidialog">
+  <roundcube:object name="plugin.attendees_freebusy_table" id="attendees-freebusy-table" cellspacing="0" cellpadding="0" border="0" />
+  
+  <div class="schedule-options">
+     
+    <div class="schedule-buttons">
+      <button id="shedule-freebusy-prev" title="<roundcube:label name='previouspage' />">◄</button><button id="shedule-freebusy-next" title="<roundcube:label name='nextpage' />">►</button>
+    </div>
+  </div>
+  
+  <div style="float:left; width:28em">
+    <div class="form-section">
+      <label for="schedule-startdate"><roundcube:label name="calendar.start" /></label>
+      <input type="text" name="startdate" size="10" id="schedule-startdate" disabled="true" />  
+      <input type="text" name="starttime" size="6" id="schedule-starttime" disabled="true" />
+    </div>
+    <div class="form-section">
+      <label for="schedule-enddate"><roundcube:label name="calendar.end" /></label>
+      <input type="text" name="enddate" size="10" id="schedule-enddate" disabled="true" />  
+      <input type="text" name="endtime" size="6"  id="schedule-endtime" disabled="true" />
+    </div>
+  </div>
+  <div style="float:left">
+    <div class="schedule-find-buttons">
+      <button id="shedule-find-prev">◄ <roundcube:label name="calendar.prevslot" /></button>
+      <button id="shedule-find-next"><roundcube:label name="calendar.nextslot" /> ►</button>
+    </div>
+    <div class="schedule-options">
+      <label><input type="checkbox" id="schedule-freebusy-workinghours" value="1" /><roundcube:label name="calendar.onlyworkinghours" /></label>
+    </div>
+  </div>
+  <br style="clear:both;" />
+  
+  <roundcube:include file="/templates/freebusylegend.html" />
+  <div class="attendees-list">
+    <span class="attendee organizer"><roundcube:label name="calendar.roleorganizer" /></span>
+    <span class="attendee req-participant"><roundcube:label name="calendar.rolerequired" /></span>
+    <span class="attendee opt-participant"><roundcube:label name="calendar.roleoptional" /></span>
+    <span class="attendee chair"><roundcube:label name="calendar.roleresource" /></span>
+  </div>
+</div>
+
+<div id="calendarform" class="uidialog">
+  <roundcube:label name="loading" />
+</div>
+
+<div id="eventsimport" class="uidialog">
+  <roundcube:object name="plugin.events_import_form" id="events-import-form" uploadFieldSize="30" />
+</div>
+
+<div id="calendarurlbox" class="uidialog">
+  <p><roundcube:label name="calendar.showurldescription" /></p>
+  <textarea id="calfeedurl" rows="2" readonly="readonly"></textarea>
+</div>
+
+<div id="alarm-snooze-dropdown" class="popupmenu">
+  <roundcube:object name="plugin.snooze_select" type="ul" />
+</div>
+
+<div id="calendartoolbar">
+  <roundcube:button command="addevent" type="link" class="buttonPas addevent" classAct="button addevent" classSel="button addeventSel" title="calendar.new_event" content=" " />
+  <roundcube:button command="print" type="link" class="buttonPas print" classAct="button print" classSel="button printSel" title="calendar.print" content=" " />
+  <roundcube:button command="export" type="link" class="buttonPas export" classAct="button export" classSel="button exportSel" title="calendar.export" content=" " />
+  <roundcube:container name="toolbar" id="calendartoolbar" />
+</div>
+
+<div id="quicksearchbar">
+<roundcube:button name="searchmenulink" id="searchmenulink" image="/images/icons/glass.png" />
+<roundcube:object name="plugin.searchform" id="quicksearchbox" />
+<roundcube:button command="reset-search" id="searchreset" image="/images/icons/reset.gif" title="resetsearch" />
+</div>
+
+<roundcube:object name="plugin.calendar_css" />
+
+<script type="text/javascript">
+
+// use skin functions to handle popup-menus
+rcube_init_mail_ui();
+rcmail_ui.popups.calendaroptions = { id:'calendaroptionsmenu', above:1, obj:$('#calendaroptionsmenu') };
+
+$(document).ready(function(e){
+  // initialize sidebar toggle
+  $('#calendarsidebartoggle').click(function() {
+    var width = $(this).data('sidebarwidth');
+    var offset = $(this).data('offset');
+    var $sidebar = $('#calendarsidebar'), time = 250;
+    
+    if ($sidebar.is(':visible')) {
+      $sidebar.animate({ left:'-'+(width+10)+'px' }, time, function(){ $('#calendarsidebar').hide(); });
+      $(this).animate({ left:'8px'}, time, function(){ $('#calendarsidebartoggle').addClass('sidebarclosed') });
+      $('#calendar').animate({ left:'20px'}, time, function(){ $(this).fullCalendar('render'); });
+    }
+    else {
+      $sidebar.show().animate({ left:'10px' }, time);
+      $(this).animate({ left:offset+'px'}, time, function(){ $('#calendarsidebartoggle').removeClass('sidebarclosed'); });
+      $('#calendar').animate({ left:(width+16)+'px'}, time, function(){ $(this).fullCalendar('render'); });
+    }
+  })
+  .data('offset', $('#calendarsidebartoggle').position().left)
+  .data('sidebarwidth', $('#calendarsidebar').width() + $('#calendarsidebar').position().left);
+});
+
+</script>
+
+</body>
+</html>
diff --git a/plugins/calendar/skins/classic/templates/eventedit.html b/plugins/calendar/skins/classic/templates/eventedit.html
new file mode 100644
index 0000000..3548478
--- /dev/null
+++ b/plugins/calendar/skins/classic/templates/eventedit.html
@@ -0,0 +1,103 @@
+<div id="eventedit" class="uidialog">
+  <form id="eventtabs" action="#" method="post" enctype="multipart/form-data">
+    <ul>
+      <li><a href="#event-tab-1"><roundcube:label name="calendar.tabsummary" /></a></li>
+      <li id="edit-tab-recurrence"><a href="#event-tab-2"><roundcube:label name="calendar.tabrecurrence" /></a></li>
+      <li id="edit-tab-attendees"><a href="#event-tab-3"><roundcube:label name="calendar.tabattendees" /></a></li>
+      <li id="edit-tab-attachments"><a href="#event-tab-4"><roundcube:label name="calendar.tabattachments" /></a></li>
+    </ul>
+    <!-- basic info -->
+    <div id="event-tab-1">
+      <div class="event-section">
+        <label for="edit-title"><roundcube:label name="calendar.title" /></label>
+        <br />
+        <input type="text" class="text" name="title" id="edit-title" size="40" />
+      </div>
+      <div class="event-section">
+        <label for="edit-location"><roundcube:label name="calendar.location" /></label>
+        <br />
+        <input type="text" class="text" name="location" id="edit-location" size="40" />
+      </div>
+      <div class="event-section">
+        <label for="edit-description"><roundcube:label name="calendar.description" /></label>
+        <br />
+        <textarea name="description" id="edit-description" class="text" rows="5" cols="40"></textarea>
+      </div>
+      <div class="event-section">
+        <label style="float:right;padding-right:0.5em"><input type="checkbox" name="allday" id="edit-allday" value="1" /><roundcube:label name="calendar.all-day" /></label>
+        <label for="edit-startdate"><roundcube:label name="calendar.start" /></label>
+        <input type="text" name="startdate" size="10" id="edit-startdate" />  
+        <input type="text" name="starttime" size="6" id="edit-starttime" />
+      </div>
+      <div class="event-section">
+        <label for="edit-enddate"><roundcube:label name="calendar.end" /></label>
+        <input type="text" name="enddate" size="10" id="edit-enddate" />  
+        <input type="text" name="endtime" size="6"  id="edit-endtime" />
+      </div>
+      <div class="event-section" id="edit-alarms">
+        <label for="edit-alarm"><roundcube:label name="calendar.alarms" /></label>
+        <roundcube:object name="plugin.alarm_select" />
+      </div>
+      <div class="event-section" id="calendar-select">
+        <label for="edit-calendar"><roundcube:label name="calendar.calendar" /></label>
+        <roundcube:object name="plugin.calendar_select" id="edit-calendar" />
+      </div>
+      <div class="event-section">
+        <label for="edit-categories"><roundcube:label name="calendar.category" /></label>
+        <roundcube:object name="plugin.category_select" id="edit-categories" />
+      </div>
+      <div class="event-section">
+        <label for="edit-free-busy"><roundcube:label name="calendar.freebusy" /></label>
+        <roundcube:object name="plugin.freebusy_select" id="edit-free-busy" />
+      </div>
+      <div class="event-section">
+        <label for="edit-priority"><roundcube:label name="calendar.priority" /></label>
+        <roundcube:object name="plugin.priority_select" id="edit-priority" />
+      </div>
+      <div class="event-section">
+        <label for="edit-sensitivity"><roundcube:label name="calendar.sensitivity" /></label>
+        <roundcube:object name="plugin.sensitivity_select" id="edit-sensitivity" />
+      </div>
+    </div>
+    <!-- recurrence settings -->
+    <div id="event-tab-2">
+      <div class="event-section border-after">
+        <roundcube:object name="plugin.recurrence_form" part="frequency" />
+      </div>
+      <div class="recurrence-form border-after" id="recurrence-form-daily">
+        <roundcube:object name="plugin.recurrence_form" part="daily" class="event-section" />
+      </div>
+      <div class="recurrence-form border-after" id="recurrence-form-weekly">
+        <roundcube:object name="plugin.recurrence_form" part="weekly" class="event-section" />
+      </div>
+      <div class="recurrence-form border-after" id="recurrence-form-monthly">
+        <roundcube:object name="plugin.recurrence_form" part="monthly" class="event-section" />
+      </div>
+      <div class="recurrence-form border-after" id="recurrence-form-yearly">
+        <roundcube:object name="plugin.recurrence_form" part="yearly" class="event-section" />
+      </div>
+      <div class="recurrence-form" id="recurrence-form-until">
+        <roundcube:object name="plugin.recurrence_form" part="until" class="event-section" />
+      </div>
+    </div>
+    <!-- attendees list -->
+    <div id="event-tab-3">
+      <roundcube:object name="plugin.attendees_list" id="edit-attendees-table" cellspacing="0" cellpadding="0" border="0" />
+      <roundcube:object name="plugin.attendees_form" id="edit-attendees-form" />
+      <roundcube:include file="/templates/freebusylegend.html" />
+    </div>
+    <!-- attachments list (with upload form) -->
+    <div id="event-tab-4">
+      <div id="edit-attachments" class="attachments-list">
+        <roundcube:object name="plugin.attachments_list" id="attachmentlist" deleteIcon="/images/icons/delete.png" cancelIcon="/images/icons/delete.png" loadingIcon="/images/display/loading_blue.gif" />
+      </div>
+      <div id="edit-attachments-form">
+        <roundcube:object name="plugin.attachments_form" id="calendar-attachment-form" attachmentFieldSize="30" />
+      </div>
+    </div>
+  </form>
+
+  <roundcube:object name="plugin.edit_attendees_notify" id="edit-attendees-notify" class="event-dialog-message" style="display:none" />
+  <roundcube:object name="plugin.edit_recurring_warning" class="event-dialog-message edit-recurring-warning" style="display:none" />
+  <div id="edit-localchanges-warning" class="event-dialog-message" style="display:none"><roundcube:label name="calendar.localchangeswarning" /></div>
+</div>
\ No newline at end of file
diff --git a/plugins/calendar/skins/classic/templates/freebusylegend.html b/plugins/calendar/skins/classic/templates/freebusylegend.html
new file mode 100644
index 0000000..5cc01a1
--- /dev/null
+++ b/plugins/calendar/skins/classic/templates/freebusylegend.html
@@ -0,0 +1,7 @@
+  <div id="edit-attendees-legend" class="availability">
+    <span class="legend"><img class="availabilityicon free" src="./program/blank.gif" /> <roundcube:label name="calendar.availfree" /></span>
+    <span class="legend"><img class="availabilityicon busy" src="./program/blank.gif" /> <roundcube:label name="calendar.availbusy" /></span>
+    <span class="legend"><img class="availabilityicon tentative" src="./program/blank.gif" /> <roundcube:label name="calendar.availtentative" /></span>
+    <span class="legend"><img class="availabilityicon out-of-office" src="./program/blank.gif" /> <roundcube:label name="calendar.availoutofoffice" /></span>
+    <span class="legend"><img class="availabilityicon unknown" src="./program/blank.gif" /> <roundcube:label name="calendar.availunknown" /></span>
+  </div>
diff --git a/plugins/calendar/skins/classic/templates/itipattend.html b/plugins/calendar/skins/classic/templates/itipattend.html
new file mode 100644
index 0000000..84968b5
--- /dev/null
+++ b/plugins/calendar/skins/classic/templates/itipattend.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title><roundcube:object name="pagetitle" /></title>
+<roundcube:include file="/includes/links.html" />
+</head>
+<body class="calendaritipattend">
+
+<roundcube:object name="logo" src="/images/roundcube_logo.png" id="logo" border="0" style="margin:0 11px" />
+
+<roundcube:object name="message" id="message" />
+
+<div class="centerbox">
+	<roundcube:object name="plugin.event_inviteform" />
+	<roundcube:object name="plugin.event_invitebox" class="calendar-invitebox" />
+	<roundcube:object name="plugin.event_rsvp_buttons" type="submit" iname="rsvp" id="event-rsvp" />
+	</form>
+</div>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/plugins/calendar/skins/classic/templates/kolabacl.html b/plugins/calendar/skins/classic/templates/kolabacl.html
new file mode 100644
index 0000000..668a670
--- /dev/null
+++ b/plugins/calendar/skins/classic/templates/kolabacl.html
@@ -0,0 +1,13 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title><roundcube:object name="pagetitle" /></title>
+<roundcube:include file="/includes/links.html" />
+<script type="text/javascript" src="/functions.js"></script>
+</head>
+<body class="iframe" style="background:#fff; margin:0">
+
+<roundcube:object name="folderacl" />
+
+</body>
+</html>
diff --git a/plugins/calendar/skins/classic/templates/kolabform.html b/plugins/calendar/skins/classic/templates/kolabform.html
new file mode 100644
index 0000000..a74481a
--- /dev/null
+++ b/plugins/calendar/skins/classic/templates/kolabform.html
@@ -0,0 +1,7 @@
+<div id="calendar-kolabform">
+  <roundcube:object name="calendarform" />
+</div>
+<script type="text/javascript">rcube_init_tabs('calendar-kolabform');</script>
+<style type="text/css">
+#calendarpropform { min-width:680px }
+</style>
\ No newline at end of file
diff --git a/plugins/calendar/skins/classic/templates/print.html b/plugins/calendar/skins/classic/templates/print.html
new file mode 100644
index 0000000..3fc85f3
--- /dev/null
+++ b/plugins/calendar/skins/classic/templates/print.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title><roundcube:object name="pagetitle" /></title>
+</head>
+<body class="calendarprint">
+
+<div id="printconfig" class="noprint">
+  <div class="calwidth">
+    <a href="#close" onclick="window.close()" class="rightalign"><roundcube:label name="close" /></a>
+    <span class="prop"><input type="button" id="printme" value="<roundcube:label name='print' />" onclick="window.print()"></span>
+    <span class="prop"><label><input type="checkbox" id="propdescription" checked="checked" /> <roundcube:label name="calendar.printdescriptions" /></label></span>
+  </div>
+</div>
+
+<roundcube:object name="message" id="message" class="noprint" />
+
+<div id="calendar" class="calwidth"></div>
+
+<div class="calwidth">
+  <roundcube:object name="plugin.calendar_list" activeonly="true" id="calendarlist" />
+</div>
+
+<roundcube:object name="plugin.calendar_css" printmode="true" />
+
+<!--[if lte IE 7]><link rel="stylesheet" type="text/css" href="./plugins/calendar/skins/default/print.iehacks.css" /><![endif]-->
+</body>
+</html>
\ No newline at end of file
diff --git a/plugins/calendar/skins/default/README b/plugins/calendar/skins/default/README
deleted file mode 100644
index ccd513a..0000000
--- a/plugins/calendar/skins/default/README
+++ /dev/null
@@ -1,5 +0,0 @@
-Icons by Fugue Icons <http://p.yusukekamiyamane.com/>
-
-Copyright (C) 2010 Yusuke Kamiyamane. All rights reserved.
-The icons are licensed under a Creative Commons Attribution
-3.0 license. <http://creativecommons.org/licenses/by/3.0/>
diff --git a/plugins/calendar/skins/default/calendar.css b/plugins/calendar/skins/default/calendar.css
deleted file mode 100644
index 21dcb1b..0000000
--- a/plugins/calendar/skins/default/calendar.css
+++ /dev/null
@@ -1,1268 +0,0 @@
-/*** Style for Calendar plugin ***/
-
-body.calendarmain {
-	overflow: hidden;
-}
-
-#taskbar a.button-calendar {
-	background: url(images/calendar.png) 0px 1px no-repeat;
-}
-
-/* hack for IE 6/7 */
-* html #taskbar a.button-calendar {
-	background-image: url(images/calendar.gif);
-}
-
-#main {
-	position: absolute;
-	clear: both;
-	top: 90px;
-	left: 0;
-	right: 0;
-	bottom: 10px;
-}
-
-#calendarsidebar {
-	position: absolute;
-	top: 37px;
-	left: 10px;
-	bottom: 0;
-	width: 230px;
-}
-
-#datepicker {
-	width: 100%;
-}
-
-#datepicker .ui-datepicker {
-	width: 97% !important;
-	box-shadow: none;
-	-moz-box-shadow: none;
-	-webkit-box-shadow: none;
-}
-
-#datepicker .ui-datepicker-activerange a {
-	border-color: #c33;
-	color: #a22;
-}
-
-#datepicker .ui-datepicker-activerange a.ui-state-active {
-	color: #fff;
-}
-
-#datepicker .ui-priority-secondary {
-	opacity: 0.4;
-}
-
-#datepicker td.ui-datepicker-week-col {
-	cursor: pointer;
-}
-
-#calendarsidebartoggle {
-	position: absolute;
-	left: 244px;
-	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;
-}
-
-#calendarsidebartoggle:hover {
-	background-color: #ddd;
-}
-
-#calendar {
-	position: absolute;
-	top: 0;
-	left: 256px;
-	right: 10px;
-	bottom: 0;
-}
-
-#print {
-	width: 680px;
-}
-
-pre {
- font-family: "Lucida Grande", Verdana, Arial, Helvetica, sans-serif;
-}
-
-#calendars {
-	position: absolute;
-	top: 220px;
-	left: 0;
-	bottom: 0;
-	right: 0;
-	background-color: #F9F9F9;
-	border: 1px solid #999999;
-	overflow: hidden;
-}
-
-#calendarslist {
-	list-style: none;
-	margin: 0;
-	padding: 0;
-}
-
-#attachmentlist li,
-#calendarslist li {
-	margin: 0;
-	padding: 1px;
-	display: block;
-	background: #fff;
-	border-bottom: 1px solid #EBEBEB;
-	white-space: nowrap;
-}
-
-#calendarslist li label {
-	display: block;
-}
-
-#calendarslist li span.handle {
-	cursor: default;
-	background: url(images/calendars.png) 0 -2px no-repeat;
-	display: inline-block;
-	width: 20px;
-}
-
-#calendarslist li input {
-	margin-right: 5px;
-}
-
-#calendarslist li.selected {
-	background-color: #ccc;
-	border-bottom: 1px solid #bbb;
-}
-
-#calendarslist li.selected span {
-	font-weight: bold;
-}
-
-#calendarslist li.readonly span.handle {
-    background-position: 0 -20px;
-}
-
-#calendarslist li.other span.handle {
-    background-position: 0 -38px;
-}
-
-#calendarslist li.other.readonly span.handle {
-    background-position: 0 -56px;
-}
-
-#calendarslist li.shared span.handle {
-    background-position: 0 -74px;
-}
-
-#calendarslist li.shared.readonly span.handle {
-    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: 45px;
-	left: 256px;
-	height: 35px;
-}
-
-#calendartoolbar a {
-	padding-right: 10px;
-}
-
-#calendartoolbar a.button,
-#calendartoolbar a.buttonPas {
-	display: block;
-	float: left;
-	width: 32px;
-	height: 32px;
-	padding: 0;
-	margin-right: 10px;
-	overflow: hidden;
-	background: url(images/toolbar.png) 0 0 no-repeat transparent;
-	opacity: 0.99; /* this is needed to make buttons appear correctly in Chrome */
-}
-
-#calendartoolbar a.buttonPas {
-	opacity: 0.35;
-}
-
-#calendartoolbar a.addeventSel {
-	background-position: 0 -32px;
-}
-
-#calendartoolbar a.delete {
-  background-position: -32px 0;
-}
-
-#calendartoolbar a.deleteSel {
-  background-position: -32px -32px;
-}
-
-#calendartoolbar a.print {
-  background-position: -64px 0;
-}
-
-#calendartoolbar a.printSel {
-  background-position: -64px -32px;
-}
-
-#calendartoolbar a.export {
-	background-position: -128px 0;
-}
-
-#calendartoolbar a.exportSel {
-	background-position: -128px -32px;
-}
-
-#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: 20px;
-	margin: 0.1em 0 0.4em 0;
-}
-
-#eventshow label,
-#eventshow h5.label {
-	font-weight: normal;
-	font-size: 0.9em;
-	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;
-	padding: 0.5em 0.1em;
-}
-
-#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 .tabsbar {
-	position: absolute;
-	top: 0;
-}
-
-#eventtabs .ui-tabs-panel {
-	padding: 1em 0.8em;
-	border: 1px solid #aaa;
-	border-width: 0 1px 1px 1px;
-}
-
-#eventtabs .ui-tabs-nav {
-	background: none;
-	padding: 0;
-	border-width: 0 0 1px 0;
-	border-radius: 0;
-}
-
-#eventtabs .border-after {
-	padding-bottom: 0.6em;
-	margin-bottom: 0.6em;
-	border-bottom: 1px solid #999;
-}
-
-#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%;
-	display: table;
-	table-layout: fixed;
-	border-collapse: collapse;
-	border: 1px solid #ccc;
-}
-
-#edit-attendees-table td {
-	padding: 3px;
-	border-bottom: 1px solid #ccc;
-}
-
-#edit-attendees-table td.role {
-	width: 8em;
-}
-
-#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-table thead td {
-	background: url(images/listheader.gif) top left repeat-x #CCC;
-}
-
-#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 {
-	text-align: right;
-	padding-right: 0.5em;
-}
-
-.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;
-	left: 0;
-	right: 0;
-	bottom: 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: 0;
-	overflow: hidden;
-}
-
-.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-mon, .fc-tue, .fc-wed, .fc-thu, .fc-fri {
-	background-color: #fdfdfd;
-}
-
-.fc-widget-header {
-	background-color: #fff;
-}
-
-.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 {
-	background-image: url(images/calendars.png);
-	background-position: 7px -109px;
-	background-repeat: no-repeat;
-}
-
-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/default/fullcalendar.css b/plugins/calendar/skins/default/fullcalendar.css
deleted file mode 100644
index 17f1b37..0000000
--- a/plugins/calendar/skins/default/fullcalendar.css
+++ /dev/null
@@ -1,724 +0,0 @@
-/*
- * FullCalendar v1.5.3-rcube-0.7.1 Stylesheet
- *
- * Copyright (c) 2011 Adam Shaw
- * Copyright (c) 2011, Kolab Systems AG
- * Dual licensed under the MIT and GPL licenses, located in
- * MIT-LICENSE.txt and GPL-LICENSE.txt respectively.
- *
- * Date: Mon Feb 13 23:00:46 2012 +0100
- *
- */
-
-
-.fc {
-	direction: ltr;
-	text-align: left;
-	}
-	
-.fc table {
-	border-collapse: collapse;
-	border-spacing: 0;
-	}
-	
-html .fc,
-.fc table {
-	font-size: 1em;
-	}
-	
-.fc td,
-.fc th {
-	padding: 0;
-	vertical-align: top;
-	}
-
-
-
-/* Header
-------------------------------------------------------------------------*/
-
-.fc-header td {
-	white-space: nowrap;
-	}
-
-.fc-header-left {
-	width: 25%;
-	text-align: left;
-	}
-	
-.fc-header-center {
-	text-align: center;
-	}
-	
-.fc-header-right {
-	width: 25%;
-	text-align: right;
-	}
-	
-.fc-header-title {
-	display: inline-block;
-	vertical-align: top;
-	}
-	
-.fc-header-title h2 {
-	margin-top: 0;
-	white-space: nowrap;
-	}
-	
-.fc .fc-header-space {
-	padding-left: 10px;
-	}
-	
-.fc-header .fc-button {
-	margin-bottom: 1em;
-	vertical-align: top;
-	}
-	
-/* buttons edges butting together */
-
-.fc-header .fc-button {
-	margin-right: -1px;
-	}
-	
-.fc-header .fc-corner-right {
-	margin-right: 1px; /* back to normal */
-	}
-	
-.fc-header .ui-corner-right {
-	margin-right: 0; /* back to normal */
-	}
-	
-/* button layering (for border precedence) */
-	
-.fc-header .fc-state-hover,
-.fc-header .ui-state-hover {
-	z-index: 2;
-	}
-	
-.fc-header .fc-state-down {
-	z-index: 3;
-	}
-
-.fc-header .fc-state-active,
-.fc-header .ui-state-active {
-	z-index: 4;
-	}
-	
-	
-	
-/* Content
-------------------------------------------------------------------------*/
-	
-.fc-content {
-	clear: both;
-	}
-	
-.fc-view {
-	width: 100%; /* needed for view switching (when view is absolute) */
-	overflow: hidden;
-	}
-	
-	
-
-/* Cell Styles
-------------------------------------------------------------------------*/
-
-.fc-widget-header,    /* <th>, usually */
-.fc-widget-content {  /* <td>, usually */
-	border: 1px solid #ccc;
-	}
-	
-.fc-state-highlight { /* <td> today cell */ /* TODO: add .fc-today to <th> */
-	background: #ffc;
-	}
-	
-.fc-cell-overlay { /* semi-transparent rectangle while dragging */
-	background: #9cf;
-	opacity: .2;
-	filter: alpha(opacity=20); /* for IE */
-	}
-	
-
-
-/* Buttons
-------------------------------------------------------------------------*/
-
-.fc-button {
-	position: relative;
-	display: inline-block;
-	cursor: pointer;
-	}
-	
-.fc-state-default { /* non-theme */
-	border-style: solid;
-	border-width: 1px 0;
-	}
-	
-.fc-button-inner {
-	position: relative;
-	float: left;
-	overflow: hidden;
-	}
-	
-.fc-state-default .fc-button-inner { /* non-theme */
-	border-style: solid;
-	border-width: 0 1px;
-	}
-	
-.fc-button-content {
-	position: relative;
-	float: left;
-	height: 1.9em;
-	line-height: 1.9em;
-	padding: 0 .6em;
-	white-space: nowrap;
-	}
-	
-/* icon (for jquery ui) */
-	
-.fc-button-content .fc-icon-wrap {
-	position: relative;
-	float: left;
-	top: 50%;
-	}
-	
-.fc-button-content .ui-icon {
-	position: relative;
-	float: left;
-	margin-top: -50%;
-	*margin-top: 0;
-	*top: -50%;
-	}
-	
-/* gloss effect */
-	
-.fc-state-default .fc-button-effect {
-	position: absolute;
-	top: 50%;
-	left: 0;
-	}
-	
-.fc-state-default .fc-button-effect span {
-	position: absolute;
-	top: -100px;
-	left: 0;
-	width: 500px;
-	height: 100px;
-	border-width: 100px 0 0 1px;
-	border-style: solid;
-	border-color: #fff;
-	background: #444;
-	opacity: .09;
-	filter: alpha(opacity=9);
-	}
-	
-/* button states (determines colors)  */
-	
-.fc-state-default,
-.fc-state-default .fc-button-inner {
-	border-style: solid;
-	border-color: #ccc #bbb #aaa;
-	background: #F3F3F3;
-	color: #000;
-	}
-	
-.fc-state-hover,
-.fc-state-hover .fc-button-inner {
-	border-color: #999;
-	}
-	
-.fc-state-down,
-.fc-state-down .fc-button-inner {
-	border-color: #555;
-	background: #777;
-	}
-	
-.fc-state-active,
-.fc-state-active .fc-button-inner {
-	border-color: #555;
-	background: #777;
-	color: #fff;
-	}
-	
-.fc-state-disabled,
-.fc-state-disabled .fc-button-inner {
-	color: #999;
-	border-color: #ddd;
-	}
-	
-.fc-state-disabled {
-	cursor: default;
-	}
-	
-.fc-state-disabled .fc-button-effect {
-	display: none;
-	}
-	
-	
-
-/* Global Event Styles
-------------------------------------------------------------------------*/
-	 
-.fc-event {
-	border-style: solid;
-	border-width: 0;
-	font-size: .85em;
-	cursor: default;
-	}
-	
-a.fc-event,
-.fc-event-draggable {
-	cursor: pointer;
-	}
-	
-a.fc-event {
-	text-decoration: none;
-	}
-	
-.fc-rtl .fc-event {
-	text-align: right;
-	}
-	
-.fc-event-skin {
-	border-color: #36c;     /* default BORDER color */
-	background-color: #36c; /* default BACKGROUND color */
-	color: #fff;            /* default TEXT color */
-	}
-	
-.fc-event-inner {
-	position: relative;
-	width: 100%;
-	height: 100%;
-	border-style: solid;
-	border-width: 0;
-	overflow: hidden;
-	}
-	
-.fc-event-time,
-.fc-event-title {
-	padding: 0 1px;
-	}
-	
-.fc .ui-resizable-handle { /*** TODO: don't use ui-resizable anymore, change class ***/
-	display: block;
-	position: absolute;
-	z-index: 99999;
-	overflow: hidden; /* hacky spaces (IE6/7) */
-	font-size: 300%;  /* */
-	line-height: 50%; /* */
-	}
-	
-	
-	
-/* Horizontal Events
-------------------------------------------------------------------------*/
-
-.fc-event-hori {
-	border-width: 1px 0;
-	margin-bottom: 1px;
-	}
-	
-/* resizable */
-	
-.fc-event-hori .ui-resizable-e {
-	top: 0           !important; /* importants override pre jquery ui 1.7 styles */
-	right: -3px      !important;
-	width: 7px       !important;
-	height: 100%     !important;
-	cursor: e-resize;
-	}
-	
-.fc-event-hori .ui-resizable-w {
-	top: 0           !important;
-	left: -3px       !important;
-	width: 7px       !important;
-	height: 100%     !important;
-	cursor: w-resize;
-	}
-	
-.fc-event-hori .ui-resizable-handle {
-	_padding-bottom: 14px; /* IE6 had 0 height */
-	}
-	
-	
-	
-/* Fake Rounded Corners (for buttons and events)
-------------------------------------------------------------*/
-	
-.fc-corner-left {
-	margin-left: 1px;
-	}
-	
-.fc-corner-left .fc-button-inner,
-.fc-corner-left .fc-event-inner {
-	margin-left: -1px;
-	}
-	
-.fc-corner-right {
-	margin-right: 1px;
-	}
-	
-.fc-corner-right .fc-button-inner,
-.fc-corner-right .fc-event-inner {
-	margin-right: -1px;
-	}
-	
-.fc-corner-top {
-	margin-top: 1px;
-	}
-	
-.fc-corner-top .fc-event-inner {
-	margin-top: -1px;
-	}
-	
-.fc-corner-bottom {
-	margin-bottom: 1px;
-	}
-	
-.fc-corner-bottom .fc-event-inner {
-	margin-bottom: -1px;
-	}
-	
-	
-	
-/* Fake Rounded Corners SPECIFICALLY FOR EVENTS
------------------------------------------------------------------*/
-	
-.fc-corner-left .fc-event-inner {
-	border-left-width: 1px;
-	}
-	
-.fc-corner-right .fc-event-inner {
-	border-right-width: 1px;
-	}
-	
-.fc-corner-top .fc-event-inner {
-	border-top-width: 1px;
-	}
-	
-.fc-corner-bottom .fc-event-inner {
-	border-bottom-width: 1px;
-	}
-	
-	
-	
-/* Reusable Separate-border Table
-------------------------------------------------------------*/
-
-table.fc-border-separate {
-	border-collapse: separate;
-	}
-	
-.fc-border-separate th,
-.fc-border-separate td {
-	border-width: 1px 0 0 1px;
-	}
-	
-.fc-border-separate th.fc-last,
-.fc-border-separate td.fc-last {
-	border-right-width: 1px;
-	}
-	
-.fc-border-separate tr.fc-last th,
-.fc-border-separate tr.fc-last td {
-	border-bottom-width: 1px;
-	}
-	
-.fc-border-separate tbody tr.fc-first td,
-.fc-border-separate tbody tr.fc-first th {
-	border-top-width: 0;
-	}
-	
-	
-
-/* Month View, Basic Week View, Basic Day View
-------------------------------------------------------------------------*/
-
-.fc-grid th {
-	text-align: center;
-	}
-	
-.fc-grid .fc-day-number {
-	float: right;
-	padding: 0 2px;
-	}
-	
-.fc-grid .fc-other-month .fc-day-number {
-	opacity: 0.3;
-	filter: alpha(opacity=30); /* for IE */
-	/* opacity with small font can sometimes look too faded
-	   might want to set the 'color' property instead
-	   making day-numbers bold also fixes the problem */
-	}
-	
-.fc-grid .fc-day-content {
-	clear: both;
-	padding: 2px 2px 1px; /* distance between events and day edges */
-	}
-	
-/* event styles */
-	
-.fc-grid .fc-event-time {
-	font-weight: bold;
-	}
-	
-/* right-to-left */
-	
-.fc-rtl .fc-grid .fc-day-number {
-	float: left;
-	}
-	
-.fc-rtl .fc-grid .fc-event-time {
-	float: right;
-	}
-	
-.fc-more-link {
-	font-size: 0.85em;
-	white-space: nowrap;
-	text-decoration: none;
-	cursor: pointer;
-	padding: 1px;
-}
-
-/* Agenda Week View, Agenda Day View
-------------------------------------------------------------------------*/
-
-.fc-agenda table {
-	border-collapse: separate;
-	}
-	
-.fc-agenda-days th {
-	text-align: center;
-	}
-	
-.fc-agenda .fc-agenda-axis {
-	width: 50px;
-	padding: 0 4px;
-	vertical-align: middle;
-	text-align: right;
-	white-space: nowrap;
-	font-weight: normal;
-	}
-	
-.fc-agenda .fc-day-content {
-	padding: 2px 2px 1px;
-	}
-	
-/* make axis border take precedence */
-	
-.fc-agenda-days .fc-agenda-axis {
-	border-right-width: 1px;
-	}
-	
-.fc-agenda-days .fc-col0 {
-	border-left-width: 0;
-	}
-	
-/* all-day area */
-	
-.fc-agenda-allday th {
-	border-width: 0 1px;
-	}
-	
-.fc-agenda-allday .fc-day-content {
-	min-height: 34px; /* TODO: doesnt work well in quirksmode */
-	_height: 34px;
-	}
-	
-/* divider (between all-day and slots) */
-	
-.fc-agenda-divider-inner {
-	height: 2px;
-	overflow: hidden;
-	}
-	
-.fc-widget-header .fc-agenda-divider-inner {
-	background: #eee;
-	}
-	
-/* slot rows */
-	
-.fc-agenda-slots th {
-	border-width: 1px 1px 0;
-	}
-	
-.fc-agenda-slots td {
-	border-width: 1px 0 0;
-	background: none;
-	}
-	
-.fc-agenda-slots td div {
-	height: 20px;
-	}
-	
-.fc-agenda-slots tr.fc-slot0 th,
-.fc-agenda-slots tr.fc-slot0 td {
-	border-top-width: 0;
-	}
-
-.fc-agenda-slots tr.fc-minor th,
-.fc-agenda-slots tr.fc-minor td {
-	border-top-style: dotted;
-	}
-	
-.fc-agenda-slots tr.fc-minor th.ui-widget-header {
-	*border-top-style: solid; /* doesn't work with background in IE6/7 */
-	}
-	
-
-
-/* Vertical Events
-------------------------------------------------------------------------*/
-
-.fc-event-vert {
-	border-width: 0 1px;
-	}
-	
-.fc-event-vert .fc-event-head,
-.fc-event-vert .fc-event-content {
-	position: relative;
-	z-index: 2;
-	width: 100%;
-	overflow: hidden;
-	}
-	
-.fc-event-vert .fc-event-time {
-	white-space: nowrap;
-	font-size: 10px;
-	}
-	
-.fc-event-vert .fc-event-bg { /* makes the event lighter w/ a semi-transparent overlay  */
-	position: absolute;
-	z-index: 1;
-	top: 0;
-	left: 0;
-	width: 100%;
-	height: 100%;
-	background: #fff;
-	opacity: .3;
-	filter: alpha(opacity=30);
-	}
-	
-.fc .ui-draggable-dragging .fc-event-bg, /* TODO: something nicer like .fc-opacity */
-.fc-select-helper .fc-event-bg {
-	display: none\9; /* for IE6/7/8. nested opacity filters while dragging don't work */
-	}
-	
-/* resizable */
-	
-.fc-event-vert .ui-resizable-s {
-	bottom: 0        !important; /* importants override pre jquery ui 1.7 styles */
-	width: 100%      !important;
-	height: 8px      !important;
-	overflow: hidden !important;
-	line-height: 8px !important;
-	font-size: 11px  !important;
-	font-family: monospace;
-	text-align: center;
-	cursor: s-resize;
-	}
-	
-.fc-agenda .ui-resizable-resizing { /* TODO: better selector */
-	_overflow: hidden;
-	}
-	
-.fc-timeline {
-	position: absolute;
-	width: 100%;
-	left: 0;
-	margin: 0;
-	padding: 0;
-	border: none;
-	border-top: 2px solid #3ec400;
-	z-index: 999;
-}
-
-/* List view  (by bruederli at kolabsys.com)
-------------------------------------------------------------------------*/
-
-.fc-view-list,
-.fc-view-table {
-	border: 1px solid #ccc;
-	width: auto;
-}
-
-.fc-view-list .fc-list-header,
-.fc-view-table td.fc-list-header {
-	border-width: 0;
-	border-bottom-width: 1px;
-	padding: 3px 5px;
-}
-
-.fc-view-table .fc-first td.fc-list-header {
-	border-top-width: 0;
-}
-
-.fc-list-section {
-	padding: 4px 2px;
-	border-width: 0;
-	border-bottom-width: 1px;
-}
-
-.fc-view-list .fc-last {
-	border-bottom-width: 0;
-}
-
-.fc-list-section .fc-event {
-	position: relative;
-	margin: 1px 2px 3px 2px;
-}
-
-.fc-view-table tr.fc-event td {
-	padding: 2px;
-	border-bottom: 1px solid #ccc;
-}
-
-.fc-view-table tr.fc-event td.fc-event-handle {
-	padding: 3px 8px 3px 3px;
-}
-
-.fc-view-table .fc-event-handle .fc-event-skin {
-	border-radius: 2px;
-	-moz-border-radius: 2px;
-}
-
-.fc-view-table .fc-event-handle .fc-event-inner {
-	display: block;
-	width: 8px;
-	height: 10px;
-	border-radius: 2px;
-	-moz-border-radius: 2px;
-}
-
-.fc-view-table table {
-	table-layout: fixed;
-	width: 100%;
-}
-
-.fc-view-table col.fc-event-handle {
-	width: 18px;
-}
-
-.fc-event-handle .fc-event-inner {
-	border-color: inherit;
-	background-color: inherit;
-}
-
-.fc-view-table col.fc-event-date {
-	width: 7em;
-}
-
-.fc-view-table .fc-list-day col.fc-event-date {
-	width: 1px;
-}
-
-.fc-view-table col.fc-event-time {
-	width: 8em;
-}
-
-.fc-view-table td.fc-event-date,
-.fc-view-table td.fc-event-time {
-	white-space: nowrap;
-	padding-right: 1em;
-}
-
diff --git a/plugins/calendar/skins/default/iehacks.css b/plugins/calendar/skins/default/iehacks.css
deleted file mode 100644
index 831266f..0000000
--- a/plugins/calendar/skins/default/iehacks.css
+++ /dev/null
@@ -1,88 +0,0 @@
-/* CSS hacks for IE 6/7 */
-
-#main {
-	width: expression(Math.max(300, parseInt(document.documentElement.clientWidth)-10)+'px');
-	height: expression(Math.max(300, parseInt(document.documentElement.clientHeight)-100)+'px');
-}
-
-#sidebar,
-#sidebartoggle {
-	height: expression((parseInt(this.parentNode.offsetHeight)-37)+'px');
-}
-
-#calendar {
-	width: expression((parseInt(this.parentNode.offsetWidth)-parseInt(document.getElementById('sidebartoggle').offsetWidth)-parseInt(document.getElementById('sidebartoggle').offsetLeft)-4)+'px');
-	height: expression(parseInt(this.parentNode.offsetHeight)+'px');
-}
-
-#calendars {
-	height: expression((parseInt(this.parentNode.offsetHeight)-220)+'px');
-}
-
-#agendaoptions {
-	width: expression((parseInt(this.parentNode.offsetWidth)-12)+'px');
-}
-
-#calendartoolbar a.buttonPas {
-	filter: alpha(opacity=35);
-}
-
-html #calendartoolbar a.button,
-html #calendartoolbar a.buttonPas {
-	background-image: url(images/toolbar.gif);
-}
-
-#datepicker a.ui-priority-secondary {
-	filter: alpha(opacity=40);
-}
-
-#calendarslist li span {
-	background-image: url(images/calendars.gif);
-}
-
-#datepicker .ui-widget-header {
-	width: 102%;
-}
-
-#eventshow.sensitivity-private {
-	background-image: url(images/badge_private.gif);
-}
-
-#eventshow.sensitivity-confidential {
-	background-image: url(images/badge_confidential.gif);
-}
-
-.fc-day-content {
-	cursor: default;
-}
-
-.fc-header-title h2 {
-	font-size: 16px;
-}
-
-.fc-event-temp .fc-event-bg {
-	display: none; /* nested opacity filters while dragging don't work */
-}
-
-#schedule-event-time {
-	filter: alpha(opacity=40);
-}
-
-#eventfreebusy .schedule-buttons,
-#edit-attendees-form #edit-attendee-schedule {
-	right: 0.6em;
-}
-
-#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.gif');
-}
-
-#schedule-freebusy-times tr.times td.allday {
-	width: expression(Math.max(60, parseInt(this.offsetWidth))+'px');
-}
-
-.ui-dialog .ui-dialog-titlebar {
-	width: expression((parseInt(this.parentNode.offsetWidth)-26)+'px');
-}
diff --git a/plugins/calendar/skins/default/images/attendee-status.gif b/plugins/calendar/skins/default/images/attendee-status.gif
deleted file mode 100644
index 5c08aae..0000000
Binary files a/plugins/calendar/skins/default/images/attendee-status.gif and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/badge_confidential.gif b/plugins/calendar/skins/default/images/badge_confidential.gif
deleted file mode 100644
index ce6b2a0..0000000
Binary files a/plugins/calendar/skins/default/images/badge_confidential.gif and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/badge_confidential.png b/plugins/calendar/skins/default/images/badge_confidential.png
deleted file mode 100644
index e12e788..0000000
Binary files a/plugins/calendar/skins/default/images/badge_confidential.png and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/badge_private.gif b/plugins/calendar/skins/default/images/badge_private.gif
deleted file mode 100644
index 900ed73..0000000
Binary files a/plugins/calendar/skins/default/images/badge_private.gif and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/badge_private.png b/plugins/calendar/skins/default/images/badge_private.png
deleted file mode 100644
index acf3207..0000000
Binary files a/plugins/calendar/skins/default/images/badge_private.png and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/calendar-blue.png b/plugins/calendar/skins/default/images/calendar-blue.png
deleted file mode 100644
index 95c9452..0000000
Binary files a/plugins/calendar/skins/default/images/calendar-blue.png and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/calendar.gif b/plugins/calendar/skins/default/images/calendar.gif
deleted file mode 100644
index 4b25de0..0000000
Binary files a/plugins/calendar/skins/default/images/calendar.gif and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/calendar.png b/plugins/calendar/skins/default/images/calendar.png
deleted file mode 100644
index caab8a3..0000000
Binary files a/plugins/calendar/skins/default/images/calendar.png and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/calendars.gif b/plugins/calendar/skins/default/images/calendars.gif
deleted file mode 100644
index cf12ebd..0000000
Binary files a/plugins/calendar/skins/default/images/calendars.gif and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/calendars.png b/plugins/calendar/skins/default/images/calendars.png
deleted file mode 100644
index feb3945..0000000
Binary files a/plugins/calendar/skins/default/images/calendars.png and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/eventicons.gif b/plugins/calendar/skins/default/images/eventicons.gif
deleted file mode 100644
index 7adbdeb..0000000
Binary files a/plugins/calendar/skins/default/images/eventicons.gif and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/export.png b/plugins/calendar/skins/default/images/export.png
deleted file mode 100644
index d02781d..0000000
Binary files a/plugins/calendar/skins/default/images/export.png and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/freebusy-colors.gif b/plugins/calendar/skins/default/images/freebusy-colors.gif
deleted file mode 100644
index 699f4b9..0000000
Binary files a/plugins/calendar/skins/default/images/freebusy-colors.gif and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/freebusy-colors.png b/plugins/calendar/skins/default/images/freebusy-colors.png
deleted file mode 100644
index ca37cd0..0000000
Binary files a/plugins/calendar/skins/default/images/freebusy-colors.png and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/invitation.png b/plugins/calendar/skins/default/images/invitation.png
deleted file mode 100644
index f3df83a..0000000
Binary files a/plugins/calendar/skins/default/images/invitation.png and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/listheader.gif b/plugins/calendar/skins/default/images/listheader.gif
deleted file mode 100644
index bf77a11..0000000
Binary files a/plugins/calendar/skins/default/images/listheader.gif and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/loading_blue.gif b/plugins/calendar/skins/default/images/loading_blue.gif
deleted file mode 100644
index 2ea6b19..0000000
Binary files a/plugins/calendar/skins/default/images/loading_blue.gif and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/minicolors-all.png b/plugins/calendar/skins/default/images/minicolors-all.png
deleted file mode 100644
index 001ed88..0000000
Binary files a/plugins/calendar/skins/default/images/minicolors-all.png and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/minicolors-handles.gif b/plugins/calendar/skins/default/images/minicolors-handles.gif
deleted file mode 100644
index 9aa9f75..0000000
Binary files a/plugins/calendar/skins/default/images/minicolors-handles.gif and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/preview.png b/plugins/calendar/skins/default/images/preview.png
deleted file mode 100644
index 75f43aa..0000000
Binary files a/plugins/calendar/skins/default/images/preview.png and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/print.png b/plugins/calendar/skins/default/images/print.png
deleted file mode 100644
index 52dd67e..0000000
Binary files a/plugins/calendar/skins/default/images/print.png and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/spacer.gif b/plugins/calendar/skins/default/images/spacer.gif
deleted file mode 100644
index c749aaf..0000000
Binary files a/plugins/calendar/skins/default/images/spacer.gif and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/toggle.gif b/plugins/calendar/skins/default/images/toggle.gif
deleted file mode 100644
index d3be86f..0000000
Binary files a/plugins/calendar/skins/default/images/toggle.gif and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/toolbar.gif b/plugins/calendar/skins/default/images/toolbar.gif
deleted file mode 100644
index 2cf2693..0000000
Binary files a/plugins/calendar/skins/default/images/toolbar.gif and /dev/null differ
diff --git a/plugins/calendar/skins/default/images/toolbar.png b/plugins/calendar/skins/default/images/toolbar.png
deleted file mode 100644
index 94beddb..0000000
Binary files a/plugins/calendar/skins/default/images/toolbar.png and /dev/null differ
diff --git a/plugins/calendar/skins/default/jquery.miniColors.css b/plugins/calendar/skins/default/jquery.miniColors.css
deleted file mode 100644
index dc7c4a7..0000000
--- a/plugins/calendar/skins/default/jquery.miniColors.css
+++ /dev/null
@@ -1,106 +0,0 @@
-.miniColors-trigger {
-	height: 22px;
-	width: 22px;
-	background: url('images/minicolors-all.png') -170px 0 no-repeat;
-	vertical-align: middle;
-	margin: 0 .25em;
-	display: inline-block;
-	outline: none;
-}
-
-.miniColors-selector {
-	position: absolute;
-	width: 175px;
-	height: 150px;
-	background: #FFF;
-	border: solid 1px #BBB;
-	-moz-box-shadow: 0 0 6px rgba(0, 0, 0, .25);
-	-webkit-box-shadow: 0 0 6px rgba(0, 0, 0, .25);
-	box-shadow: 0 0 6px rgba(0, 0, 0, .25);
-	-moz-border-radius: 5px;
-	-webkit-border-radius: 5px;
-	border-radius: 5px;
-	padding: 5px;
-	z-index: 999999;
-}
-
-.miniColors-selector.black {
-	background: #000;
-	border-color: #000;
-}
-
-.miniColors-colors {
-	position: absolute;
-	top: 5px;
-	left: 5px;
-	width: 150px;
-	height: 150px;
-	background: url('images/minicolors-all.png') top left no-repeat;
-	cursor: crosshair;
-}
-
-.miniColors-hues {
-	position: absolute;
-	top: 5px;
-	left: 160px;
-	width: 20px;
-	height: 150px;
-	background: url('images/minicolors-all.png') -150px 0 no-repeat;
-	cursor: crosshair;
-}
-
-.miniColors-colorPicker {
-	position: absolute;
-	width: 11px;
-	height: 11px;
-	background: url('images/minicolors-all.png') -170px -28px no-repeat;
-}
-
-.miniColors-huePicker {
-	position: absolute;
-	left: -3px;
-	width: 26px;
-	height: 3px;
-	background: url('images/minicolors-all.png') -170px -24px no-repeat;
-	overflow: hidden;
-}
-
-.miniColors-presets {
-	position: absolute;
-	left: 185px;
-	top: 5px;
-	width: 60px;
-}
-
-.miniColors-colorPreset {
-	float: left;
-	width: 18px;
-	height: 15px;
-	margin: 2px;
-	border: 1px solid #333;
-	cursor: pointer;
-}
-
-.miniColors-colorPreset-active {
-	border: 2px dotted #666;
-	margin: 1px;
-}
-
-/* Hacks for IE6/7 */
-
-* html .miniColors-colors {
-	background-image: none;
-	filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='plugins/calendar/skins/default/images/minicolors-all.png', sizingMethod='crop');
-}
-
-* html .miniColors-colorPicker {
-	background: url('images/minicolors-handles.gif') 0 -28px no-repeat;
-}
-
-* html .miniColors-huePicker {
-	background: url('images/minicolors-handles.gif') 0 -24px no-repeat;
-}
-
-* html .miniColors-trigger {
-	background: url('images/minicolors-handles.gif') 0 0 no-repeat;
-}
diff --git a/plugins/calendar/skins/default/print.css b/plugins/calendar/skins/default/print.css
deleted file mode 100644
index 3c9bd71..0000000
--- a/plugins/calendar/skins/default/print.css
+++ /dev/null
@@ -1,208 +0,0 @@
-/*** Printing styles for Calendar plugin ***/
-
-body {
-	margin: 0;
-	color: #000;
-	background: #fff;
-}
-
-body, td, th, div, p, h3, select, input, textarea {
-	font-family: "Lucida Grande", Verdana, Arial, Helvetica, sans-serif;
-	font-size: 8pt;
-}
-
-#calendar {
-	position: relative;
-	top: 0;
-	left: 0;
-	height: auto;
-	margin: 5em auto 0 auto;
-	overflow: visible;
-}
-
-#calendar .fc-header-right {
-	padding-right: 0;
-}
-
-#printconfig {
-	position: fixed;
-	top: 0;
-	left: 0;
-	width: 100%;
-	z-index: 10000;
-	padding: 0.5em;
-	background: #ebebeb;
-	border-bottom: 1px solid #999;
-	box-shadow: 0 3px 4px #ccc;
-	-moz-box-shadow: 0 3px 4px #ccc;
-	-webkit-box-shadow: 0 3px 4px #ccc;
-}
-
-#printconfig .prop {
-	padding-right: 2em;
-}
-
-#message {
-	position: absolute;
-	top: 5.5em;
-	left: 1em;
-}
-
-#message div.loading {
-	color: #666;
-	font-style: italic;
-}
-
-#calendarlist {
-	list-style-type: square;
-	margin: 2em 0;
-	padding-left: 1em;
-}
-
-#calendarlist li {
-	float: left;
-	padding-left: 0;
-	padding-right: 3em;
-	margin-left: 0;
-	font-weight: bold;
-}
-
-#calendarlist input {
-	display: none;
-}
-
-.calwidth {
-	width: 700px;
-	margin: 0 auto;
-}
-
-.rightalign {
-	float: right;
-	padding-top: 0.3em;
-}
-
- at media print {
-	.noprint,
-	.fc-header-right span {
-		display: none;
-	}
-	
-	#calendar {
-		margin-top: 0;
-	}
-}
-
-/* fullcalendar style overrides */
-
-.fc-view {
-	overflow: visible;
-}
-
-.fc-event-skin,
-.fc-event-inner .fc-event-skin {
-	color: black;
-	background-color: #fff !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-agenda-slots td div {
-	height: 1.4em;
-}
-
-.fc-widget-header,
-.fc-mon, .fc-tue, .fc-wed, .fc-thu, .fc-fri {
-	background-color: #fff;
-}
-
-.fc-widget-header, .fc-widget-content {
-	border-color: #ccc;
-}
-
-.fc-icon-alarms,
-.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-view-list, .fc-view-table {
-	border: 0;
-}
-
-.fc-view-list div.fc-list-header,
-.fc-view-table td.fc-list-header {
-	padding: 0.3em;
-	background: #fff;
-	font-weight: bold;
-	font-size: 1.2em;
-	color: #333;
-	border-color: #333;
-	border-style: solid;
-	border-width: 1px 0;
-	filter: none;
-}
-
-.fc-list-section .fc-event {
-	cursor: auto;
-}
-
-.fc-view-table tr.fc-event td,
-.fc-view-table tr.fc-event td.fc-event-handle {
-	border-color: #999;
-	padding-top: 0.5em;
-	padding-bottom: 0.5em;
-}
-
-.fc-view-table tr.fc-last td {
-	border: 0;
-}
-
-.fc-view-table tr.fc-event .fc-event-description {
-	padding-left: 2em;
-	padding-top: 0em;
-}
-
-.fc-event-vert .fc-event-description {
-	font-size: 90%;
-	font-style: italic;
-}
-
-
-.fc-view-table col.fc-event-location {
-	width: 20%;
-}
diff --git a/plugins/calendar/skins/default/print.iehacks.css b/plugins/calendar/skins/default/print.iehacks.css
deleted file mode 100644
index 986f004..0000000
--- a/plugins/calendar/skins/default/print.iehacks.css
+++ /dev/null
@@ -1,25 +0,0 @@
-/* CSS hacks for IE 6/7 */
-
-#calendar {
-	top: 5em;
-}
-
-.calwidth {
-	width: 172mm;
-}
-
-.fc-header-title h2 {
-	font-size: 16px;
-}
-
-#calendarlist li {
-	float: none;
-	padding: 0;
-	margin-left: 1em;
-}
-
- at media print {
-	#calendar {
-		top: 0;
-	}
-}
\ No newline at end of file
diff --git a/plugins/calendar/skins/default/templates/attachment.html b/plugins/calendar/skins/default/templates/attachment.html
deleted file mode 100644
index 34d4da6..0000000
--- a/plugins/calendar/skins/default/templates/attachment.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<title><roundcube:object name="pagetitle" /></title>
-<roundcube:include file="/includes/links.html" />
-</head>
-<body class="extwin">
-
-<roundcube:include file="/includes/header.html" />
-
-<div id="partheader">
-<roundcube:object name="plugin.attachmentcontrols" cellpadding="2" cellspacing="0" />
-
-<div style="position:absolute; top:2px; right:0; width:12em; text-align:right">
-  [<a href="#close" class="closelink" onclick="self.close()"><roundcube:label name="close" /></a>]
-</div>
-</div>
-
-
-<div id="attachmentcontainer">
-<roundcube:object name="plugin.attachmentframe" id="attachmentframe" width="100%" height="100%" />
-</div>
-
-</body>
-</html>
-
diff --git a/plugins/calendar/skins/default/templates/calendar.html b/plugins/calendar/skins/default/templates/calendar.html
deleted file mode 100644
index a22056d..0000000
--- a/plugins/calendar/skins/default/templates/calendar.html
+++ /dev/null
@@ -1,201 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<title><roundcube:object name="pagetitle" /></title>
-<roundcube:include file="/includes/links.html" />
-<script type="text/javascript" src="/functions.js"></script>
-<!--[if lte IE 7]><link rel="stylesheet" type="text/css" href="./plugins/calendar/skins/default/iehacks.css" /><![endif]-->
-</head>
-<body class="calendarmain">
-
-<roundcube:include file="/includes/taskbar.html" />
-<roundcube:include file="/includes/header.html" />
-
-<div id="main">
-  <div id="calendarsidebar">
-    <div id="datepicker"></div>
-    <div id="calendars" style="visibility:hidden">
-      <div class="boxtitle"><roundcube:label name="calendar.calendars" /></div>
-      <div class="boxlistcontent">
-      <roundcube:object name="plugin.calendar_list" id="calendarslist" />
-      </div>
-      <div class="boxfooter">
-        <roundcube:button command="calendar-create" type="link" title="calendar.createcalendar" class="buttonPas addgroup" classAct="button addgroup" content=" " />
-        <roundcube:button name="calendaroptionslink" id="calendaroptionslink" type="link" title="calendaractions" class="button groupactions" onclick="rcmail_ui.show_popup('calendaroptions');return false" content=" " />
-      </div>
-    </div>
-  </div>
-  <div id="calendarsidebartoggle"></div>
-  <div id="calendar">
-    <roundcube:object name="plugin.angenda_options" class="boxfooter" id="agendaoptions" />
-  </div>
-</div>
-
-<div id="calendaroptionsmenu" class="popupmenu">
-  <ul>
-    <li><roundcube:button command="calendar-edit" label="calendar.edit" classAct="active" /></li>
-    <li><roundcube:button command="calendar-remove" label="calendar.remove" classAct="active" /></li>
-    <li><roundcube:button command="events-import" label="calendar.importevents" classAct="active" /></li>
-    <li><roundcube:button command="calendar-showurl" label="calendar.showurl" classAct="active" /></li>
-    <roundcube:if condition="env:calendar_driver == 'kolab'" />
-    <li class="separator_above"><roundcube:button command="folders" task="settings" type="link" label="managefolders" classAct="active" /></li>
-    <roundcube:endif />
-  </ul>
-</div>
-
-<div id="eventshow" class="uidialog">
-  <h1 id="event-title">Event Title</h1>
-  <div class="event-section" id="event-location">Location</div>
-  <div class="event-section" id="event-date">From-To</div>
-  <div class="event-section" id="event-description">
-    <h5 class="label"><roundcube:label name="calendar.description" /></h5>
-    <div class="event-text"></div>
-  </div>
-  <div class="event-section" id="event-repeat">
-    <h5 class="label"><roundcube:label name="calendar.repeat" /></h5>
-    <div class="event-text"></div>
-  </div>
-  <div class="event-section" id="event-alarm">
-    <h5 class="label"><roundcube:label name="calendar.alarms" /></h5>
-    <div class="event-text"></div>
-  </div>
-  <div class="event-section" id="event-attendees">
-    <h5 class="label"><roundcube:label name="calendar.tabattendees" /></h5>
-    <div class="event-text"></div>
-  </div>
-  <div class="event-line" id="event-calendar">
-    <label><roundcube:label name="calendar.calendar" /></label>
-    <span class="event-text">Default</span>
-  </div>
-  <div class="event-line" id="event-category">
-    <label><roundcube:label name="calendar.category" /></label>
-    <span class="event-text"></span>
-  </div>
-  <div class="event-line" id="event-free-busy">
-    <label><roundcube:label name="calendar.freebusy" /></label>
-    <span class="event-text"></span>
-  </div>
-  <div class="event-line" id="event-priority">
-    <label><roundcube:label name="calendar.priority" /></label>
-    <span class="event-text"></span>
-  </div>
-  <div class="event-line" id="event-sensitivity">
-    <label><roundcube:label name="calendar.sensitivity" /></label>
-    <span class="event-text"></span>
-  </div>
-  <div class="event-section" id="event-attachments">
-    <label><roundcube:label name="attachments" /></label>
-    <div class="event-text attachments-list"></div>
-  </div>
-  
-  <roundcube:object name="plugin.event_rsvp_buttons" id="event-rsvp" style="display:none" />
-</div>
-
-<roundcube:include file="/templates/eventedit.html" />
-
-<div id="eventfreebusy" class="uidialog">
-  <roundcube:object name="plugin.attendees_freebusy_table" id="attendees-freebusy-table" cellspacing="0" cellpadding="0" border="0" />
-  
-  <div class="schedule-options">
-     
-    <div class="schedule-buttons">
-      <button id="shedule-freebusy-prev" title="<roundcube:label name='previouspage' />">◄</button><button id="shedule-freebusy-next" title="<roundcube:label name='nextpage' />">►</button>
-    </div>
-  </div>
-  
-  <div style="float:left; width:28em">
-    <div class="form-section">
-      <label for="schedule-startdate"><roundcube:label name="calendar.start" /></label>
-      <input type="text" name="startdate" size="10" id="schedule-startdate" disabled="true" />  
-      <input type="text" name="starttime" size="6" id="schedule-starttime" disabled="true" />
-    </div>
-    <div class="form-section">
-      <label for="schedule-enddate"><roundcube:label name="calendar.end" /></label>
-      <input type="text" name="enddate" size="10" id="schedule-enddate" disabled="true" />  
-      <input type="text" name="endtime" size="6"  id="schedule-endtime" disabled="true" />
-    </div>
-  </div>
-  <div style="float:left">
-    <div class="schedule-find-buttons">
-      <button id="shedule-find-prev">◄ <roundcube:label name="calendar.prevslot" /></button>
-      <button id="shedule-find-next"><roundcube:label name="calendar.nextslot" /> ►</button>
-    </div>
-    <div class="schedule-options">
-      <label><input type="checkbox" id="schedule-freebusy-workinghours" value="1" /><roundcube:label name="calendar.onlyworkinghours" /></label>
-    </div>
-  </div>
-  <br style="clear:both;" />
-  
-  <roundcube:include file="/templates/freebusylegend.html" />
-  <div class="attendees-list">
-    <span class="attendee organizer"><roundcube:label name="calendar.roleorganizer" /></span>
-    <span class="attendee req-participant"><roundcube:label name="calendar.rolerequired" /></span>
-    <span class="attendee opt-participant"><roundcube:label name="calendar.roleoptional" /></span>
-    <span class="attendee chair"><roundcube:label name="calendar.roleresource" /></span>
-  </div>
-</div>
-
-<div id="calendarform" class="uidialog">
-  <roundcube:label name="loading" />
-</div>
-
-<div id="eventsimport" class="uidialog">
-  <roundcube:object name="plugin.events_import_form" id="events-import-form" uploadFieldSize="30" />
-</div>
-
-<div id="calendarurlbox" class="uidialog">
-  <p><roundcube:label name="calendar.showurldescription" /></p>
-  <textarea id="calfeedurl" rows="2" readonly="readonly"></textarea>
-</div>
-
-<div id="alarm-snooze-dropdown" class="popupmenu">
-  <roundcube:object name="plugin.snooze_select" type="ul" />
-</div>
-
-<div id="calendartoolbar">
-  <roundcube:button command="addevent" type="link" class="buttonPas addevent" classAct="button addevent" classSel="button addeventSel" title="calendar.new_event" content=" " />
-  <roundcube:button command="print" type="link" class="buttonPas print" classAct="button print" classSel="button printSel" title="calendar.print" content=" " />
-  <roundcube:button command="export" type="link" class="buttonPas export" classAct="button export" classSel="button exportSel" title="calendar.export" content=" " />
-  <roundcube:container name="toolbar" id="calendartoolbar" />
-</div>
-
-<div id="quicksearchbar">
-<roundcube:button name="searchmenulink" id="searchmenulink" image="/images/icons/glass.png" />
-<roundcube:object name="plugin.searchform" id="quicksearchbox" />
-<roundcube:button command="reset-search" id="searchreset" image="/images/icons/reset.gif" title="resetsearch" />
-</div>
-
-<roundcube:object name="plugin.calendar_css" />
-
-<script type="text/javascript">
-
-// use skin functions to handle popup-menus
-rcube_init_mail_ui();
-rcmail_ui.popups.calendaroptions = { id:'calendaroptionsmenu', above:1, obj:$('#calendaroptionsmenu') };
-
-$(document).ready(function(e){
-  // initialize sidebar toggle
-  $('#calendarsidebartoggle').click(function() {
-    var width = $(this).data('sidebarwidth');
-    var offset = $(this).data('offset');
-    var $sidebar = $('#calendarsidebar'), time = 250;
-    
-    if ($sidebar.is(':visible')) {
-      $sidebar.animate({ left:'-'+(width+10)+'px' }, time, function(){ $('#calendarsidebar').hide(); });
-      $(this).animate({ left:'8px'}, time, function(){ $('#calendarsidebartoggle').addClass('sidebarclosed') });
-      $('#calendar').animate({ left:'20px'}, time, function(){ $(this).fullCalendar('render'); });
-    }
-    else {
-      $sidebar.show().animate({ left:'10px' }, time);
-      $(this).animate({ left:offset+'px'}, time, function(){ $('#calendarsidebartoggle').removeClass('sidebarclosed'); });
-      $('#calendar').animate({ left:(width+16)+'px'}, time, function(){ $(this).fullCalendar('render'); });
-    }
-  })
-  .data('offset', $('#calendarsidebartoggle').position().left)
-  .data('sidebarwidth', $('#calendarsidebar').width() + $('#calendarsidebar').position().left);
-});
-
-</script>
-
-</body>
-</html>
diff --git a/plugins/calendar/skins/default/templates/eventedit.html b/plugins/calendar/skins/default/templates/eventedit.html
deleted file mode 100644
index 3548478..0000000
--- a/plugins/calendar/skins/default/templates/eventedit.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<div id="eventedit" class="uidialog">
-  <form id="eventtabs" action="#" method="post" enctype="multipart/form-data">
-    <ul>
-      <li><a href="#event-tab-1"><roundcube:label name="calendar.tabsummary" /></a></li>
-      <li id="edit-tab-recurrence"><a href="#event-tab-2"><roundcube:label name="calendar.tabrecurrence" /></a></li>
-      <li id="edit-tab-attendees"><a href="#event-tab-3"><roundcube:label name="calendar.tabattendees" /></a></li>
-      <li id="edit-tab-attachments"><a href="#event-tab-4"><roundcube:label name="calendar.tabattachments" /></a></li>
-    </ul>
-    <!-- basic info -->
-    <div id="event-tab-1">
-      <div class="event-section">
-        <label for="edit-title"><roundcube:label name="calendar.title" /></label>
-        <br />
-        <input type="text" class="text" name="title" id="edit-title" size="40" />
-      </div>
-      <div class="event-section">
-        <label for="edit-location"><roundcube:label name="calendar.location" /></label>
-        <br />
-        <input type="text" class="text" name="location" id="edit-location" size="40" />
-      </div>
-      <div class="event-section">
-        <label for="edit-description"><roundcube:label name="calendar.description" /></label>
-        <br />
-        <textarea name="description" id="edit-description" class="text" rows="5" cols="40"></textarea>
-      </div>
-      <div class="event-section">
-        <label style="float:right;padding-right:0.5em"><input type="checkbox" name="allday" id="edit-allday" value="1" /><roundcube:label name="calendar.all-day" /></label>
-        <label for="edit-startdate"><roundcube:label name="calendar.start" /></label>
-        <input type="text" name="startdate" size="10" id="edit-startdate" />  
-        <input type="text" name="starttime" size="6" id="edit-starttime" />
-      </div>
-      <div class="event-section">
-        <label for="edit-enddate"><roundcube:label name="calendar.end" /></label>
-        <input type="text" name="enddate" size="10" id="edit-enddate" />  
-        <input type="text" name="endtime" size="6"  id="edit-endtime" />
-      </div>
-      <div class="event-section" id="edit-alarms">
-        <label for="edit-alarm"><roundcube:label name="calendar.alarms" /></label>
-        <roundcube:object name="plugin.alarm_select" />
-      </div>
-      <div class="event-section" id="calendar-select">
-        <label for="edit-calendar"><roundcube:label name="calendar.calendar" /></label>
-        <roundcube:object name="plugin.calendar_select" id="edit-calendar" />
-      </div>
-      <div class="event-section">
-        <label for="edit-categories"><roundcube:label name="calendar.category" /></label>
-        <roundcube:object name="plugin.category_select" id="edit-categories" />
-      </div>
-      <div class="event-section">
-        <label for="edit-free-busy"><roundcube:label name="calendar.freebusy" /></label>
-        <roundcube:object name="plugin.freebusy_select" id="edit-free-busy" />
-      </div>
-      <div class="event-section">
-        <label for="edit-priority"><roundcube:label name="calendar.priority" /></label>
-        <roundcube:object name="plugin.priority_select" id="edit-priority" />
-      </div>
-      <div class="event-section">
-        <label for="edit-sensitivity"><roundcube:label name="calendar.sensitivity" /></label>
-        <roundcube:object name="plugin.sensitivity_select" id="edit-sensitivity" />
-      </div>
-    </div>
-    <!-- recurrence settings -->
-    <div id="event-tab-2">
-      <div class="event-section border-after">
-        <roundcube:object name="plugin.recurrence_form" part="frequency" />
-      </div>
-      <div class="recurrence-form border-after" id="recurrence-form-daily">
-        <roundcube:object name="plugin.recurrence_form" part="daily" class="event-section" />
-      </div>
-      <div class="recurrence-form border-after" id="recurrence-form-weekly">
-        <roundcube:object name="plugin.recurrence_form" part="weekly" class="event-section" />
-      </div>
-      <div class="recurrence-form border-after" id="recurrence-form-monthly">
-        <roundcube:object name="plugin.recurrence_form" part="monthly" class="event-section" />
-      </div>
-      <div class="recurrence-form border-after" id="recurrence-form-yearly">
-        <roundcube:object name="plugin.recurrence_form" part="yearly" class="event-section" />
-      </div>
-      <div class="recurrence-form" id="recurrence-form-until">
-        <roundcube:object name="plugin.recurrence_form" part="until" class="event-section" />
-      </div>
-    </div>
-    <!-- attendees list -->
-    <div id="event-tab-3">
-      <roundcube:object name="plugin.attendees_list" id="edit-attendees-table" cellspacing="0" cellpadding="0" border="0" />
-      <roundcube:object name="plugin.attendees_form" id="edit-attendees-form" />
-      <roundcube:include file="/templates/freebusylegend.html" />
-    </div>
-    <!-- attachments list (with upload form) -->
-    <div id="event-tab-4">
-      <div id="edit-attachments" class="attachments-list">
-        <roundcube:object name="plugin.attachments_list" id="attachmentlist" deleteIcon="/images/icons/delete.png" cancelIcon="/images/icons/delete.png" loadingIcon="/images/display/loading_blue.gif" />
-      </div>
-      <div id="edit-attachments-form">
-        <roundcube:object name="plugin.attachments_form" id="calendar-attachment-form" attachmentFieldSize="30" />
-      </div>
-    </div>
-  </form>
-
-  <roundcube:object name="plugin.edit_attendees_notify" id="edit-attendees-notify" class="event-dialog-message" style="display:none" />
-  <roundcube:object name="plugin.edit_recurring_warning" class="event-dialog-message edit-recurring-warning" style="display:none" />
-  <div id="edit-localchanges-warning" class="event-dialog-message" style="display:none"><roundcube:label name="calendar.localchangeswarning" /></div>
-</div>
\ No newline at end of file
diff --git a/plugins/calendar/skins/default/templates/freebusylegend.html b/plugins/calendar/skins/default/templates/freebusylegend.html
deleted file mode 100644
index 5cc01a1..0000000
--- a/plugins/calendar/skins/default/templates/freebusylegend.html
+++ /dev/null
@@ -1,7 +0,0 @@
-  <div id="edit-attendees-legend" class="availability">
-    <span class="legend"><img class="availabilityicon free" src="./program/blank.gif" /> <roundcube:label name="calendar.availfree" /></span>
-    <span class="legend"><img class="availabilityicon busy" src="./program/blank.gif" /> <roundcube:label name="calendar.availbusy" /></span>
-    <span class="legend"><img class="availabilityicon tentative" src="./program/blank.gif" /> <roundcube:label name="calendar.availtentative" /></span>
-    <span class="legend"><img class="availabilityicon out-of-office" src="./program/blank.gif" /> <roundcube:label name="calendar.availoutofoffice" /></span>
-    <span class="legend"><img class="availabilityicon unknown" src="./program/blank.gif" /> <roundcube:label name="calendar.availunknown" /></span>
-  </div>
diff --git a/plugins/calendar/skins/default/templates/itipattend.html b/plugins/calendar/skins/default/templates/itipattend.html
deleted file mode 100644
index 84968b5..0000000
--- a/plugins/calendar/skins/default/templates/itipattend.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<title><roundcube:object name="pagetitle" /></title>
-<roundcube:include file="/includes/links.html" />
-</head>
-<body class="calendaritipattend">
-
-<roundcube:object name="logo" src="/images/roundcube_logo.png" id="logo" border="0" style="margin:0 11px" />
-
-<roundcube:object name="message" id="message" />
-
-<div class="centerbox">
-	<roundcube:object name="plugin.event_inviteform" />
-	<roundcube:object name="plugin.event_invitebox" class="calendar-invitebox" />
-	<roundcube:object name="plugin.event_rsvp_buttons" type="submit" iname="rsvp" id="event-rsvp" />
-	</form>
-</div>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/plugins/calendar/skins/default/templates/kolabacl.html b/plugins/calendar/skins/default/templates/kolabacl.html
deleted file mode 100644
index 668a670..0000000
--- a/plugins/calendar/skins/default/templates/kolabacl.html
+++ /dev/null
@@ -1,13 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<title><roundcube:object name="pagetitle" /></title>
-<roundcube:include file="/includes/links.html" />
-<script type="text/javascript" src="/functions.js"></script>
-</head>
-<body class="iframe" style="background:#fff; margin:0">
-
-<roundcube:object name="folderacl" />
-
-</body>
-</html>
diff --git a/plugins/calendar/skins/default/templates/kolabform.html b/plugins/calendar/skins/default/templates/kolabform.html
deleted file mode 100644
index a74481a..0000000
--- a/plugins/calendar/skins/default/templates/kolabform.html
+++ /dev/null
@@ -1,7 +0,0 @@
-<div id="calendar-kolabform">
-  <roundcube:object name="calendarform" />
-</div>
-<script type="text/javascript">rcube_init_tabs('calendar-kolabform');</script>
-<style type="text/css">
-#calendarpropform { min-width:680px }
-</style>
\ No newline at end of file
diff --git a/plugins/calendar/skins/default/templates/print.html b/plugins/calendar/skins/default/templates/print.html
deleted file mode 100644
index 3fc85f3..0000000
--- a/plugins/calendar/skins/default/templates/print.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<title><roundcube:object name="pagetitle" /></title>
-</head>
-<body class="calendarprint">
-
-<div id="printconfig" class="noprint">
-  <div class="calwidth">
-    <a href="#close" onclick="window.close()" class="rightalign"><roundcube:label name="close" /></a>
-    <span class="prop"><input type="button" id="printme" value="<roundcube:label name='print' />" onclick="window.print()"></span>
-    <span class="prop"><label><input type="checkbox" id="propdescription" checked="checked" /> <roundcube:label name="calendar.printdescriptions" /></label></span>
-  </div>
-</div>
-
-<roundcube:object name="message" id="message" class="noprint" />
-
-<div id="calendar" class="calwidth"></div>
-
-<div class="calwidth">
-  <roundcube:object name="plugin.calendar_list" activeonly="true" id="calendarlist" />
-</div>
-
-<roundcube:object name="plugin.calendar_css" printmode="true" />
-
-<!--[if lte IE 7]><link rel="stylesheet" type="text/css" href="./plugins/calendar/skins/default/print.iehacks.css" /><![endif]-->
-</body>
-</html>
\ No newline at end of file
diff --git a/plugins/calendar/skins/larry/.htaccess b/plugins/calendar/skins/larry/.htaccess
deleted file mode 100644
index d973105..0000000
--- a/plugins/calendar/skins/larry/.htaccess
+++ /dev/null
@@ -1,5 +0,0 @@
-# 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/kolab_addressbook/skins/classic/kolab_addressbook.css b/plugins/kolab_addressbook/skins/classic/kolab_addressbook.css
new file mode 100644
index 0000000..da3abed
--- /dev/null
+++ b/plugins/kolab_addressbook/skins/classic/kolab_addressbook.css
@@ -0,0 +1,35 @@
+#directorylist li.addressbook.readonly
+{
+  /* don't use 'background' to not reset background color */
+  background-image: url(kolab_folders.png);
+  background-position: 5px 0px;
+  background-repeat: no-repeat;
+}
+
+#directorylist li.addressbook.shared
+{
+  background-image: url(kolab_folders.png);
+  background-position: 5px -54px;
+  background-repeat: no-repeat;
+}
+
+#directorylist li.addressbook.shared.readonly
+{
+  background-image: url(kolab_folders.png);
+  background-position: 5px -72px;
+  background-repeat: no-repeat;
+}
+
+#directorylist li.addressbook.other
+{
+  background-image: url(kolab_folders.png);
+  background-position: 5px -18px;
+  background-repeat: no-repeat;
+}
+
+#directorylist li.addressbook.other.readonly
+{
+  background-image: url(kolab_folders.png);
+  background-position: 5px -36px;
+  background-repeat: no-repeat;
+}
diff --git a/plugins/kolab_addressbook/skins/classic/kolab_folders.gif b/plugins/kolab_addressbook/skins/classic/kolab_folders.gif
new file mode 100644
index 0000000..3ac6fc4
Binary files /dev/null and b/plugins/kolab_addressbook/skins/classic/kolab_folders.gif differ
diff --git a/plugins/kolab_addressbook/skins/classic/kolab_folders.png b/plugins/kolab_addressbook/skins/classic/kolab_folders.png
new file mode 100644
index 0000000..95a192e
Binary files /dev/null and b/plugins/kolab_addressbook/skins/classic/kolab_folders.png differ
diff --git a/plugins/kolab_addressbook/skins/classic/templates/bookedit.html b/plugins/kolab_addressbook/skins/classic/templates/bookedit.html
new file mode 100644
index 0000000..717ed8c
--- /dev/null
+++ b/plugins/kolab_addressbook/skins/classic/templates/bookedit.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title><roundcube:object name="pagetitle" /></title>
+<roundcube:include file="/includes/links.html" />
+<link rel="stylesheet" type="text/css" href="/settings.css" />
+<script type="text/javascript" src="/functions.js"></script>
+</head>
+<body class="iframe">
+
+<div id="folder-title" class="boxtitle"><roundcube:label name="kolab_addressbook.bookproperties" /></div>
+
+<div id="folder-details" class="boxcontent">
+  <roundcube:object name="bookdetails" />
+  <p>
+<!--
+    <roundcube:if condition="!strlen(request:_source)" />
+    <input type="button" value="<roundcube:label name="cancel" />" class="button" onclick="history.back()" /> 
+    <roundcube:endif />
+-->
+    <roundcube:button command="book-save" type="input" class="button mainaction" label="save" />
+  </p>
+</div>
+<script type="text/javascript">rcube_init_tabs('folder-details > form')</script>
+
+</body>
+</html>
diff --git a/plugins/kolab_addressbook/skins/default/kolab_addressbook.css b/plugins/kolab_addressbook/skins/default/kolab_addressbook.css
deleted file mode 100644
index da3abed..0000000
--- a/plugins/kolab_addressbook/skins/default/kolab_addressbook.css
+++ /dev/null
@@ -1,35 +0,0 @@
-#directorylist li.addressbook.readonly
-{
-  /* don't use 'background' to not reset background color */
-  background-image: url(kolab_folders.png);
-  background-position: 5px 0px;
-  background-repeat: no-repeat;
-}
-
-#directorylist li.addressbook.shared
-{
-  background-image: url(kolab_folders.png);
-  background-position: 5px -54px;
-  background-repeat: no-repeat;
-}
-
-#directorylist li.addressbook.shared.readonly
-{
-  background-image: url(kolab_folders.png);
-  background-position: 5px -72px;
-  background-repeat: no-repeat;
-}
-
-#directorylist li.addressbook.other
-{
-  background-image: url(kolab_folders.png);
-  background-position: 5px -18px;
-  background-repeat: no-repeat;
-}
-
-#directorylist li.addressbook.other.readonly
-{
-  background-image: url(kolab_folders.png);
-  background-position: 5px -36px;
-  background-repeat: no-repeat;
-}
diff --git a/plugins/kolab_addressbook/skins/default/kolab_folders.gif b/plugins/kolab_addressbook/skins/default/kolab_folders.gif
deleted file mode 100644
index 3ac6fc4..0000000
Binary files a/plugins/kolab_addressbook/skins/default/kolab_folders.gif and /dev/null differ
diff --git a/plugins/kolab_addressbook/skins/default/kolab_folders.png b/plugins/kolab_addressbook/skins/default/kolab_folders.png
deleted file mode 100644
index 95a192e..0000000
Binary files a/plugins/kolab_addressbook/skins/default/kolab_folders.png and /dev/null differ
diff --git a/plugins/kolab_addressbook/skins/default/templates/bookedit.html b/plugins/kolab_addressbook/skins/default/templates/bookedit.html
deleted file mode 100644
index 717ed8c..0000000
--- a/plugins/kolab_addressbook/skins/default/templates/bookedit.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<title><roundcube:object name="pagetitle" /></title>
-<roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/settings.css" />
-<script type="text/javascript" src="/functions.js"></script>
-</head>
-<body class="iframe">
-
-<div id="folder-title" class="boxtitle"><roundcube:label name="kolab_addressbook.bookproperties" /></div>
-
-<div id="folder-details" class="boxcontent">
-  <roundcube:object name="bookdetails" />
-  <p>
-<!--
-    <roundcube:if condition="!strlen(request:_source)" />
-    <input type="button" value="<roundcube:label name="cancel" />" class="button" onclick="history.back()" /> 
-    <roundcube:endif />
--->
-    <roundcube:button command="book-save" type="input" class="button mainaction" label="save" />
-  </p>
-</div>
-<script type="text/javascript">rcube_init_tabs('folder-details > form')</script>
-
-</body>
-</html>
diff --git a/plugins/kolab_zpush/skins/classic/alarm-clock.png b/plugins/kolab_zpush/skins/classic/alarm-clock.png
new file mode 100755
index 0000000..518bdc1
Binary files /dev/null and b/plugins/kolab_zpush/skins/classic/alarm-clock.png differ
diff --git a/plugins/kolab_zpush/skins/classic/config.css b/plugins/kolab_zpush/skins/classic/config.css
new file mode 100644
index 0000000..a3f0f18
--- /dev/null
+++ b/plugins/kolab_zpush/skins/classic/config.css
@@ -0,0 +1,119 @@
+/* Stylesheets for the Kolab Z-Push configuration UI */
+#configform {
+	padding-top: 15px;
+}
+
+#devices-table {
+	width: 100%;
+	table-layout: fixed;
+}
+
+#devices-table td {
+	cursor: pointer;
+}
+
+#devices-table td span.devicetype {
+	padding-left: 1em;
+	font-style: italic;
+	color: #666;
+}
+
+#devices-table tr.selected td span.devicetype {
+	color: #ccc;
+}
+
+.boxfooter a.button.delete,
+.boxfooter a.buttonPas.delete {
+	background-image: url(deviceactions.png);
+}
+
+div.subscriptionblock {
+	float: left;
+	margin: 0.5em 3em 2em 0;
+	padding: 0;
+	border: 1px solid #ddd;
+}
+
+div.subscriptionblock h3 {
+	font-size: 12px;
+	color: #333;
+	margin: 0 0 0.4em 0;
+	padding: 4px 4px 5px 30px;
+	background: url(foldertypes.png) 4px 4px no-repeat #fbfbfb;
+}
+
+div.subscriptionblock h3.contact {
+	background-position: 4px -16px;
+}
+
+div.subscriptionblock h3.event {
+	background-position: 4px -36px;
+}
+
+div.subscriptionblock h3.task {
+	background-position: 4px -56x;
+}
+
+div.subscriptionblock h3.note {
+	background-position: 4px -76px;
+}
+
+#foldersubscriptions thead td {
+	color: #999;
+	font-weight: bold;
+	padding: 3px 5px;
+	min-width: 2em;
+}
+
+#foldersubscriptions tbody td {
+	padding: 2px 5px;
+	border-top: 1px solid #ddd;
+}
+
+#foldersubscriptions td label {
+	display: block;
+}
+
+#foldersubscriptions td.mailbox {
+	padding-right: 3em;
+	padding-left: 2px;
+	min-width: 12em;
+}
+
+#foldersubscriptions td.virtual {
+	color: #999;
+}
+
+#foldersubscriptions {
+	overflow: auto;
+	max-height: 400px;
+	margin-top: 0.5em;
+}
+
+#introtext {
+	position: absolute;
+	top: 12px;
+	left: 5px;
+	padding-left: 10px;
+	max-width: 40em;
+}
+
+#introtext .pointer-left {
+	position: absolute;
+	top: 0;
+	left: 0;
+	width: 14px;
+	height: 100%;
+	background: url(pointer-left.gif) right center no-repeat;
+}
+
+#introtext .inner {
+	border: 3px solid #e7e7e7;
+	background: #fff;
+}
+
+#introtext .bordered {
+	padding: 12px;
+	border: 1px solid #ccc;
+	background: #fff;
+}
diff --git a/plugins/kolab_zpush/skins/classic/deviceactions.png b/plugins/kolab_zpush/skins/classic/deviceactions.png
new file mode 100644
index 0000000..d242953
Binary files /dev/null and b/plugins/kolab_zpush/skins/classic/deviceactions.png differ
diff --git a/plugins/kolab_zpush/skins/classic/foldertypes.png b/plugins/kolab_zpush/skins/classic/foldertypes.png
new file mode 100644
index 0000000..4950296
Binary files /dev/null and b/plugins/kolab_zpush/skins/classic/foldertypes.png differ
diff --git a/plugins/kolab_zpush/skins/classic/pointer-left.gif b/plugins/kolab_zpush/skins/classic/pointer-left.gif
new file mode 100644
index 0000000..b2de585
Binary files /dev/null and b/plugins/kolab_zpush/skins/classic/pointer-left.gif differ
diff --git a/plugins/kolab_zpush/skins/classic/synchronize.png b/plugins/kolab_zpush/skins/classic/synchronize.png
new file mode 100755
index 0000000..ba5ebd1
Binary files /dev/null and b/plugins/kolab_zpush/skins/classic/synchronize.png differ
diff --git a/plugins/kolab_zpush/skins/classic/templates/config.html b/plugins/kolab_zpush/skins/classic/templates/config.html
new file mode 100644
index 0000000..beb062f
--- /dev/null
+++ b/plugins/kolab_zpush/skins/classic/templates/config.html
@@ -0,0 +1,63 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title><roundcube:object name="pagetitle" /></title>
+<roundcube:include file="/includes/links.html" />
+<script type="text/javascript" src="/functions.js"></script>
+<script type="text/javascript" src="/splitter.js"></script>
+</head>
+<body>
+
+<roundcube:include file="/includes/taskbar.html" />
+<roundcube:include file="/includes/header.html" />
+<roundcube:include file="/includes/settingstabs.html" />
+
+<div id="mainscreen">
+
+<div id="sectionslist">
+<div id="directorylist-title" class="boxtitle"><roundcube:label name="kolab_zpush.devices" /></div>
+<div class="boxlistcontent">
+	<roundcube:object name="plugin.devicelist" id="devices-table" class="records-table" cellspacing="0" />
+</div>
+<div class="boxfooter">
+	<roundcube:button type="link" command="plugin.delete-device" title="kolab_zpush.deletedevice" class="buttonPas delete" classAct="button delete" content=" " />
+</div>
+</div>
+
+<div id="prefs-box">
+	<div class="boxtitle" style="display:none"><roundcube:label name="kolab_zpush.syncsettings"></div>
+	<form action="#" method="post" id="configform" class="boxcontent" style="display:none">
+		<fieldset>
+			<legend><roundcube:label name="kolab_zpush.deviceconfig" /></legend>
+			<roundcube:object name="plugin.deviceconfigform" form="configform" />
+		</fieldset>
+		<fieldset>
+			<legend><roundcube:label name="kolab_zpush.folderstosync" /></legend>
+			<roundcube:object name="plugin.foldersubscriptions" form="configform" id="foldersubscriptions" syncicon="synchronize.png" alarmicon="alarm-clock.png" />
+		</fieldset>
+		<p class="formbuttons">
+			<roundcube:button type="input" class="button mainaction" command="plugin.save-config" label="save" />
+			<roundcube:button type="input" class="button" command="plugin.delete-device" label="kolab_zpush.deletedevice" />
+		</p>
+	</form>
+	<div id="introtext">
+		<div class="inner"><div class="bordered">
+			<roundcube:if condition="env:devicecount" />
+				<roundcube:label name="kolab_zpush.introtext" />
+			<roundcube:else />
+				<roundcube:label name="kolab_zpush.nodevices" html="true" />
+			<roundcube:endif />
+		</div></div>
+		<div class="pointer-left"></div>
+	</div>
+</div>
+
+</div>
+
+<script type="text/javascript">
+	var viewsplit = new rcube_splitter({ id:'devicelistsplitter', p1: 'sectionslist', p2: 'prefs-box', orientation: 'v', relative: true, start: 195 });
+	rcmail.add_onload('viewsplit.init()');
+</script>
+
+</body>
+</html>
diff --git a/plugins/kolab_zpush/skins/default/alarm-clock.png b/plugins/kolab_zpush/skins/default/alarm-clock.png
deleted file mode 100755
index 518bdc1..0000000
Binary files a/plugins/kolab_zpush/skins/default/alarm-clock.png and /dev/null differ
diff --git a/plugins/kolab_zpush/skins/default/config.css b/plugins/kolab_zpush/skins/default/config.css
deleted file mode 100644
index a3f0f18..0000000
--- a/plugins/kolab_zpush/skins/default/config.css
+++ /dev/null
@@ -1,119 +0,0 @@
-/* Stylesheets for the Kolab Z-Push configuration UI */
-#configform {
-	padding-top: 15px;
-}
-
-#devices-table {
-	width: 100%;
-	table-layout: fixed;
-}
-
-#devices-table td {
-	cursor: pointer;
-}
-
-#devices-table td span.devicetype {
-	padding-left: 1em;
-	font-style: italic;
-	color: #666;
-}
-
-#devices-table tr.selected td span.devicetype {
-	color: #ccc;
-}
-
-.boxfooter a.button.delete,
-.boxfooter a.buttonPas.delete {
-	background-image: url(deviceactions.png);
-}
-
-div.subscriptionblock {
-	float: left;
-	margin: 0.5em 3em 2em 0;
-	padding: 0;
-	border: 1px solid #ddd;
-}
-
-div.subscriptionblock h3 {
-	font-size: 12px;
-	color: #333;
-	margin: 0 0 0.4em 0;
-	padding: 4px 4px 5px 30px;
-	background: url(foldertypes.png) 4px 4px no-repeat #fbfbfb;
-}
-
-div.subscriptionblock h3.contact {
-	background-position: 4px -16px;
-}
-
-div.subscriptionblock h3.event {
-	background-position: 4px -36px;
-}
-
-div.subscriptionblock h3.task {
-	background-position: 4px -56x;
-}
-
-div.subscriptionblock h3.note {
-	background-position: 4px -76px;
-}
-
-#foldersubscriptions thead td {
-	color: #999;
-	font-weight: bold;
-	padding: 3px 5px;
-	min-width: 2em;
-}
-
-#foldersubscriptions tbody td {
-	padding: 2px 5px;
-	border-top: 1px solid #ddd;
-}
-
-#foldersubscriptions td label {
-	display: block;
-}
-
-#foldersubscriptions td.mailbox {
-	padding-right: 3em;
-	padding-left: 2px;
-	min-width: 12em;
-}
-
-#foldersubscriptions td.virtual {
-	color: #999;
-}
-
-#foldersubscriptions {
-	overflow: auto;
-	max-height: 400px;
-	margin-top: 0.5em;
-}
-
-#introtext {
-	position: absolute;
-	top: 12px;
-	left: 5px;
-	padding-left: 10px;
-	max-width: 40em;
-}
-
-#introtext .pointer-left {
-	position: absolute;
-	top: 0;
-	left: 0;
-	width: 14px;
-	height: 100%;
-	background: url(pointer-left.gif) right center no-repeat;
-}
-
-#introtext .inner {
-	border: 3px solid #e7e7e7;
-	background: #fff;
-}
-
-#introtext .bordered {
-	padding: 12px;
-	border: 1px solid #ccc;
-	background: #fff;
-}
diff --git a/plugins/kolab_zpush/skins/default/deviceactions.png b/plugins/kolab_zpush/skins/default/deviceactions.png
deleted file mode 100644
index d242953..0000000
Binary files a/plugins/kolab_zpush/skins/default/deviceactions.png and /dev/null differ
diff --git a/plugins/kolab_zpush/skins/default/foldertypes.png b/plugins/kolab_zpush/skins/default/foldertypes.png
deleted file mode 100644
index 4950296..0000000
Binary files a/plugins/kolab_zpush/skins/default/foldertypes.png and /dev/null differ
diff --git a/plugins/kolab_zpush/skins/default/pointer-left.gif b/plugins/kolab_zpush/skins/default/pointer-left.gif
deleted file mode 100644
index b2de585..0000000
Binary files a/plugins/kolab_zpush/skins/default/pointer-left.gif and /dev/null differ
diff --git a/plugins/kolab_zpush/skins/default/synchronize.png b/plugins/kolab_zpush/skins/default/synchronize.png
deleted file mode 100755
index ba5ebd1..0000000
Binary files a/plugins/kolab_zpush/skins/default/synchronize.png and /dev/null differ
diff --git a/plugins/kolab_zpush/skins/default/templates/config.html b/plugins/kolab_zpush/skins/default/templates/config.html
deleted file mode 100644
index beb062f..0000000
--- a/plugins/kolab_zpush/skins/default/templates/config.html
+++ /dev/null
@@ -1,63 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<title><roundcube:object name="pagetitle" /></title>
-<roundcube:include file="/includes/links.html" />
-<script type="text/javascript" src="/functions.js"></script>
-<script type="text/javascript" src="/splitter.js"></script>
-</head>
-<body>
-
-<roundcube:include file="/includes/taskbar.html" />
-<roundcube:include file="/includes/header.html" />
-<roundcube:include file="/includes/settingstabs.html" />
-
-<div id="mainscreen">
-
-<div id="sectionslist">
-<div id="directorylist-title" class="boxtitle"><roundcube:label name="kolab_zpush.devices" /></div>
-<div class="boxlistcontent">
-	<roundcube:object name="plugin.devicelist" id="devices-table" class="records-table" cellspacing="0" />
-</div>
-<div class="boxfooter">
-	<roundcube:button type="link" command="plugin.delete-device" title="kolab_zpush.deletedevice" class="buttonPas delete" classAct="button delete" content=" " />
-</div>
-</div>
-
-<div id="prefs-box">
-	<div class="boxtitle" style="display:none"><roundcube:label name="kolab_zpush.syncsettings"></div>
-	<form action="#" method="post" id="configform" class="boxcontent" style="display:none">
-		<fieldset>
-			<legend><roundcube:label name="kolab_zpush.deviceconfig" /></legend>
-			<roundcube:object name="plugin.deviceconfigform" form="configform" />
-		</fieldset>
-		<fieldset>
-			<legend><roundcube:label name="kolab_zpush.folderstosync" /></legend>
-			<roundcube:object name="plugin.foldersubscriptions" form="configform" id="foldersubscriptions" syncicon="synchronize.png" alarmicon="alarm-clock.png" />
-		</fieldset>
-		<p class="formbuttons">
-			<roundcube:button type="input" class="button mainaction" command="plugin.save-config" label="save" />
-			<roundcube:button type="input" class="button" command="plugin.delete-device" label="kolab_zpush.deletedevice" />
-		</p>
-	</form>
-	<div id="introtext">
-		<div class="inner"><div class="bordered">
-			<roundcube:if condition="env:devicecount" />
-				<roundcube:label name="kolab_zpush.introtext" />
-			<roundcube:else />
-				<roundcube:label name="kolab_zpush.nodevices" html="true" />
-			<roundcube:endif />
-		</div></div>
-		<div class="pointer-left"></div>
-	</div>
-</div>
-
-</div>
-
-<script type="text/javascript">
-	var viewsplit = new rcube_splitter({ id:'devicelistsplitter', p1: 'sectionslist', p2: 'prefs-box', orientation: 'v', relative: true, start: 195 });
-	rcmail.add_onload('viewsplit.init()');
-</script>
-
-</body>
-</html>
diff --git a/plugins/owncloud/skins/classic/cloud.png b/plugins/owncloud/skins/classic/cloud.png
new file mode 100644
index 0000000..15a288f
Binary files /dev/null and b/plugins/owncloud/skins/classic/cloud.png differ
diff --git a/plugins/owncloud/skins/classic/owncloud.css b/plugins/owncloud/skins/classic/owncloud.css
new file mode 100644
index 0000000..920b730
--- /dev/null
+++ b/plugins/owncloud/skins/classic/owncloud.css
@@ -0,0 +1,12 @@
+/***** ownCloud plugin styles *****/
+
+#taskbar a.button-owncloud
+{
+  background-image: url(cloud.png);
+}
+
+.owncloud-box
+{
+  overflow: auto;  
+  background-color: #F2F2F2;
+}
diff --git a/plugins/owncloud/skins/classic/templates/owncloud.html b/plugins/owncloud/skins/classic/templates/owncloud.html
new file mode 100644
index 0000000..efbd362
--- /dev/null
+++ b/plugins/owncloud/skins/classic/templates/owncloud.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title><roundcube:object name="pagetitle" /></title>
+<roundcube:include file="/includes/links.html" />
+<link rel="stylesheet" type="text/css" href="/this/owncloud.css" />
+<link rel="stylesheet" type="text/css" href="/settings.css" />
+</head>
+<body>
+
+<roundcube:include file="/includes/taskbar.html" />
+<roundcube:include file="/includes/header.html" />
+
+<div id="mainscreen" class="box owncloud-box">
+  <roundcube:object name="owncloudframe" />
+</div>
+
+</body>
+</html>
diff --git a/plugins/owncloud/skins/default/cloud.png b/plugins/owncloud/skins/default/cloud.png
deleted file mode 100644
index 15a288f..0000000
Binary files a/plugins/owncloud/skins/default/cloud.png and /dev/null differ
diff --git a/plugins/owncloud/skins/default/owncloud.css b/plugins/owncloud/skins/default/owncloud.css
deleted file mode 100644
index 920b730..0000000
--- a/plugins/owncloud/skins/default/owncloud.css
+++ /dev/null
@@ -1,12 +0,0 @@
-/***** ownCloud plugin styles *****/
-
-#taskbar a.button-owncloud
-{
-  background-image: url(cloud.png);
-}
-
-.owncloud-box
-{
-  overflow: auto;  
-  background-color: #F2F2F2;
-}
diff --git a/plugins/owncloud/skins/default/templates/owncloud.html b/plugins/owncloud/skins/default/templates/owncloud.html
deleted file mode 100644
index efbd362..0000000
--- a/plugins/owncloud/skins/default/templates/owncloud.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<title><roundcube:object name="pagetitle" /></title>
-<roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/this/owncloud.css" />
-<link rel="stylesheet" type="text/css" href="/settings.css" />
-</head>
-<body>
-
-<roundcube:include file="/includes/taskbar.html" />
-<roundcube:include file="/includes/header.html" />
-
-<div id="mainscreen" class="box owncloud-box">
-  <roundcube:object name="owncloudframe" />
-</div>
-
-</body>
-</html>





More information about the commits mailing list