You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
995 lines
14 KiB
995 lines
14 KiB
3 years ago
|
/* ------------------------------------------------------------------------------
|
||
|
*
|
||
|
* # FullCalendar
|
||
|
*
|
||
|
* A JavaScript event calendar. Customizable and open source
|
||
|
*
|
||
|
* Version: 1.2
|
||
|
* Latest update: Mar 10, 2016
|
||
|
*
|
||
|
* ---------------------------------------------------------------------------- */
|
||
|
|
||
|
|
||
|
// Layout
|
||
|
// ------------------------------
|
||
|
|
||
|
// Container
|
||
|
.fc {
|
||
|
direction: ltr;
|
||
|
text-align: left;
|
||
|
}
|
||
|
|
||
|
// Calendar view
|
||
|
.fc-view {
|
||
|
> table {
|
||
|
min-width: @screen-sm;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Events container
|
||
|
.fc-events-container {
|
||
|
background-color: #fcfcfc;
|
||
|
border: 1px solid @panel-inner-border;
|
||
|
padding: 10px;
|
||
|
border-radius: @border-radius-base;
|
||
|
|
||
|
.fc-event {
|
||
|
margin: 0;
|
||
|
padding: 4px @padding-small-horizontal;
|
||
|
|
||
|
+ .fc-event {
|
||
|
margin-top: 10px;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// Colors
|
||
|
// ------------------------------
|
||
|
|
||
|
// Default theme
|
||
|
.fc-unthemed {
|
||
|
th,
|
||
|
td,
|
||
|
hr,
|
||
|
thead,
|
||
|
tbody,
|
||
|
.fc-row,
|
||
|
.fc-popover {
|
||
|
border-color: @panel-default-border;
|
||
|
}
|
||
|
|
||
|
// Change bottom border color
|
||
|
thead,
|
||
|
thead td,
|
||
|
thead th {
|
||
|
border-bottom-color: @table-border-highlight;
|
||
|
}
|
||
|
|
||
|
// Horizontal rule
|
||
|
hr {
|
||
|
background-color: #f5f5f5;
|
||
|
}
|
||
|
|
||
|
// Popover
|
||
|
.fc-popover {
|
||
|
background-color: #fff;
|
||
|
border-radius: @border-radius-base;
|
||
|
|
||
|
.fc-header {
|
||
|
background-color: #f5f5f5;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Highlight today's date
|
||
|
.fc-today {
|
||
|
background-color: @color-success-50;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// When user is selecting cells
|
||
|
.fc-highlight {
|
||
|
background-color: #e5e5e5;
|
||
|
.opacity(0.3);
|
||
|
}
|
||
|
|
||
|
// Default look for background events
|
||
|
.fc-bgevent {
|
||
|
background-color: @color-success-300;
|
||
|
.opacity(0.3);
|
||
|
}
|
||
|
|
||
|
// Default look for non-business-hours areas
|
||
|
.fc-nonbusiness {
|
||
|
background-color: #ccc;
|
||
|
}
|
||
|
|
||
|
|
||
|
// Icons
|
||
|
// ------------------------------
|
||
|
|
||
|
// Icon base
|
||
|
.fc-icon {
|
||
|
display: block;
|
||
|
|
||
|
// Icon base
|
||
|
&:after {
|
||
|
display: inline-block;
|
||
|
font-family: "icomoon";
|
||
|
line-height: 1;
|
||
|
font-size: @icon-font-size;
|
||
|
vertical-align: middle;
|
||
|
position: relative;
|
||
|
top: -1px;
|
||
|
-webkit-font-smoothing: antialiased;
|
||
|
-moz-osx-font-smoothing: grayscale;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Arrow icons
|
||
|
.fc-icon-left-single-arrow:after {
|
||
|
content: "\e9c0";
|
||
|
}
|
||
|
.fc-icon-right-single-arrow:after {
|
||
|
content: "\e9c3";
|
||
|
}
|
||
|
.fc-icon-left-double-arrow:after {
|
||
|
content: "\000AB";
|
||
|
}
|
||
|
.fc-icon-right-double-arrow:after {
|
||
|
content: "\000BB";
|
||
|
}
|
||
|
|
||
|
// X icon
|
||
|
.fc-icon-x:after {
|
||
|
content: "\ed6b";
|
||
|
font-size: @font-size-small;
|
||
|
display: block;
|
||
|
}
|
||
|
|
||
|
|
||
|
// Buttons
|
||
|
// ------------------------------
|
||
|
|
||
|
// Base, identical to .btn-default
|
||
|
.fc-button {
|
||
|
margin: 0;
|
||
|
border: 1px solid @btn-default-border;
|
||
|
padding: @padding-base-vertical @padding-base-horizontal;
|
||
|
white-space: nowrap;
|
||
|
cursor: pointer;
|
||
|
outline: 0;
|
||
|
|
||
|
// Firefox has an annoying inner border
|
||
|
&::-moz-focus-inner {
|
||
|
margin: 0;
|
||
|
padding: 0;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
//
|
||
|
// Button states
|
||
|
//
|
||
|
|
||
|
// Default
|
||
|
.fc-state-default {
|
||
|
border: 1px solid @btn-default-border;
|
||
|
background-color: @btn-default-bg;
|
||
|
|
||
|
&.fc-corner-left {
|
||
|
.border-left-radius(@border-radius-base);
|
||
|
}
|
||
|
|
||
|
&.fc-corner-right {
|
||
|
.border-right-radius(@border-radius-base);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Hover
|
||
|
.fc-state-hover {
|
||
|
background-color: #f8f8f8;
|
||
|
}
|
||
|
|
||
|
// Active
|
||
|
.fc-state-down,
|
||
|
.fc-state-active {
|
||
|
background-color: #f5f5f5;
|
||
|
|
||
|
.fc-button& {
|
||
|
border-color: @btn-default-border;
|
||
|
.box-shadow(0 1px 3px fade(#000, 5%) inset);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Disabled
|
||
|
.fc-state-disabled {
|
||
|
color: @text-muted;
|
||
|
cursor: @cursor-disabled;
|
||
|
.opacity(0.65);
|
||
|
.box-shadow(none);
|
||
|
}
|
||
|
|
||
|
|
||
|
//
|
||
|
// Button groups
|
||
|
//
|
||
|
|
||
|
.fc-button-group {
|
||
|
display: inline-block;
|
||
|
|
||
|
.fc & {
|
||
|
> * {
|
||
|
float: left;
|
||
|
margin: 0 0 0 -1px;
|
||
|
}
|
||
|
|
||
|
> :first-child {
|
||
|
margin-left: 0;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// Popover
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-popover {
|
||
|
position: absolute;
|
||
|
border: 1px solid @panel-default-border;
|
||
|
.box-shadow(0 1px 5px fade(#000, 5%));
|
||
|
|
||
|
// Header
|
||
|
.fc-header {
|
||
|
padding: 10px;
|
||
|
|
||
|
.fc-close {
|
||
|
cursor: pointer;
|
||
|
}
|
||
|
}
|
||
|
.fc-ltr & {
|
||
|
.fc-header {
|
||
|
.fc-title {
|
||
|
float: left;
|
||
|
}
|
||
|
|
||
|
.fc-close {
|
||
|
float: right;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Unthemed
|
||
|
.fc-unthemed & {
|
||
|
.fc-header .fc-close {
|
||
|
margin-top: 2px;
|
||
|
.opacity(0.6);
|
||
|
|
||
|
&:hover {
|
||
|
.opacity(1);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// Misc reusable components
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc hr {
|
||
|
height: 0;
|
||
|
margin: 0;
|
||
|
padding: 0 0 2px; // height is unreliable across browsers, so use padding
|
||
|
border-style: solid;
|
||
|
border-width: 1px 0;
|
||
|
}
|
||
|
|
||
|
// Clear helper
|
||
|
.fc-clear {
|
||
|
clear: both;
|
||
|
}
|
||
|
|
||
|
.fc-bg,
|
||
|
.fc-bgevent-skeleton,
|
||
|
.fc-highlight-skeleton,
|
||
|
.fc-helper-skeleton {
|
||
|
position: absolute;
|
||
|
top: 0;
|
||
|
left: 0;
|
||
|
right: 0;
|
||
|
}
|
||
|
|
||
|
.fc-bg {
|
||
|
bottom: 0; // strech bg to bottom edge
|
||
|
|
||
|
table {
|
||
|
height: 100%; // strech bg to bottom edge
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// Tables
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc {
|
||
|
table {
|
||
|
width: 100%;
|
||
|
table-layout: fixed;
|
||
|
border-collapse: collapse;
|
||
|
border-spacing: 0;
|
||
|
}
|
||
|
|
||
|
th,
|
||
|
td {
|
||
|
border-style: solid;
|
||
|
border-width: 1px;
|
||
|
padding: 0;
|
||
|
vertical-align: top;
|
||
|
}
|
||
|
|
||
|
th {
|
||
|
padding: @table-cell-padding;
|
||
|
font-weight: 500;
|
||
|
text-align: center;
|
||
|
}
|
||
|
|
||
|
td.fc-today {
|
||
|
border-style: double; // overcome neighboring borders
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// Fake table rows
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-row {
|
||
|
border-style: solid;
|
||
|
border-width: 0;
|
||
|
position: relative;
|
||
|
|
||
|
table {
|
||
|
border-left: 0 hidden transparent;
|
||
|
border-right: 0 hidden transparent;
|
||
|
border-bottom: 0 hidden transparent;
|
||
|
}
|
||
|
|
||
|
&:first-child table {
|
||
|
border-top: 0 hidden transparent; // no top border on first row
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// Day row
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-row {
|
||
|
.fc-bg {
|
||
|
z-index: 1;
|
||
|
}
|
||
|
|
||
|
// Highlighting cells & background event skeleton
|
||
|
.fc-bgevent-skeleton,
|
||
|
.fc-highlight-skeleton {
|
||
|
bottom: 0;
|
||
|
|
||
|
table {
|
||
|
height: 100%;
|
||
|
}
|
||
|
|
||
|
td {
|
||
|
border-color: transparent;
|
||
|
border: 0;
|
||
|
}
|
||
|
}
|
||
|
.fc-bgevent-skeleton {
|
||
|
z-index: 2;
|
||
|
}
|
||
|
.fc-highlight-skeleton {
|
||
|
z-index: 3;
|
||
|
}
|
||
|
|
||
|
// Row content
|
||
|
.fc-content-skeleton,
|
||
|
.fc-helper-skeleton {
|
||
|
td {
|
||
|
background: none;
|
||
|
border-color: transparent;
|
||
|
border-bottom: 0;
|
||
|
}
|
||
|
|
||
|
// Cells with events inside (so NOT the day number cell)
|
||
|
tbody td {
|
||
|
border-top: 0;
|
||
|
}
|
||
|
}
|
||
|
.fc-content-skeleton {
|
||
|
position: relative;
|
||
|
z-index: 4;
|
||
|
}
|
||
|
.fc-helper-skeleton {
|
||
|
z-index: 5;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// Scrolling container
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-scroller {
|
||
|
overflow-y: scroll;
|
||
|
overflow-x: hidden;
|
||
|
|
||
|
// We expect an immediate inner element
|
||
|
> * {
|
||
|
position: relative;
|
||
|
width: 100%;
|
||
|
overflow: hidden;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// Global event styles
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-event {
|
||
|
position: relative; // for resize handle and other inner positioning
|
||
|
display: block; // make the <a> tag block
|
||
|
border: 1px solid @color-blue-600; // default BORDER color
|
||
|
background-color: @color-blue-600; // default BACKGROUND color
|
||
|
font-weight: normal;
|
||
|
border-radius: @border-radius-small;
|
||
|
|
||
|
&,
|
||
|
&:hover {
|
||
|
color: #fff; // default TEXT color
|
||
|
text-decoration: none; // if <a> has an href
|
||
|
}
|
||
|
|
||
|
// Give events with links and draggable events a hand mouse pointer
|
||
|
&[href],
|
||
|
&.fc-draggable {
|
||
|
cursor: pointer;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Override an event's custom cursor
|
||
|
.fc-not-allowed {
|
||
|
&,
|
||
|
.fc-event {
|
||
|
cursor: @cursor-disabled;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// DayGrid events
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-day-grid-event {
|
||
|
margin: 0 5px 5px 5px;
|
||
|
padding: 4px 8px;
|
||
|
|
||
|
// force events to be one-line tall
|
||
|
> .fc-content {
|
||
|
white-space: nowrap;
|
||
|
overflow: hidden;
|
||
|
text-overflow: ellipsis;
|
||
|
}
|
||
|
|
||
|
// make the time semibold
|
||
|
.fc-time {
|
||
|
font-weight: 500;
|
||
|
}
|
||
|
|
||
|
// resize handle
|
||
|
.fc-resizer {
|
||
|
position: absolute;
|
||
|
top: 0;
|
||
|
bottom: 0;
|
||
|
width: 7px;
|
||
|
}
|
||
|
|
||
|
// LTR
|
||
|
.fc-ltr & {
|
||
|
.fc-resizer {
|
||
|
right: -3px;
|
||
|
cursor: e-resize;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
@media (min-width: @screen-lg-min) {
|
||
|
> .fc-content {
|
||
|
background-color: inherit;
|
||
|
}
|
||
|
|
||
|
.fc-time {
|
||
|
float: right;
|
||
|
padding-left: 5px;
|
||
|
display: inline-block;
|
||
|
z-index: 2;
|
||
|
position: relative;
|
||
|
background-color: inherit;
|
||
|
}
|
||
|
|
||
|
.fc-title {
|
||
|
z-index: 1;
|
||
|
position: relative;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// Event limiting
|
||
|
// ------------------------------
|
||
|
|
||
|
// "More" link
|
||
|
a.fc-more {
|
||
|
margin: 1px 5px;
|
||
|
background-color: #fafafa;
|
||
|
display: block;
|
||
|
padding: 5px;
|
||
|
text-align: center;
|
||
|
border-radius: @border-radius-base;
|
||
|
color: @gray-light;
|
||
|
font-size: @font-size-small;
|
||
|
|
||
|
&:hover {
|
||
|
background-color: #f5f5f5;
|
||
|
color: @text-color;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Rows and cells that are hidden because of a "more" link
|
||
|
.fc-limited {
|
||
|
display: none;
|
||
|
}
|
||
|
|
||
|
// Popover that appears when "more" link is clicked
|
||
|
.fc-day-grid .fc-row {
|
||
|
z-index: 1;
|
||
|
}
|
||
|
.fc-more-popover {
|
||
|
z-index: 2;
|
||
|
width: 220px;
|
||
|
|
||
|
.fc-event-container {
|
||
|
padding: 10px 5px;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// Toolbar
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-toolbar {
|
||
|
text-align: center;
|
||
|
margin-bottom: @line-height-computed;
|
||
|
|
||
|
// Title text
|
||
|
h2 {
|
||
|
margin: 5px 0;
|
||
|
font-size: @font-size-h5;
|
||
|
}
|
||
|
|
||
|
// Left
|
||
|
.fc-left {
|
||
|
float: left;
|
||
|
width: 33%;
|
||
|
}
|
||
|
|
||
|
// Right
|
||
|
.fc-right {
|
||
|
float: right;
|
||
|
width: 33%;
|
||
|
|
||
|
.fc-button-group {
|
||
|
float: right;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Left/right buttons
|
||
|
.fc-left,
|
||
|
.fc-right {
|
||
|
> .fc-button {
|
||
|
margin-left: 10px;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Center
|
||
|
.fc-center {
|
||
|
display: inline-block;
|
||
|
vertical-align: middle;
|
||
|
}
|
||
|
|
||
|
// The things within each left/right/center section
|
||
|
> * {
|
||
|
> * {
|
||
|
float: left;
|
||
|
}
|
||
|
|
||
|
// The first thing within each left/center/right section
|
||
|
> :first-child {
|
||
|
margin-left: 0;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Button layering (for border precedence)
|
||
|
button {
|
||
|
position: relative;
|
||
|
|
||
|
&:focus {
|
||
|
z-index: 5;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// States
|
||
|
.fc-state-hover,
|
||
|
.ui-state-hover {
|
||
|
z-index: 2;
|
||
|
}
|
||
|
.fc-state-down {
|
||
|
z-index: 3;
|
||
|
}
|
||
|
.fc-state-active,
|
||
|
.ui-state-active {
|
||
|
z-index: 4;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// View structure
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-view-container {
|
||
|
border-left: 1px solid @panel-default-border;
|
||
|
border-right: 1px solid @panel-default-border;
|
||
|
overflow: auto;
|
||
|
max-width: 100%;
|
||
|
|
||
|
// Remove borders from table cells
|
||
|
.fc-view > table {
|
||
|
|
||
|
// Right border
|
||
|
th,
|
||
|
td {
|
||
|
border-right-width: 0;
|
||
|
}
|
||
|
|
||
|
// Left border from first cell
|
||
|
tr:first-child {
|
||
|
th:first-child,
|
||
|
td:first-child {
|
||
|
border-left-width: 0;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Change box sizing
|
||
|
* {
|
||
|
&,
|
||
|
&:before,
|
||
|
&:after {
|
||
|
.box-sizing(content-box);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Scope positioning and z-index's
|
||
|
.fc-view {
|
||
|
&,
|
||
|
> table {
|
||
|
position: relative;
|
||
|
z-index: 1;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// BasicView
|
||
|
// ------------------------------
|
||
|
|
||
|
// Day row structure
|
||
|
.fc-basicWeek-view,
|
||
|
.fc-basicDay-view {
|
||
|
.fc-content-skeleton {
|
||
|
padding-top: 5px;
|
||
|
padding-bottom: 10px;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Rows
|
||
|
.fc-basic-view tbody .fc-row {
|
||
|
min-height: 100px; // ensure that all rows are at least this tall
|
||
|
min-width: 100px;
|
||
|
}
|
||
|
|
||
|
// A "rigid" row will take up a constant amount of height
|
||
|
// because content-skeleton is absolute
|
||
|
.fc-row.fc-rigid {
|
||
|
overflow: hidden;
|
||
|
|
||
|
.fc-content-skeleton {
|
||
|
position: absolute;
|
||
|
top: 0;
|
||
|
left: 0;
|
||
|
right: 0;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Week and day number styling
|
||
|
.fc-basic-view {
|
||
|
|
||
|
// Week and day
|
||
|
.fc-week-number,
|
||
|
.fc-day-number {
|
||
|
padding: 10px;
|
||
|
}
|
||
|
|
||
|
// Week number only
|
||
|
.fc-week-number {
|
||
|
text-align: center;
|
||
|
|
||
|
span {
|
||
|
display: inline-block;
|
||
|
min-width: 1.25em;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Day number only
|
||
|
.fc-day-number {
|
||
|
text-align: right;
|
||
|
|
||
|
&.fc-other-month {
|
||
|
.opacity(0.3);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// AgendaView all-day area
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-agenda-view {
|
||
|
.fc-day-grid {
|
||
|
position: relative;
|
||
|
z-index: 2;
|
||
|
|
||
|
.fc-row {
|
||
|
min-height: 3em;
|
||
|
|
||
|
.fc-content-skeleton {
|
||
|
padding-top: 5px;
|
||
|
padding-bottom: 0;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// TimeGrid axis
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-axis {
|
||
|
text-align: right;
|
||
|
|
||
|
.fc & {
|
||
|
vertical-align: middle;
|
||
|
padding: 10px;
|
||
|
white-space: nowrap;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// TimeGrid structure
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-time-grid-container,
|
||
|
.fc-time-grid {
|
||
|
position: relative;
|
||
|
z-index: 1;
|
||
|
}
|
||
|
|
||
|
.fc-time-grid {
|
||
|
min-height: 100%;
|
||
|
|
||
|
table {
|
||
|
border: 0 hidden transparent;
|
||
|
}
|
||
|
|
||
|
> .fc-bg {
|
||
|
z-index: 1;
|
||
|
}
|
||
|
|
||
|
.fc-slats,
|
||
|
> hr {
|
||
|
position: relative;
|
||
|
z-index: 2;
|
||
|
}
|
||
|
|
||
|
.fc-bgevent-skeleton,
|
||
|
.fc-content-skeleton {
|
||
|
position: absolute;
|
||
|
top: 0;
|
||
|
left: 0;
|
||
|
right: 0;
|
||
|
}
|
||
|
.fc-bgevent-skeleton {
|
||
|
z-index: 3;
|
||
|
}
|
||
|
.fc-highlight-skeleton {
|
||
|
z-index: 4;
|
||
|
}
|
||
|
.fc-content-skeleton {
|
||
|
z-index: 5;
|
||
|
}
|
||
|
.fc-helper-skeleton {
|
||
|
z-index: 6;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// TimeGrid slats
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-slats {
|
||
|
td {
|
||
|
border-bottom: 0;
|
||
|
}
|
||
|
|
||
|
.fc-minor td {
|
||
|
border-top-style: dotted;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// TimeGrid highlighting slots
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-time-grid {
|
||
|
.fc-highlight-container {
|
||
|
position: relative;
|
||
|
}
|
||
|
|
||
|
.fc-highlight {
|
||
|
position: absolute;
|
||
|
left: 0;
|
||
|
right: 0;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// TimeGrid event containment
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-time-grid {
|
||
|
.fc-event-container,
|
||
|
.fc-bgevent-container {
|
||
|
position: relative;
|
||
|
}
|
||
|
|
||
|
.fc-event,
|
||
|
.fc-bgevent {
|
||
|
position: absolute;
|
||
|
z-index: 1;
|
||
|
margin: 5px;
|
||
|
padding: 10px;
|
||
|
min-height: 45px;
|
||
|
.box-shadow(0 0 0 1px #fff);
|
||
|
}
|
||
|
|
||
|
.fc-bgevent {
|
||
|
left: 0;
|
||
|
right: 0;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// TimeGrid event styling
|
||
|
// ------------------------------
|
||
|
|
||
|
.fc-time-grid-event {
|
||
|
overflow: hidden;
|
||
|
|
||
|
// Events that are continuing from another day
|
||
|
&.fc-not-start {
|
||
|
border-top-width: 0;
|
||
|
padding-top: 1px;
|
||
|
.border-top-radius(0);
|
||
|
}
|
||
|
&.fc-not-end {
|
||
|
border-bottom-width: 0;
|
||
|
padding-bottom: 1px;
|
||
|
.border-bottom-radius(0);
|
||
|
}
|
||
|
|
||
|
// Contains the time and title, but no bg and resizer
|
||
|
> .fc-content {
|
||
|
position: relative;
|
||
|
z-index: 2;
|
||
|
}
|
||
|
|
||
|
// Time font weight
|
||
|
.fc-time {
|
||
|
font-weight: 500;
|
||
|
}
|
||
|
|
||
|
// Short mode, where time and title are on the same line
|
||
|
&.fc-short {
|
||
|
.fc-content {
|
||
|
white-space: nowrap;
|
||
|
}
|
||
|
|
||
|
.fc-time,
|
||
|
.fc-title {
|
||
|
display: inline-block;
|
||
|
vertical-align: top;
|
||
|
}
|
||
|
|
||
|
.fc-time {
|
||
|
&:before {
|
||
|
content: attr(data-start);
|
||
|
}
|
||
|
&:after {
|
||
|
content: "\000A0-\000A0";
|
||
|
}
|
||
|
|
||
|
span {
|
||
|
display: none;
|
||
|
}
|
||
|
}
|
||
|
.fc-title {
|
||
|
font-size: .85em;
|
||
|
padding: 0;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Resizer
|
||
|
.fc-resizer {
|
||
|
position: absolute;
|
||
|
z-index: 3;
|
||
|
left: 0;
|
||
|
right: 0;
|
||
|
bottom: 0;
|
||
|
height: 8px;
|
||
|
overflow: hidden;
|
||
|
line-height: 10px;
|
||
|
font-size: @font-size-small;
|
||
|
font-family: monospace;
|
||
|
text-align: center;
|
||
|
cursor: s-resize;
|
||
|
background-color: fade(#000, 5%);
|
||
|
padding: 1px;
|
||
|
|
||
|
&:hover {
|
||
|
background-color: fade(#000, 10%);
|
||
|
}
|
||
|
|
||
|
&:after {
|
||
|
content: "=";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// Responsive stuff
|
||
|
// ------------------------------
|
||
|
|
||
|
@media (max-width: @screen-xs-max) {
|
||
|
.fc-toolbar {
|
||
|
.fc-left,
|
||
|
.fc-left > .fc-button,
|
||
|
.fc-right,
|
||
|
.fc-right > .fc-button,
|
||
|
.fc-left .fc-button-group,
|
||
|
.fc-right .fc-button-group {
|
||
|
float: none;
|
||
|
width: auto;
|
||
|
vertical-align: top;
|
||
|
}
|
||
|
|
||
|
.fc-left,
|
||
|
.fc-right {
|
||
|
display: block;
|
||
|
margin-bottom: 10px;
|
||
|
}
|
||
|
}
|
||
|
}
|