egroupware_official/calendar/templates/default/app.css
Nathan Gray 619e675be5 Sidebox calendar changes
- Move Today button, add Month button
- Calendar header no longer immediately changes main view
2015-12-01 23:49:14 +00:00

961 lines
22 KiB
CSS

/* $Id$ */
/*Media print classes*/
@media print{
.th td, .row_on td, .row_off td {
border: none !important;
}
img.calendar_print_button {
display: none !important;
}
tr.calendar_print_cat {
border-bottom: 1px solid gray;
}
}
/**
* Sidebox
*/
#calendar-sidebox_owner {
width: 90%;
}
#calendar-sidebox_owner ~ * {
vertical-align: top;
display: inline-block;
}
#calendar-sidebox_cat_id {
width: 90%;
}
#calendar-sidebox_cat_id ~ * {
vertical-align: top;
display: inline-block;
}
#calendar-sidebox_buttons tbody {
width: 100%;
}
#calendar-sidebox_date_header > button {
width: 45%;
}
#calendar-sidebox_weekend {
/* Special css styling goes here */
}
#calendar-sidebox_date td.ui-datepicker-week-col {
cursor: pointer;
}
#calendar-sidebox_date .calendar_calHoliday {
background: inherit;
}
#calendar-sidebox_date .calendar_calHoliday a {
background-color: #dac0c0;
}
#calendar-todo {
position: absolute;
width: 30%;
/* Nice transition when changing days in a week */
transition: 1s ease-in-out;
}
#calendar-view {
width: 100%;
transition: width 1s ease-in-out;
}
/* Header classes */
tr.dialogHeader td, tr.dialogHeader2 td, tr.dialogHeader3 td, tr.dialogHeader4 td,
tr.dialogOperators td,.dialogFooterToolbar {
padding: 5px 0 5px 0;
vertical-align: middle;
}
.calendar_inputFullWidth input { width: 100%; }
/******************************************************************
* CSS settings for the day, week and month view (timeGridWidget) *
******************************************************************/
/*
Names used in the "graphic" are the css classes from this file.
The function names in class uiviews have the leading cal removed and a trailing Widget added:
e.g. the div with class calendar_calTimeGrid is generated by the timeGridWidget method of uiviews.
+++ calendar_calTimeGrid +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ #### calendar_calDayCols[12h|NoGrip] ###########################################################
+ #... calendar_calDayCol ............................. ... calendar_calDayCol ..........................
+ #.+- calendar_calDayColHeader ---------------------+. .+- calendar_calDayColHeader ------------------+.
+ #.| |. .| |.
+ #.+---------------------------------------+. .+------------------------------------+.
+.calendar_calTimeRowTime.#.** calendar_calEventCol ***** ** calendar_calEventCol *****. .** calendar_calEventCol ***********************.
+. .#.* * * *. .* *.
+. .#.* * * *. .* *.
+................#.*+- calendar_calEvent -----+* * *. .* *.
+.calendar_calTimeRowTime.#.*| |* * *. .*+- calendar_calEvent[Private] --------------+*.
+. .#.*| |* *+- calendar_calEvent -----+*. .*| |*.
+. .#.*+----------------+* *| |*. .*| |*.
+................#.* * *| |*. .*| |*.
+.calendar_calTimeRowTime.#.* * *+----------------+*. .*| |*.
+. .#.* * * *. .*+----------------------------------+*.
*/
/* custom ui-tooltip style for calendar
*/
.calendar_uitooltip {
padding: 0px;
position: absolute;
border: none;
max-height: 400px;
z-index: 9999;
max-width: 300px;
-webkit-box-shadow: 0 0 5px;
-moz-box-shadow: 0 0 5px;
box-shadow: 0 0 5px;
}
.calendar_size120b { font-size: 120%; font-weight: bold; }
/* marks a day in the colum-header as today
*/
.calendar_calToday{
background: #ffffcc;
}
.calendar_calWeek{
background: #ffffcc;
width:auto;
margin:0 auto;
text-align:center;
}
.calendar_calMonth{
background: #ffffcc;
width:auto;
margin:0 auto;
text-align:center;
}
/* marks a day in the colum-header as holiday
*/
.calendar_calHoliday{
background: #dac0c0;
}
/* marks a day in the column-header additionaly as birthday of some contact,
* it should work together with the backgrounds of calendar_calToday, calendar_calHoliday, th, row_on and row_off
*/
.calendar_calBirthday,.calendar_calBirthday a{
color: black;
font-weight: bold;
font-style: italic;
}
/* timeGridWidget, contains timeRow's and dayCol's
*/
.calendar_calTimeGrid{
position: relative;
top: 0px;
left: 0px;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
overflow: hidden;
display: flex;
flex-direction: column;
}
.calendar_calTimeGrid .calendar_calTimeGridScroll {
position: relative;
bottom: 0px;
width: 100%;
overflow-y: auto;
overflow-x: hidden;
}
/* single row in the time-line you dont need to set a bgcolor, but you can
*/
.calendar_calTimeRow {
width: 100%;
/* set via inline style on runtime:
* height:
* top:
*/
}
.calendar_calTimeRow:nth-child(odd) {
background-color: rgba(0,0,0,0.01);
}
/* time in a timeRow
*/
.calendar_calTimeRowTime{
padding-left: 5px;
height: 100%;
line-height: 14px;
font-size:8pt;
text-align: left;
}
/* contains (multiple) dayCol's
*/
.calendar_calDayCols,.calendar_calDayCols12h,.calendar_calDayColsNoGrid{
position: absolute;
top: 0px;
/* bottom: 0px; does NOT work in IE, IE needs height: 100%! */
height: 100%;
left: 58px;
right: 0px;
white-space: nowrap;
}
/* 12h timeformat with am/pm
*/
.calendar_calDayCols12h{
left: 65px;
}
/* no time grid --> no time column
*/
.calendar_calDayColsNoTime{
left: 0px;
}
/* contains (multiple) eventCol's
*/
.calendar_calDayCol{
position: absolute;
top: 0px;
height: 100%;/* set via inline style on runtime:
* left:
* width:
*/
border-left: 1px solid silver;/* Nice transition when changing days in a week */
-webkit-transition: 0.1s ease-in-out;
}
/* Calendar Id #
*/
.calendar_calId:before {}
#calendar-edit_id:before { content:"#"}
/* header for the dayCol
*/
.calendar_calDayColHeader,.calendar_calGridHeader,.calendar_calGridHeader > div {
font-size: 100%;
line-height: 16px;
}
.calendar_calDayColHeader {
display: inline-block;
position: relative;
vertical-align: top;
border-right: 1px solid silver;
height: initial;
min-height: 2em;
/* Nice transition when changing days in a week */
transition: width 1s ease-in-out;
z-index:30;
white-space: initial;
padding-bottom: 2ex;
}
.calendar_calDayColHeader > div[data-date] {
height: 16px;
text-align: center;
border-bottom: 1px solid silver;
}
/* Indicators for offscreen events */
.calendar_calDayColHeader .hiddenEventBefore, .calendar_calDayCol .hiddenEventAfter {
width: 80%;
left: 10%;
position: absolute;
border-radius: 5px;
border: 6px solid;
border-left: 0px;
border-right: 0px;
overflow: hidden;
z-index: 40;
}
.calendar_calDayColHeader .hiddenEventBefore {
height: 4px;
bottom: -7px;
border-top: none;
}
.calendar_calDayColHeader .hiddenEventBefore:hover {
bottom: -20px;
height: 16px;
border-left: 1px;
border-right: 1px;
border-top-left-radius: 0px;
background-color: white;
}
.calendar_calDayCol .hiddenEventAfter {
border-bottom: none;
height: 6px;
}
.calendar_calDayCol .hiddenEventAfter:hover {
margin-top: -20px;
height: 20px;
background-color: white;
}
.calendar_calDayColAllDay {
display: flex;
flex-wrap: wrap;
flex-direction: row;
align-items:flex-start;
width: 100%;
}
.calendar_calDayColAllDay > .calendar_calEventBodySmall {
white-space: nowrap;
}
.calendar_calGridHeader > div {
position: relative;
height: 100%;
margin-left: 55px;
width: initial;
white-space: nowrap;
border-left: 1px solid silver;
display:flex;
align-items: stretch;
}
.calendar_calGridHeader > label {
float: left;
}
.calendar_TimeGridNoLabel > .calendar_calGridHeader > ul {
display: none;
}
.calendar_calDayColHeader img {
vertical-align: middle;
}
.calendar_calWeekNavHeader,.calendar_calMonthNavHeader {
top: 0px;
left: 0px;
width: 100%;
right: 0px;
}
.calendar_calWeekNavHeader,.calendar_calMonthNavHeader img {
vertical-align: middle;
}
.calendar_calViewUserNameBox {
position: absolute;
top: -1px;
width: 95%;
text-align: left;
font-size: 120%;
white-space: nowrap;
border: 1px solid gray;
height: 17px;
left: -1px;
padding-top: 0px;
padding-left: 10px;
background: #dac0c0;
}
.calendar_calViewUserName {
font-weight: normal;
}
.calendar_calViewUserName:first-letter {
text-transform:uppercase;
}
.calendar_calViewUserNameFirst {
}
.calendar_calViewUserNameFirst:after {
content: ", ";
}
/* alarm_date widget disabled class
*/
.calendar_alarm_date_display {
display: none;
}
/*overwirte margin applied by egwGridView*/
.calendar_alarm_grid{
margin-left: 0 !important;
}
/* header of the time-grid, eg. for the weeks in the month-view (leftmost of the day-col-headers)
*/
.calendar_calGridHeader{
text-align: left;
padding-left: 3px;
z-index: 29;
border-bottom: 1px solid silver;
min-height: 2ex;
flex: 0 0 auto;
}
#calendar-view_view tbody.ui-sortable {
cursor: default;
}
#calendar-view_view tbody.ui-sortable .calendar_calGridHeader {
cursor: ns-resize;
}
#calendar-view_view tbody.ui-sortable-disabled .calendar_calGridHeader {
cursor: pointer;
}
/* contains (multiple) events's
*/
.calendar_calEventCol{
position: absolute;
top: 0px;
/* bottom: 0px; does NOT work in IE, IE needs height: 100%! */
height: 100%;
/* set via inline style on runtime:
* left:
* width:
*/
}
/* contains one event: header-row & -body
*/
.calendar_calEvent,.calendar_calEventPrivate{
position: absolute;
left: 0px;
right: 0px;
overflow: hidden;
z-index: 20;
border-width: 1px;
border-radius: 6px;
border-style: solid;
min-height: 1.2em;
min-width: 5px;
-moz-border-radius: 6px;
-webkit-border-radius: 6px;
/* It is important there are no CSS transitions, it breaks resize */
-webkit-transition:none;
-moz-transition: none !important;
-o-transition: none !important;
-ms-transition: none !important;
transition: none !important;
/* set via inline style on runtime:
* top: depending on startime
* height: depending on length
* border-color: depending on category
* background: depending on category (shade)
*
*/
border-color: #808080;
}
.calendar_calEvent:hover{
cursor: pointer;
}
/**
* User has not accepted the invitation
*/
.calendar_calEventUnknown {
border-color: white;
}
.calendar_calEventUnknown .calendar_calEventBody,
.calendar_calEventUnknown .calendar_calEventBodySmall {
background-color: white !important;
}
/**
* All participants accepted the invitation
*/
.calendar_calEventAllAccepted {
border-style: solid;
border-width: 1px;
}
/**
* All participants answered the invitation, but not all accepted
*/
.calendar_calEventAllAnswered {
border-style: dotted;
border-width: 2px;
border-color: white;
}
/**
* Some participants did NOT answer the invitation
*/
.calendar_calEventSomeUnknown:not(.calendar_calEventUnknown) {
border-style: dashed;
border-width: 1px;
border-color: white;
}
.calendar_calEvent:not([class*="cat_"]) {
/* Defaults for no category, so we don't override it */
background-color: #808080;
}
/**
* Events in the header (all day)
*/
.calendar_calDayColHeader .calendar_calEvent {
position: static;
display: inline-block;
white-space: nowrap;
/* This determines how many per line */
flex: 1 1 auto;
}
.calendar_calDayColHeader .calendar_calEvent .calendar_calEventBody {
white-space: nowrap;
}
.calendar_calEventTooltip{
border-radius: 6px;
-moz-border-radius: 6px;
-webkit-border-radius: 6px;
max-height: 400px;
min-width: 25ex;
overflow: auto;
}
.calendar_calEventTooltip .calendar_calEventBodySmall {
padding-bottom: 1em;
}
.calendar_calAddEvent{
width: 100%;
z-index: 10;
}
.calendar_calAddEvent:hover{
background-color: #D2D7FF;
cursor: pointer;
}
/* header-row of the event
*/
.calendar_calEventHeader,.calendar_calEventHeaderSmall{
position: relative; /* as the calendar_calEventIcons use postion: absolute! */
font-weight: bold;
text-align: left;
left: 0px;
right: 0px;
padding-left: 2px;
min-height: 1em;
overflow: hidden;
/* set via inline style on runtime
* background-color: depending on category
* color: white || black depending on cat;
*/
background-color: #808080;
}
.calendar_calEventHeaderSmall{
font-size: 8pt;
line-height: 10pt;
}
.calendar_calEventIcons{
position: absolute;
right: 0px;
top: 0px;
}
.calendar_calEventIcons img{
height: 13px;
}
.calendar_calEventHeaderSmall .calendar_calEventIcons img{
height: 13px;
}
/* body of the event
*/
.calendar_calEventBody,.calendar_calEventBodySmall{
padding: 0px 3px 0px;
left: 2px;
right: 2px;
height: 99%;
white-space: normal;
/* Gradient */
background-image: -webkit-linear-gradient(0deg, rgba(255,255,255,0) 0, rgba(255,255,255,0.85) 60%);
background-image: -moz-linear-gradient(90deg, rgba(255,255,255,0) 0, rgba(255,255,255,0.85) 60%);
background-image: linear-gradient(90deg, rgba(255,255,255,0) 0, rgba(255,255,255,0.85) 60%);
background-position: 50% 50%;
-webkit-background-origin: padding-box;
background-origin: padding-box;
-webkit-background-clip: border-box;
background-clip: border-box;
-webkit-background-size: auto auto;
background-size: auto auto;
}
.calendar_calEventBody > p, .calendar_calEventBodySmall > p {
white-space: pre-wrap;
}
.calendar_calEventBodySmall{
font-size: 95%;
}
.calendar_calEventLabel{
font-weight: bold;
font-size: 90%;
}
.calendar_calEventTitle{
font-weight: bold;
}
/* table of the dayView containing 2 cols: 1) day-view, 2) todos
*/
.calendar_calDayView{
width: 100%;
}
/* calDayTods is the day-view's todo column, containing the calDayTodoHeader and the calDayTodoTable
*/
.calendar_calDayTodos .calendar_calDayTodosHeader {
margin: 0px;
padding: 2px;
font-weight: bold;
}
.calendar_calDayTodos .calendar_calDayTodosTable {
overflow: auto;
max-height: 400px;
}
.calendar_calDayTodos {
width: 98%;
margin-left: 10px;
border: 1px solid silver;
}
.calendar_calDayTodosHeader {
text-align: center;
}
/******************************************************
* CSS settings for the planner views (calendar_plannerWidget) *
******************************************************/
/* calendar_plannerWidget represents the whole planner, consiting of the calendar_plannerHeader and multiple plannerRowWidgets
*/
.calendar_plannerWidget {
position: relative;
top: 0px;
left: 0px;
width: 99.5%;
border: 1px solid gray;
padding-right: 3px;
}
.calendar_plannerWidget > div:not(.calendar_plannerHeader) {
overflow-y: auto;
overflow-x: hidden;
}
/* calendar_plannerHeader contains a calendar_plannerHeaderTitle and multiple calendar_plannerHeaderRows
*/
.calendar_plannerHeader {
position: relative;
top: 0px;
left: 0px;
background-color: #e0e0e0;
}
/* calendar_plannerRowWidget contains a calendar_plannerRowHeader and multiple eventRowWidgets in an calendar_eventRows
*/
.calendar_plannerRowWidget {
position: relative;
top: 0px;
left: 0px;
width: 100%;
min-height: 20px;
}
.calendar_plannerRowWidget:nth-child(odd) {
background-color: #ffffff;
}
.calendar_plannerRowWidget:nth-child(even) {
background-color: #f2f2f2;
}
.calendar_plannerRowWidget:hover {
background-color: rgba(103, 159, 210, 0.2);
}
/* calendar_plannerScale represents a scale-row of the calendar_plannerHeader, containing multiple planner{Day|Week|Month}Scales
*/
.calendar_plannerScale,.calendar_plannerScaleDay {
position: relative;
top: 0px;
left: 0%;
width: 100%;
height: 20px;
line-height: 20px;
}
.calendar_plannerScaleDay {
height: 28px;
line-height: 14px;
}
.calendar_plannerDayScale,.calendar_plannerMonthScale,.calendar_plannerWeekScale,.calendar_plannerHourScale,.calendar_plannerDayOfMonthScale {
position: absolute;
top: 0px;
/* left+width: is set by the code on runtime */
text-align: center;
height: 100%;
border: 1px solid white;
/* set via inline style on runtime:
* left:
* width:
*/
}
.calendar_plannerHourScale {
font-size: 90%;
}
.calendar_plannerDayScale {
font-size: 90%;
}
.calendar_plannerWeekScale {
line-height: 20px;
}
.calendar_plannerMonthScale {
font-weight: bold;
}
.calendar_plannerDayScale img,.calendar_plannerWeekScale img,.calendar_plannerMonthScale img,.calendar_plannerDayOfMonthScale img {
vertical-align: middle;
}
/* calendar_plannerRowHeader contains the user or category name of the calendar_plannerRowWidget
*/
.calendar_plannerRowHeader, .calendar_plannerHeaderTitle {
position: absolute;
top: 0px;
left: 0%;
width: 100%;
height: 100%;
line-height: 20px;
border-right: 1px solid white;
text-overflow: ellipsis;
white-space:nowrap;
overflow:hidden;
}
.calendar_plannerRowHeader:hover {
width: initial !important;
overflow:visible;
z-index: 30;
background-color: white;
}
/* calendar_eventRows contain multiple eventRowWidgets
*/
.calendar_eventRows, .calendar_plannerHeaderRows {
position: relative;
top: 0px;
left: 15%; /* need to be identical for calendar_eventRows and calendar_plannerHeaderRows and match width of calendar_plannerRowHeader/calendar_plannerHeaderTitle */
width: 85%;
min-height: 20px;
height: 100%;
}
.calendar_eventRows {
margin-left: 2px;
}
.calendar_plannerWidget .verticalBar {
width: 8ex;
height: 100%;
position: absolute;
top: 0px;
border-right: 1px dotted;
pointer-events: none;
z-index: 40;
}
.calendar_plannerWidget .verticalBar > span {
position: absolute;
bottom: 0px;
right: 0px;
background-color: rgba(255,255,255,.8);
}
/**
* Filler for month with less then 31 days in yearly planner
*/
.calendar_eventRowsFiller {
position: absolute;
top: 0px;
height: 93%;
background-color: white;
border: 1px dashed gray;
border-right: none;
}
/**
* Weekend or other special days in yearly planner
*/
.calendar_eventRowsMarkedDay {
position: absolute;
top: 0px;
height: 100%;
z-index: 10;
}
.calendar_eventRowsMarkedDay.calendar_weekend {
background-color: #e0e0e0;
}
/* calendar_eventRowWidget contains non-overlapping events
*/
.calendar_eventRowWidget {
position: relative;
top: 0px;
left: 0px;
width: 100%;
height: 20px;
border: 1px solid white;
}
.calendar_plannerEvent,.calendar_plannerEventPrivate{
position: absolute;
top: 0px;
height: 100%;
overflow: hidden;
z-index: 20;
border: 1px solid black;
min-width: 5px;
/* set via inline style on runtime:
* left: depending on startime
* width: depending on length
* background-color: depending on category
*/
}
.calendar_plannerEvent img,.calendar_plannerEventPrivate img {
padding-top: 2px;
}
.calendar_plannerEvent:hover{
cursor: pointer;
}
/* Special colors for the year view */
.calendar_cal_year_legend_weekend {
background-color: #CCCCCC;
}
.calendar_cal_year_legend {
background-color: #EFEFEF;
}
.calendar_cal_year_legend {
background-color: #FFFFCC;
z-index: 0;
}
.calendar_cal_year_weekend {
background-color: #F9F9CC;
z-index: 0;
}
.calendar_cal_year_today {
border-color: #EE0000;
border-width: 2px;
}
/**
* edit series or exception popup used in eventWidget and
* delete series and exceptions popup used in edit event
*/
#dialog-content {
display:block;
height:100px;
padding:6px;
color:#666666;
font-size:13px;
margin: -2px -1px 0px -2px;
width:410px;
}
/**
* Calendar Drag and Drop
* Class for div to show forbiden drop
*/
.calendar_d-n-d_timeCounter > span {
position: absolute;
background-color: #808080;
color: white;
left: 0;
width: 100% !important;
align: center;
border: dashed white 1px;
border-radius: 1px;
}
.calendar_timeDemo {
position: absolute;
bottom: 0;
left: 0;
background-color: #808080;
color: white;
width: 100%;
min-width: 5em;
align: center;
border:dashed white 1px;
border-radius: 1px;
}
.calendar_d-n-d_forbiden
{
background-color: red;
height: 100%;
width: 100%;
text-align: center;
}
/*Class for div to demonstrate dragging time*/
.calendar_d-n-d_timeCounter
{
font-size: 1.1em;
font-weight: bold;
text-align: center;
}
.calendar_d-n-d_timeCounter .loading
{
width: 16px;
height: 16px;
position: absolute;
bottom: 0px;
right: 0px;
}
#calendar-edit_action {
width: 10em;
padding-left: 10px;
margin-left: 5px;
}
#calendar-list_undelete_popup, #calendar-list_delete_popup {
display: none;
}
.calendar_freetime_header { font-size: 120%; font-weight: bold; }
.calendar_freetime_timeframe { position: relative;}
.calendar_freetime_dow { position: absolute; }
img.calendar_print_button, img.calendar_print_appicon {
height: 24px;
width: 24px;
}
/*Sortable views*/
.srotable_cal_wk_ph {
border: 2px dashed gray;
height: 230px;
width: 99%;
background-color: #ece2f7;
}
.srotable_cal_day_ph {
position: relative;
width: 33.333333%;
height: 99%;
border: 2px dashed gray;
background-color: #ece2f7;
display: inline-block;
}
/**
* View animation stuff
*/
.calendar_slide {
/* There is a cleanup timeout in calendar app.js line 563 that must match */
transition-duration: 2s;
transition-delay: 50ms;
}
/**
* Home page portlets
*/
.calendar_favorite_portlet .calendar_calMonthNavHeader a img,
.calendar_favorite_portlet .calendar_calWeekNavHeader a img,
.calendar_favorite_portlet .calendar_calDayColHeader a img,
.calendar_favorite_portlet .calendar_plannerScale a img{
display: none;
}
#calendar-edit select#calendar-edit_duration {
width: 133px;
}
#calendar-edit_category {
max-width:230px;
}
#calendar_sidebox_content .ui-datepicker div.ui-datepicker-buttonpane {
border-top: 0;
margin: 0;
padding-right: 3px;
}
#calendar-sidebox_buttons .sideboxstar .slideSwitch_container {
width: 36px;
height: 13px;
}