Complete Phase 2 PC migration and network device infrastructure updates
This commit captures 20 days of development work (Oct 28 - Nov 17, 2025) including Phase 2 PC migration, network device unification, and numerous bug fixes and enhancements. ## Major Changes ### Phase 2: PC Migration to Unified Machines Table - Migrated all PCs from separate `pc` table to unified `machines` table - PCs identified by `pctypeid IS NOT NULL` in machines table - Updated all display, add, edit, and update pages for PC functionality - Comprehensive testing: 15 critical pages verified working ### Network Device Infrastructure Unification - Unified network devices (Switches, Servers, Cameras, IDFs, Access Points) into machines table using machinetypeid 16-20 - Updated vw_network_devices view to query both legacy tables and machines table - Enhanced network_map.asp to display all device types from machines table - Fixed location display for all network device types ### Machine Management System - Complete machine CRUD operations (Create, Read, Update, Delete) - 5-tab interface: Basic Info, Network, Relationships, Compliance, Location - Support for multiple network interfaces (up to 3 per machine) - Machine relationships: Controls (PC→Equipment) and Dualpath (redundancy) - Compliance tracking with third-party vendor management ### Bug Fixes (Nov 7-14, 2025) - Fixed editdevice.asp undefined variable (pcid → machineid) - Migrated updatedevice.asp and updatedevice_direct.asp to Phase 2 schema - Fixed network_map.asp to show all network device types - Fixed displaylocation.asp to query machines table for network devices - Fixed IP columns migration and compliance column handling - Fixed dateadded column errors in network device pages - Fixed PowerShell API integration issues - Simplified displaypcs.asp (removed IP and Machine columns) ### Documentation - Created comprehensive session summaries (Nov 10, 13, 14) - Added Machine Quick Reference Guide - Documented all bug fixes and migrations - API documentation for ASP endpoints ### Database Schema Updates - Phase 2 migration scripts for PC consolidation - Phase 3 migration scripts for network devices - Updated views to support hybrid table approach - Sample data creation/removal scripts for testing ## Files Modified (Key Changes) - editdevice.asp, updatedevice.asp, updatedevice_direct.asp - network_map.asp, network_devices.asp, displaylocation.asp - displaypcs.asp, displaypc.asp, displaymachine.asp - All machine management pages (add/edit/save/update) - save_network_device.asp (fixed machine type IDs) ## Testing Status - 15 critical pages tested and verified - Phase 2 PC functionality: 100% working - Network device display: 100% working - Security: All queries use parameterized commands ## Production Readiness - Core functionality complete and tested - 85% production ready - Remaining: Full test coverage of all 123 ASP pages 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
29
v2/assets/plugins/Chart.js/Chart.min.js
vendored
Normal file
29
v2/assets/plugins/Chart.js/Chart.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
224
v2/assets/plugins/Chart.js/chartjs-script.js
Normal file
224
v2/assets/plugins/Chart.js/chartjs-script.js
Normal file
@@ -0,0 +1,224 @@
|
||||
|
||||
(function(window, document, $, undefined) {
|
||||
"use strict";
|
||||
$(function() {
|
||||
|
||||
if ($('#lineChart').length) {
|
||||
|
||||
var ctx = document.getElementById('lineChart').getContext('2d');
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: {
|
||||
labels: ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su'],
|
||||
datasets: [{
|
||||
label: 'Google',
|
||||
data: [13, 20, 4, 18, 7, 4, 8],
|
||||
backgroundColor: "rgb(255, 255, 255)",
|
||||
borderColor: "transparent",
|
||||
pointRadius :"0",
|
||||
borderWidth: 1
|
||||
}, {
|
||||
label: 'Facebook',
|
||||
data: [3, 30, 6, 6, 3, 4, 11],
|
||||
backgroundColor: "rgba(255, 255, 255, 0.25)",
|
||||
borderColor: "transparent",
|
||||
pointRadius :"0",
|
||||
borderWidth: 1
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
legend: {
|
||||
display: true,
|
||||
labels: {
|
||||
fontColor: '#ddd',
|
||||
boxWidth:40
|
||||
}
|
||||
},
|
||||
tooltips: {
|
||||
enabled:false
|
||||
},
|
||||
scales: {
|
||||
xAxes: [{
|
||||
ticks: {
|
||||
beginAtZero:true,
|
||||
fontColor: '#ddd'
|
||||
},
|
||||
gridLines: {
|
||||
display: true ,
|
||||
color: "rgba(221, 221, 221, 0.08)"
|
||||
},
|
||||
}],
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero:true,
|
||||
fontColor: '#ddd'
|
||||
},
|
||||
gridLines: {
|
||||
display: true ,
|
||||
color: "rgba(221, 221, 221, 0.08)"
|
||||
},
|
||||
}]
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
if ($('#barChart').length) {
|
||||
var ctx = document.getElementById("barChart").getContext('2d');
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'bar',
|
||||
data: {
|
||||
labels: ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su'],
|
||||
datasets: [{
|
||||
label: 'Google',
|
||||
data: [13, 20, 4, 18, 29, 25, 8],
|
||||
backgroundColor: "rgba(255, 255, 255, 0.25)"
|
||||
}, {
|
||||
label: 'Facebook',
|
||||
data: [31, 30, 6, 6, 21, 4, 11],
|
||||
backgroundColor: "#fff"
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
legend: {
|
||||
display: true,
|
||||
labels: {
|
||||
fontColor: '#ddd',
|
||||
boxWidth:40
|
||||
}
|
||||
},
|
||||
tooltips: {
|
||||
enabled:false
|
||||
},
|
||||
scales: {
|
||||
xAxes: [{
|
||||
barPercentage: .5,
|
||||
ticks: {
|
||||
beginAtZero:true,
|
||||
fontColor: '#ddd'
|
||||
},
|
||||
gridLines: {
|
||||
display: true ,
|
||||
color: "rgba(221, 221, 221, 0.08)"
|
||||
},
|
||||
}],
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero:true,
|
||||
fontColor: '#ddd'
|
||||
},
|
||||
gridLines: {
|
||||
display: true ,
|
||||
color: "rgba(221, 221, 221, 0.08)"
|
||||
},
|
||||
}]
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if ($('#polarChart').length) {
|
||||
var ctx = document.getElementById("polarChart").getContext('2d');
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'polarArea',
|
||||
data: {
|
||||
labels: ["Lable1", "Lable2", "Lable3", "Lable4"],
|
||||
datasets: [{
|
||||
backgroundColor: [
|
||||
"rgba(255, 255, 255, 0.35)",
|
||||
"#ffffff",
|
||||
"rgba(255, 255, 255, 0.12)",
|
||||
"rgba(255, 255, 255, 0.71)"
|
||||
],
|
||||
data: [13, 20, 11, 18],
|
||||
borderWidth: [0, 0, 0, 0]
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
legend: {
|
||||
position :"right",
|
||||
display: true,
|
||||
labels: {
|
||||
fontColor: '#ddd',
|
||||
boxWidth:15
|
||||
}
|
||||
},
|
||||
scale: {
|
||||
gridLines: {
|
||||
color: "rgba(221, 221, 221, 0.12)"
|
||||
},
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
if ($('#pieChart').length) {
|
||||
var ctx = document.getElementById("pieChart").getContext('2d');
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'pie',
|
||||
data: {
|
||||
labels: ["Lable1", "Lable2", "Lable3", "Lable4"],
|
||||
datasets: [{
|
||||
backgroundColor: [
|
||||
"rgba(255, 255, 255, 0.35)",
|
||||
"#ffffff",
|
||||
"rgba(255, 255, 255, 0.12)",
|
||||
"rgba(255, 255, 255, 0.71)"
|
||||
],
|
||||
data: [13, 120, 11, 20],
|
||||
borderWidth: [0, 0, 0, 0]
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
legend: {
|
||||
position :"right",
|
||||
display: true,
|
||||
labels: {
|
||||
fontColor: '#ddd',
|
||||
boxWidth:15
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
if ($('#doughnutChart').length) {
|
||||
var ctx = document.getElementById("doughnutChart").getContext('2d');
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'doughnut',
|
||||
data: {
|
||||
labels: ["Lable1", "Lable2", "Lable3", "Lable4"],
|
||||
datasets: [{
|
||||
backgroundColor: [
|
||||
"rgba(255, 255, 255, 0.35)",
|
||||
"#ffffff",
|
||||
"rgba(255, 255, 255, 0.12)",
|
||||
"rgba(255, 255, 255, 0.71)"
|
||||
],
|
||||
data: [13, 120, 11, 20],
|
||||
borderWidth: [0, 0, 0, 0]
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
legend: {
|
||||
position :"right",
|
||||
display: true,
|
||||
labels: {
|
||||
fontColor: '#ddd',
|
||||
boxWidth:15
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
|
||||
})(window, document, window.jQuery);
|
||||
1293
v2/assets/plugins/fullcalendar/css/fullcalendar.css
Normal file
1293
v2/assets/plugins/fullcalendar/css/fullcalendar.css
Normal file
File diff suppressed because it is too large
Load Diff
887
v2/assets/plugins/fullcalendar/css/fullcalendar.min.css
vendored
Normal file
887
v2/assets/plugins/fullcalendar/css/fullcalendar.min.css
vendored
Normal file
@@ -0,0 +1,887 @@
|
||||
/*!
|
||||
* FullCalendar v3.9.0
|
||||
* Docs & License: https://fullcalendar.io/
|
||||
* (c) 2018 Adam Shaw
|
||||
*/
|
||||
|
||||
.fc button, .fc table, body .fc {
|
||||
font-size: 1em
|
||||
}
|
||||
.fc-bg, .fc-row .fc-bgevent-skeleton, .fc-row .fc-highlight-skeleton {
|
||||
bottom: 0
|
||||
}
|
||||
.fc-icon, .fc-unselectable {
|
||||
-webkit-touch-callout: none;
|
||||
-khtml-user-select: none
|
||||
}
|
||||
.fc {
|
||||
direction: ltr;
|
||||
text-align: left
|
||||
}
|
||||
.fc-rtl {
|
||||
text-align: right
|
||||
}
|
||||
.fc th, .fc-basic-view td.fc-week-number, .fc-icon, .fc-toolbar {
|
||||
text-align: center
|
||||
}
|
||||
.fc-highlight {
|
||||
background: #bce8f1;
|
||||
opacity: .3
|
||||
}
|
||||
.fc-bgevent {
|
||||
background: #8fdf82;
|
||||
opacity: .3
|
||||
}
|
||||
.fc-nonbusiness {
|
||||
background: #d7d7d7
|
||||
}
|
||||
.fc button {
|
||||
-moz-box-sizing: border-box;
|
||||
-webkit-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
margin: 0;
|
||||
height: 2.1em;
|
||||
padding: 0 .6em;
|
||||
white-space: nowrap;
|
||||
cursor: pointer
|
||||
}
|
||||
.fc button::-moz-focus-inner {
|
||||
margin: 0;
|
||||
padding: 0
|
||||
}
|
||||
.fc-state-default {
|
||||
border: 1px solid;
|
||||
background-color: #f5f5f5;
|
||||
background-image: -moz-linear-gradient(top, #fff, #e6e6e6);
|
||||
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#e6e6e6));
|
||||
background-image: -webkit-linear-gradient(top, #fff, #e6e6e6);
|
||||
background-image: -o-linear-gradient(top, #fff, #e6e6e6);
|
||||
background-image: linear-gradient(to bottom, #fff, #e6e6e6);
|
||||
background-repeat: repeat-x;
|
||||
border-color: #e6e6e6 #e6e6e6 #bfbfbf;
|
||||
border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .25);
|
||||
color: #333;
|
||||
text-shadow: 0 1px 1px rgba(255, 255, 255, .75);
|
||||
box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05)
|
||||
}
|
||||
.fc-state-default.fc-corner-left {
|
||||
border-top-left-radius: 4px;
|
||||
border-bottom-left-radius: 4px
|
||||
}
|
||||
.fc-state-default.fc-corner-right {
|
||||
border-top-right-radius: 4px;
|
||||
border-bottom-right-radius: 4px
|
||||
}
|
||||
.fc button .fc-icon {
|
||||
position: relative;
|
||||
top: -.05em;
|
||||
margin: 0 .2em;
|
||||
vertical-align: middle
|
||||
}
|
||||
.fc-state-active, .fc-state-disabled, .fc-state-down, .fc-state-hover {
|
||||
color: #333;
|
||||
background-color: #e6e6e6
|
||||
}
|
||||
.fc-state-hover {
|
||||
color: #333;
|
||||
text-decoration: none;
|
||||
background-position: 0 -15px;
|
||||
-webkit-transition: background-position .1s linear;
|
||||
-moz-transition: background-position .1s linear;
|
||||
-o-transition: background-position .1s linear;
|
||||
transition: background-position .1s linear
|
||||
}
|
||||
.fc-state-active, .fc-state-down {
|
||||
background-color: #ccc;
|
||||
background-image: none;
|
||||
box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05)
|
||||
}
|
||||
.fc-state-disabled {
|
||||
cursor: default;
|
||||
background-image: none;
|
||||
opacity: .65;
|
||||
box-shadow: none
|
||||
}
|
||||
.fc-event.fc-draggable, .fc-event[href], .fc-popover .fc-header .fc-close, a[data-goto] {
|
||||
cursor: pointer
|
||||
}
|
||||
.fc-button-group {
|
||||
display: inline-block
|
||||
}
|
||||
.fc .fc-button-group>* {
|
||||
float: left;
|
||||
margin: 0 0 0 -1px
|
||||
}
|
||||
.fc .fc-button-group>:first-child {
|
||||
margin-left: 0
|
||||
}
|
||||
.fc-popover {
|
||||
position: absolute;
|
||||
box-shadow: 0 2px 6px rgba(0, 0, 0, .15)
|
||||
}
|
||||
.fc-popover .fc-header {
|
||||
padding: 2px 4px
|
||||
}
|
||||
.fc-popover .fc-header .fc-title {
|
||||
margin: 0 2px
|
||||
}
|
||||
.fc-ltr .fc-popover .fc-header .fc-title, .fc-rtl .fc-popover .fc-header .fc-close {
|
||||
float: left
|
||||
}
|
||||
.fc-ltr .fc-popover .fc-header .fc-close, .fc-rtl .fc-popover .fc-header .fc-title {
|
||||
float: right
|
||||
}
|
||||
.fc-divider {
|
||||
border-style: solid;
|
||||
border-width: 1px
|
||||
}
|
||||
hr.fc-divider {
|
||||
height: 0;
|
||||
margin: 0;
|
||||
padding: 0 0 2px;
|
||||
border-width: 1px 0
|
||||
}
|
||||
.fc-bg table, .fc-row .fc-bgevent-skeleton table, .fc-row .fc-highlight-skeleton table {
|
||||
height: 100%
|
||||
}
|
||||
.fc-clear {
|
||||
clear: both
|
||||
}
|
||||
.fc-bg, .fc-bgevent-skeleton, .fc-helper-skeleton, .fc-highlight-skeleton {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0
|
||||
}
|
||||
.fc table {
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
table-layout: fixed;
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0
|
||||
}
|
||||
.fc td, .fc th {
|
||||
border-style: solid;
|
||||
border-width: 1px;
|
||||
padding: 0;
|
||||
vertical-align: top
|
||||
}
|
||||
.fc td.fc-today {
|
||||
border-style: double
|
||||
}
|
||||
a[data-goto]:hover {
|
||||
text-decoration: underline
|
||||
}
|
||||
.fc .fc-row {
|
||||
border-style: solid;
|
||||
border-width: 0
|
||||
}
|
||||
.fc-row table {
|
||||
border-left: 0 hidden transparent;
|
||||
border-right: 0 hidden transparent;
|
||||
border-bottom: 0 hidden transparent
|
||||
}
|
||||
.fc-row:first-child table {
|
||||
border-top: 0 hidden transparent
|
||||
}
|
||||
.fc-row {
|
||||
position: relative
|
||||
}
|
||||
.fc-row .fc-bg {
|
||||
z-index: 1
|
||||
}
|
||||
.fc-row .fc-bgevent-skeleton td, .fc-row .fc-highlight-skeleton td {
|
||||
border-color: transparent
|
||||
}
|
||||
.fc-row .fc-bgevent-skeleton {
|
||||
z-index: 2
|
||||
}
|
||||
.fc-row .fc-highlight-skeleton {
|
||||
z-index: 3
|
||||
}
|
||||
.fc-row .fc-content-skeleton {
|
||||
position: relative;
|
||||
z-index: 4;
|
||||
padding-bottom: 2px
|
||||
}
|
||||
.fc-row .fc-helper-skeleton {
|
||||
z-index: 5
|
||||
}
|
||||
.fc .fc-row .fc-content-skeleton table, .fc .fc-row .fc-content-skeleton td, .fc .fc-row .fc-helper-skeleton td {
|
||||
background: 0 0;
|
||||
border-color: transparent
|
||||
}
|
||||
.fc-row .fc-content-skeleton td, .fc-row .fc-helper-skeleton td {
|
||||
border-bottom: 0
|
||||
}
|
||||
.fc-row .fc-content-skeleton tbody td, .fc-row .fc-helper-skeleton tbody td {
|
||||
border-top: 0
|
||||
}
|
||||
.fc-scroller {
|
||||
-webkit-overflow-scrolling: touch
|
||||
}
|
||||
.fc-icon, .fc-row.fc-rigid, .fc-time-grid-event {
|
||||
overflow: hidden
|
||||
}
|
||||
.fc-scroller>.fc-day-grid, .fc-scroller>.fc-time-grid {
|
||||
position: relative;
|
||||
width: 100%
|
||||
}
|
||||
.fc-event {
|
||||
position: relative;
|
||||
display: block;
|
||||
font-size: .85em;
|
||||
line-height: 1.3;
|
||||
border-radius: 3px;
|
||||
border: 1px solid #3a87ad
|
||||
}
|
||||
.fc-event, .fc-event-dot {
|
||||
background-color: #3a87ad
|
||||
}
|
||||
.fc-event, .fc-event:hover {
|
||||
color: #fff;
|
||||
text-decoration: none
|
||||
}
|
||||
.fc-not-allowed, .fc-not-allowed .fc-event {
|
||||
cursor: not-allowed
|
||||
}
|
||||
.fc-event .fc-bg {
|
||||
z-index: 1;
|
||||
background: #fff;
|
||||
opacity: .25
|
||||
}
|
||||
.fc-event .fc-content {
|
||||
position: relative;
|
||||
z-index: 2
|
||||
}
|
||||
.fc-event .fc-resizer {
|
||||
position: absolute;
|
||||
z-index: 4;
|
||||
display: none
|
||||
}
|
||||
.fc-event.fc-allow-mouse-resize .fc-resizer, .fc-event.fc-selected .fc-resizer {
|
||||
display: block
|
||||
}
|
||||
.fc-event.fc-selected .fc-resizer:before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
z-index: 9999;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
margin-left: -20px;
|
||||
margin-top: -20px
|
||||
}
|
||||
.fc-event.fc-selected {
|
||||
z-index: 9999!important;
|
||||
box-shadow: 0 2px 5px rgba(0, 0, 0, .2)
|
||||
}
|
||||
.fc-event.fc-selected.fc-dragging {
|
||||
box-shadow: 0 2px 7px rgba(0, 0, 0, .3)
|
||||
}
|
||||
.fc-h-event.fc-selected:before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
z-index: 3;
|
||||
top: -10px;
|
||||
bottom: -10px;
|
||||
left: 0;
|
||||
right: 0
|
||||
}
|
||||
.fc-ltr .fc-h-event.fc-not-start, .fc-rtl .fc-h-event.fc-not-end {
|
||||
margin-left: 0;
|
||||
border-left-width: 0;
|
||||
padding-left: 1px;
|
||||
border-top-left-radius: 0;
|
||||
border-bottom-left-radius: 0
|
||||
}
|
||||
.fc-ltr .fc-h-event.fc-not-end, .fc-rtl .fc-h-event.fc-not-start {
|
||||
margin-right: 0;
|
||||
border-right-width: 0;
|
||||
padding-right: 1px;
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 0
|
||||
}
|
||||
.fc-ltr .fc-h-event .fc-start-resizer, .fc-rtl .fc-h-event .fc-end-resizer {
|
||||
cursor: w-resize;
|
||||
left: -1px
|
||||
}
|
||||
.fc-ltr .fc-h-event .fc-end-resizer, .fc-rtl .fc-h-event .fc-start-resizer {
|
||||
cursor: e-resize;
|
||||
right: -1px
|
||||
}
|
||||
.fc-h-event.fc-allow-mouse-resize .fc-resizer {
|
||||
width: 7px;
|
||||
top: -1px;
|
||||
bottom: -1px
|
||||
}
|
||||
.fc-h-event.fc-selected .fc-resizer {
|
||||
border-radius: 4px;
|
||||
border-width: 1px;
|
||||
width: 6px;
|
||||
height: 6px;
|
||||
border-style: solid;
|
||||
border-color: inherit;
|
||||
background: #fff;
|
||||
top: 50%;
|
||||
margin-top: -4px
|
||||
}
|
||||
.fc-ltr .fc-h-event.fc-selected .fc-start-resizer, .fc-rtl .fc-h-event.fc-selected .fc-end-resizer {
|
||||
margin-left: -4px
|
||||
}
|
||||
.fc-ltr .fc-h-event.fc-selected .fc-end-resizer, .fc-rtl .fc-h-event.fc-selected .fc-start-resizer {
|
||||
margin-right: -4px
|
||||
}
|
||||
.fc-day-grid-event {
|
||||
margin: 1px 2px 0;
|
||||
padding: 0 1px
|
||||
}
|
||||
tr:first-child>td>.fc-day-grid-event {
|
||||
margin-top: 2px
|
||||
}
|
||||
.fc-day-grid-event.fc-selected:after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
z-index: 1;
|
||||
top: -1px;
|
||||
right: -1px;
|
||||
bottom: -1px;
|
||||
left: -1px;
|
||||
background: #000;
|
||||
opacity: .25
|
||||
}
|
||||
.fc-day-grid-event .fc-content {
|
||||
white-space: nowrap;
|
||||
overflow: hidden
|
||||
}
|
||||
.fc-day-grid-event .fc-time {
|
||||
font-weight: 700
|
||||
}
|
||||
.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer, .fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer {
|
||||
margin-left: -2px
|
||||
}
|
||||
.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer, .fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer {
|
||||
margin-right: -2px
|
||||
}
|
||||
a.fc-more {
|
||||
margin: 1px 3px;
|
||||
font-size: .85em;
|
||||
cursor: pointer;
|
||||
text-decoration: none
|
||||
}
|
||||
a.fc-more:hover {
|
||||
text-decoration: underline
|
||||
}
|
||||
.fc.fc-bootstrap3 a, .ui-widget .fc-event {
|
||||
text-decoration: none
|
||||
}
|
||||
.fc-limited {
|
||||
display: none
|
||||
}
|
||||
.fc-icon, .fc-toolbar .fc-center {
|
||||
display: inline-block
|
||||
}
|
||||
.fc-day-grid .fc-row {
|
||||
z-index: 1
|
||||
}
|
||||
.fc-more-popover {
|
||||
z-index: 2;
|
||||
width: 220px
|
||||
}
|
||||
.fc-more-popover .fc-event-container {
|
||||
padding: 10px
|
||||
}
|
||||
.fc-bootstrap3 .fc-popover .panel-body, .fc-bootstrap4 .fc-popover .card-body {
|
||||
padding: 0
|
||||
}
|
||||
.fc-now-indicator {
|
||||
position: absolute;
|
||||
border: 0 solid red
|
||||
}
|
||||
.fc-bootstrap3 .fc-today.alert, .fc-bootstrap4 .fc-today.alert {
|
||||
border-radius: 0
|
||||
}
|
||||
.fc-unselectable {
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
-webkit-tap-highlight-color: transparent
|
||||
}
|
||||
.fc-unthemed .fc-content, .fc-unthemed .fc-divider, .fc-unthemed .fc-list-heading td, .fc-unthemed .fc-list-view, .fc-unthemed .fc-popover, .fc-unthemed .fc-row, .fc-unthemed tbody, .fc-unthemed td, .fc-unthemed th, .fc-unthemed thead {
|
||||
border-color: rgba(255, 255, 255, 0.2)
|
||||
}
|
||||
.fc-unthemed .fc-popover {
|
||||
background-color: #fff;
|
||||
border-width: 1px;
|
||||
border-style: solid
|
||||
}
|
||||
.fc-unthemed .fc-divider, .fc-unthemed .fc-list-heading td, .fc-unthemed .fc-popover .fc-header {
|
||||
background: rgba(238, 238, 238, 0.25)
|
||||
}
|
||||
.fc-unthemed td.fc-today {
|
||||
background: rgba(252, 248, 227, 0.3)
|
||||
}
|
||||
.fc-unthemed .fc-disabled-day {
|
||||
background: #d7d7d7;
|
||||
opacity: .3
|
||||
}
|
||||
.fc-icon {
|
||||
height: 1em;
|
||||
line-height: 1em;
|
||||
font-size: 1em;
|
||||
font-family: "Courier New", Courier, monospace;
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none
|
||||
}
|
||||
.fc-icon:after {
|
||||
position: relative
|
||||
}
|
||||
.fc-icon-left-single-arrow:after {
|
||||
content: "\2039";
|
||||
font-weight: 700;
|
||||
font-size: 200%;
|
||||
top: -7%
|
||||
}
|
||||
.fc-icon-right-single-arrow:after {
|
||||
content: "\203A";
|
||||
font-weight: 700;
|
||||
font-size: 200%;
|
||||
top: -7%
|
||||
}
|
||||
.fc-icon-left-double-arrow:after {
|
||||
content: "\AB";
|
||||
font-size: 160%;
|
||||
top: -7%
|
||||
}
|
||||
.fc-icon-right-double-arrow:after {
|
||||
content: "\BB";
|
||||
font-size: 160%;
|
||||
top: -7%
|
||||
}
|
||||
.fc-icon-left-triangle:after {
|
||||
content: "\25C4";
|
||||
font-size: 125%;
|
||||
top: 3%
|
||||
}
|
||||
.fc-icon-right-triangle:after {
|
||||
content: "\25BA";
|
||||
font-size: 125%;
|
||||
top: 3%
|
||||
}
|
||||
.fc-icon-down-triangle:after {
|
||||
content: "\25BC";
|
||||
font-size: 125%;
|
||||
top: 2%
|
||||
}
|
||||
.fc-icon-x:after {
|
||||
content: "\D7";
|
||||
font-size: 200%;
|
||||
top: 6%
|
||||
}
|
||||
.fc-unthemed .fc-popover .fc-header .fc-close {
|
||||
color: #666;
|
||||
font-size: .9em;
|
||||
margin-top: 2px
|
||||
}
|
||||
.fc-unthemed .fc-list-item:hover td {
|
||||
background-color: #f5f5f5
|
||||
}
|
||||
.ui-widget .fc-disabled-day {
|
||||
background-image: none
|
||||
}
|
||||
.fc-bootstrap3 .fc-time-grid .fc-slats table, .fc-bootstrap4 .fc-time-grid .fc-slats table, .fc-time-grid .fc-slats .ui-widget-content {
|
||||
background: 0 0
|
||||
}
|
||||
.fc-popover>.ui-widget-header+.ui-widget-content {
|
||||
border-top: 0
|
||||
}
|
||||
.fc-bootstrap3 hr.fc-divider, .fc-bootstrap4 hr.fc-divider {
|
||||
border-color: inherit
|
||||
}
|
||||
.ui-widget .fc-event {
|
||||
color: #fff;
|
||||
font-weight: 400
|
||||
}
|
||||
.ui-widget td.fc-axis {
|
||||
font-weight: 400
|
||||
}
|
||||
.fc.fc-bootstrap3 a[data-goto]:hover {
|
||||
text-decoration: underline
|
||||
}
|
||||
.fc.fc-bootstrap4 a {
|
||||
text-decoration: none
|
||||
}
|
||||
.fc.fc-bootstrap4 a[data-goto]:hover {
|
||||
text-decoration: underline
|
||||
}
|
||||
.fc-bootstrap4 a.fc-event:not([href]):not([tabindex]) {
|
||||
color: #fff
|
||||
}
|
||||
.fc-bootstrap4 .fc-popover.card {
|
||||
position: absolute
|
||||
}
|
||||
.fc-toolbar.fc-header-toolbar {
|
||||
margin-bottom: 1em
|
||||
}
|
||||
.fc-toolbar.fc-footer-toolbar {
|
||||
margin-top: 1em
|
||||
}
|
||||
.fc-toolbar .fc-left {
|
||||
float: left
|
||||
}
|
||||
.fc-toolbar .fc-right {
|
||||
float: right
|
||||
}
|
||||
.fc .fc-toolbar>*>* {
|
||||
float: left;
|
||||
margin-left: .75em
|
||||
}
|
||||
.fc .fc-toolbar>*>:first-child {
|
||||
margin-left: 0
|
||||
}
|
||||
.fc-toolbar h2 {
|
||||
margin: 0
|
||||
}
|
||||
.fc-toolbar button {
|
||||
position: relative
|
||||
}
|
||||
.fc-toolbar .fc-state-hover, .fc-toolbar .ui-state-hover {
|
||||
z-index: 2
|
||||
}
|
||||
.fc-toolbar .fc-state-down {
|
||||
z-index: 3
|
||||
}
|
||||
.fc-toolbar .fc-state-active, .fc-toolbar .ui-state-active {
|
||||
z-index: 4
|
||||
}
|
||||
.fc-toolbar button:focus {
|
||||
z-index: 5
|
||||
}
|
||||
.fc-view-container *, .fc-view-container :after, .fc-view-container :before {
|
||||
-webkit-box-sizing: content-box;
|
||||
-moz-box-sizing: content-box;
|
||||
box-sizing: content-box
|
||||
}
|
||||
.fc-view, .fc-view>table {
|
||||
position: relative;
|
||||
z-index: 1
|
||||
}
|
||||
.fc-basicDay-view .fc-content-skeleton, .fc-basicWeek-view .fc-content-skeleton {
|
||||
padding-bottom: 1em
|
||||
}
|
||||
.fc-basic-view .fc-body .fc-row {
|
||||
min-height: 4em
|
||||
}
|
||||
.fc-row.fc-rigid .fc-content-skeleton {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0
|
||||
}
|
||||
.fc-day-top.fc-other-month {
|
||||
opacity: .3
|
||||
}
|
||||
.fc-basic-view .fc-day-number, .fc-basic-view .fc-week-number {
|
||||
padding: 2px
|
||||
}
|
||||
.fc-basic-view th.fc-day-number, .fc-basic-view th.fc-week-number {
|
||||
padding: 0 2px
|
||||
}
|
||||
.fc-ltr .fc-basic-view .fc-day-top .fc-day-number {
|
||||
float: right
|
||||
}
|
||||
.fc-rtl .fc-basic-view .fc-day-top .fc-day-number {
|
||||
float: left
|
||||
}
|
||||
.fc-ltr .fc-basic-view .fc-day-top .fc-week-number {
|
||||
float: left;
|
||||
border-radius: 0 0 3px
|
||||
}
|
||||
.fc-rtl .fc-basic-view .fc-day-top .fc-week-number {
|
||||
float: right;
|
||||
border-radius: 0 0 0 3px
|
||||
}
|
||||
.fc-basic-view .fc-day-top .fc-week-number {
|
||||
min-width: 1.5em;
|
||||
text-align: center;
|
||||
background-color: #f2f2f2;
|
||||
color: grey
|
||||
}
|
||||
.fc-basic-view td.fc-week-number>* {
|
||||
display: inline-block;
|
||||
min-width: 1.25em
|
||||
}
|
||||
.fc-agenda-view .fc-day-grid {
|
||||
position: relative;
|
||||
z-index: 2
|
||||
}
|
||||
.fc-agenda-view .fc-day-grid .fc-row {
|
||||
min-height: 3em
|
||||
}
|
||||
.fc-agenda-view .fc-day-grid .fc-row .fc-content-skeleton {
|
||||
padding-bottom: 1em
|
||||
}
|
||||
.fc .fc-axis {
|
||||
vertical-align: middle;
|
||||
padding: 0 4px;
|
||||
white-space: nowrap
|
||||
}
|
||||
.fc-ltr .fc-axis {
|
||||
text-align: right
|
||||
}
|
||||
.fc-rtl .fc-axis {
|
||||
text-align: left
|
||||
}
|
||||
.fc-time-grid, .fc-time-grid-container {
|
||||
position: relative;
|
||||
z-index: 1
|
||||
}
|
||||
.fc-time-grid {
|
||||
min-height: 100%
|
||||
}
|
||||
.fc-time-grid table {
|
||||
border: 0 hidden transparent
|
||||
}
|
||||
.fc-time-grid>.fc-bg {
|
||||
z-index: 1
|
||||
}
|
||||
.fc-time-grid .fc-slats, .fc-time-grid>hr {
|
||||
position: relative;
|
||||
z-index: 2
|
||||
}
|
||||
.fc-time-grid .fc-content-col {
|
||||
position: relative
|
||||
}
|
||||
.fc-time-grid .fc-content-skeleton {
|
||||
position: absolute;
|
||||
z-index: 3;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0
|
||||
}
|
||||
.fc-time-grid .fc-business-container {
|
||||
position: relative;
|
||||
z-index: 1
|
||||
}
|
||||
.fc-time-grid .fc-bgevent-container {
|
||||
position: relative;
|
||||
z-index: 2
|
||||
}
|
||||
.fc-time-grid .fc-highlight-container {
|
||||
z-index: 3;
|
||||
position: relative
|
||||
}
|
||||
.fc-time-grid .fc-event-container {
|
||||
position: relative;
|
||||
z-index: 4
|
||||
}
|
||||
.fc-time-grid .fc-now-indicator-line {
|
||||
z-index: 5
|
||||
}
|
||||
.fc-time-grid .fc-helper-container {
|
||||
position: relative;
|
||||
z-index: 6
|
||||
}
|
||||
.fc-time-grid .fc-slats td {
|
||||
height: 1.5em;
|
||||
border-bottom: 0
|
||||
}
|
||||
.fc-time-grid .fc-slats .fc-minor td {
|
||||
border-top-style: dotted
|
||||
}
|
||||
.fc-time-grid .fc-highlight {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
right: 0
|
||||
}
|
||||
.fc-ltr .fc-time-grid .fc-event-container {
|
||||
margin: 0 2.5% 0 2px
|
||||
}
|
||||
.fc-rtl .fc-time-grid .fc-event-container {
|
||||
margin: 0 2px 0 2.5%
|
||||
}
|
||||
.fc-time-grid .fc-bgevent, .fc-time-grid .fc-event {
|
||||
position: absolute;
|
||||
z-index: 1
|
||||
}
|
||||
.fc-time-grid .fc-bgevent {
|
||||
left: 0;
|
||||
right: 0
|
||||
}
|
||||
.fc-v-event.fc-not-start {
|
||||
border-top-width: 0;
|
||||
padding-top: 1px;
|
||||
border-top-left-radius: 0;
|
||||
border-top-right-radius: 0
|
||||
}
|
||||
.fc-v-event.fc-not-end {
|
||||
border-bottom-width: 0;
|
||||
padding-bottom: 1px;
|
||||
border-bottom-left-radius: 0;
|
||||
border-bottom-right-radius: 0
|
||||
}
|
||||
.fc-time-grid-event.fc-selected {
|
||||
overflow: visible
|
||||
}
|
||||
.fc-time-grid-event.fc-selected .fc-bg {
|
||||
display: none
|
||||
}
|
||||
.fc-time-grid-event .fc-content {
|
||||
overflow: hidden
|
||||
}
|
||||
.fc-time-grid-event .fc-time, .fc-time-grid-event .fc-title {
|
||||
padding: 0 1px
|
||||
}
|
||||
.fc-time-grid-event .fc-time {
|
||||
font-size: .85em;
|
||||
white-space: nowrap
|
||||
}
|
||||
.fc-time-grid-event.fc-short .fc-content {
|
||||
white-space: nowrap
|
||||
}
|
||||
.fc-time-grid-event.fc-short .fc-time, .fc-time-grid-event.fc-short .fc-title {
|
||||
display: inline-block;
|
||||
vertical-align: top
|
||||
}
|
||||
.fc-time-grid-event.fc-short .fc-time span {
|
||||
display: none
|
||||
}
|
||||
.fc-time-grid-event.fc-short .fc-time:before {
|
||||
content: attr(data-start)
|
||||
}
|
||||
.fc-time-grid-event.fc-short .fc-time:after {
|
||||
content: "\A0-\A0"
|
||||
}
|
||||
.fc-time-grid-event.fc-short .fc-title {
|
||||
font-size: .85em;
|
||||
padding: 0
|
||||
}
|
||||
.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer {
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
height: 8px;
|
||||
overflow: hidden;
|
||||
line-height: 8px;
|
||||
font-size: 11px;
|
||||
font-family: monospace;
|
||||
text-align: center;
|
||||
cursor: s-resize
|
||||
}
|
||||
.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer:after {
|
||||
content: "="
|
||||
}
|
||||
.fc-time-grid-event.fc-selected .fc-resizer {
|
||||
border-radius: 5px;
|
||||
border-width: 1px;
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
border-style: solid;
|
||||
border-color: inherit;
|
||||
background: #fff;
|
||||
left: 50%;
|
||||
margin-left: -5px;
|
||||
bottom: -5px
|
||||
}
|
||||
.fc-time-grid .fc-now-indicator-line {
|
||||
border-top-width: 1px;
|
||||
left: 0;
|
||||
right: 0
|
||||
}
|
||||
.fc-time-grid .fc-now-indicator-arrow {
|
||||
margin-top: -5px
|
||||
}
|
||||
.fc-ltr .fc-time-grid .fc-now-indicator-arrow {
|
||||
left: 0;
|
||||
border-width: 5px 0 5px 6px;
|
||||
border-top-color: transparent;
|
||||
border-bottom-color: transparent
|
||||
}
|
||||
.fc-rtl .fc-time-grid .fc-now-indicator-arrow {
|
||||
right: 0;
|
||||
border-width: 5px 6px 5px 0;
|
||||
border-top-color: transparent;
|
||||
border-bottom-color: transparent
|
||||
}
|
||||
.fc-event-dot {
|
||||
display: inline-block;
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
border-radius: 5px
|
||||
}
|
||||
.fc-rtl .fc-list-view {
|
||||
direction: rtl
|
||||
}
|
||||
.fc-list-view {
|
||||
border-width: 1px;
|
||||
border-style: solid
|
||||
}
|
||||
.fc .fc-list-table {
|
||||
table-layout: auto
|
||||
}
|
||||
.fc-list-table td {
|
||||
border-width: 1px 0 0;
|
||||
padding: 8px 14px
|
||||
}
|
||||
.fc-list-table tr:first-child td {
|
||||
border-top-width: 0
|
||||
}
|
||||
.fc-list-heading {
|
||||
border-bottom-width: 1px
|
||||
}
|
||||
.fc-list-heading td {
|
||||
font-weight: 700
|
||||
}
|
||||
.fc-ltr .fc-list-heading-main {
|
||||
float: left
|
||||
}
|
||||
.fc-ltr .fc-list-heading-alt, .fc-rtl .fc-list-heading-main {
|
||||
float: right
|
||||
}
|
||||
.fc-rtl .fc-list-heading-alt {
|
||||
float: left
|
||||
}
|
||||
.fc-list-item.fc-has-url {
|
||||
cursor: pointer
|
||||
}
|
||||
.fc-list-item-marker, .fc-list-item-time {
|
||||
white-space: nowrap;
|
||||
width: 1px
|
||||
}
|
||||
.fc-ltr .fc-list-item-marker {
|
||||
padding-right: 0
|
||||
}
|
||||
.fc-rtl .fc-list-item-marker {
|
||||
padding-left: 0
|
||||
}
|
||||
.fc-list-item-title a {
|
||||
text-decoration: none;
|
||||
color: inherit
|
||||
}
|
||||
.fc-list-item-title a[href]:hover {
|
||||
text-decoration: underline
|
||||
}
|
||||
.fc-list-empty-wrap2 {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0
|
||||
}
|
||||
.fc-list-empty-wrap1 {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: table
|
||||
}
|
||||
.fc-list-empty {
|
||||
display: table-cell;
|
||||
vertical-align: middle;
|
||||
text-align: center
|
||||
}
|
||||
.fc-unthemed .fc-list-empty {
|
||||
background-color: #eee
|
||||
}
|
||||
176
v2/assets/plugins/fullcalendar/css/fullcalendar.print.css
Normal file
176
v2/assets/plugins/fullcalendar/css/fullcalendar.print.css
Normal file
@@ -0,0 +1,176 @@
|
||||
/*!
|
||||
* FullCalendar v3.9.0
|
||||
* Docs & License: https://fullcalendar.io/
|
||||
* (c) 2018 Adam Shaw
|
||||
*/
|
||||
/*!
|
||||
* FullCalendar v3.9.0 Print Stylesheet
|
||||
* Docs & License: https://fullcalendar.io/
|
||||
* (c) 2018 Adam Shaw
|
||||
*/
|
||||
/*
|
||||
* Include this stylesheet on your page to get a more printer-friendly calendar.
|
||||
* When including this stylesheet, use the media='print' attribute of the <link> tag.
|
||||
* Make sure to include this stylesheet IN ADDITION to the regular fullcalendar.css.
|
||||
*/
|
||||
.fc {
|
||||
max-width: 100% !important; }
|
||||
|
||||
/* Global Event Restyling
|
||||
--------------------------------------------------------------------------------------------------*/
|
||||
.fc-event {
|
||||
background: #fff !important;
|
||||
color: #000 !important;
|
||||
page-break-inside: avoid; }
|
||||
|
||||
.fc-event .fc-resizer {
|
||||
display: none; }
|
||||
|
||||
/* Table & Day-Row Restyling
|
||||
--------------------------------------------------------------------------------------------------*/
|
||||
.fc th,
|
||||
.fc td,
|
||||
.fc hr,
|
||||
.fc thead,
|
||||
.fc tbody,
|
||||
.fc-row {
|
||||
border-color: #ccc !important;
|
||||
background: #fff !important; }
|
||||
|
||||
/* kill the overlaid, absolutely-positioned components */
|
||||
/* common... */
|
||||
.fc-bg,
|
||||
.fc-bgevent-skeleton,
|
||||
.fc-highlight-skeleton,
|
||||
.fc-helper-skeleton,
|
||||
.fc-bgevent-container,
|
||||
.fc-business-container,
|
||||
.fc-highlight-container,
|
||||
.fc-helper-container {
|
||||
display: none; }
|
||||
|
||||
/* don't force a min-height on rows (for DayGrid) */
|
||||
.fc tbody .fc-row {
|
||||
height: auto !important;
|
||||
/* undo height that JS set in distributeHeight */
|
||||
min-height: 0 !important;
|
||||
/* undo the min-height from each view's specific stylesheet */ }
|
||||
|
||||
.fc tbody .fc-row .fc-content-skeleton {
|
||||
position: static;
|
||||
/* undo .fc-rigid */
|
||||
padding-bottom: 0 !important;
|
||||
/* use a more border-friendly method for this... */ }
|
||||
|
||||
.fc tbody .fc-row .fc-content-skeleton tbody tr:last-child td {
|
||||
/* only works in newer browsers */
|
||||
padding-bottom: 1em;
|
||||
/* ...gives space within the skeleton. also ensures min height in a way */ }
|
||||
|
||||
.fc tbody .fc-row .fc-content-skeleton table {
|
||||
/* provides a min-height for the row, but only effective for IE, which exaggerates this value,
|
||||
making it look more like 3em. for other browers, it will already be this tall */
|
||||
height: 1em; }
|
||||
|
||||
/* Undo month-view event limiting. Display all events and hide the "more" links
|
||||
--------------------------------------------------------------------------------------------------*/
|
||||
.fc-more-cell,
|
||||
.fc-more {
|
||||
display: none !important; }
|
||||
|
||||
.fc tr.fc-limited {
|
||||
display: table-row !important; }
|
||||
|
||||
.fc td.fc-limited {
|
||||
display: table-cell !important; }
|
||||
|
||||
.fc-popover {
|
||||
display: none;
|
||||
/* never display the "more.." popover in print mode */ }
|
||||
|
||||
/* TimeGrid Restyling
|
||||
--------------------------------------------------------------------------------------------------*/
|
||||
/* undo the min-height 100% trick used to fill the container's height */
|
||||
.fc-time-grid {
|
||||
min-height: 0 !important; }
|
||||
|
||||
/* don't display the side axis at all ("all-day" and time cells) */
|
||||
.fc-agenda-view .fc-axis {
|
||||
display: none; }
|
||||
|
||||
/* don't display the horizontal lines */
|
||||
.fc-slats,
|
||||
.fc-time-grid hr {
|
||||
/* this hr is used when height is underused and needs to be filled */
|
||||
display: none !important;
|
||||
/* important overrides inline declaration */ }
|
||||
|
||||
/* let the container that holds the events be naturally positioned and create real height */
|
||||
.fc-time-grid .fc-content-skeleton {
|
||||
position: static; }
|
||||
|
||||
/* in case there are no events, we still want some height */
|
||||
.fc-time-grid .fc-content-skeleton table {
|
||||
height: 4em; }
|
||||
|
||||
/* kill the horizontal spacing made by the event container. event margins will be done below */
|
||||
.fc-time-grid .fc-event-container {
|
||||
margin: 0 !important; }
|
||||
|
||||
/* TimeGrid *Event* Restyling
|
||||
--------------------------------------------------------------------------------------------------*/
|
||||
/* naturally position events, vertically stacking them */
|
||||
.fc-time-grid .fc-event {
|
||||
position: static !important;
|
||||
margin: 3px 2px !important; }
|
||||
|
||||
/* for events that continue to a future day, give the bottom border back */
|
||||
.fc-time-grid .fc-event.fc-not-end {
|
||||
border-bottom-width: 1px !important; }
|
||||
|
||||
/* indicate the event continues via "..." text */
|
||||
.fc-time-grid .fc-event.fc-not-end:after {
|
||||
content: "..."; }
|
||||
|
||||
/* for events that are continuations from previous days, give the top border back */
|
||||
.fc-time-grid .fc-event.fc-not-start {
|
||||
border-top-width: 1px !important; }
|
||||
|
||||
/* indicate the event is a continuation via "..." text */
|
||||
.fc-time-grid .fc-event.fc-not-start:before {
|
||||
content: "..."; }
|
||||
|
||||
/* time */
|
||||
/* undo a previous declaration and let the time text span to a second line */
|
||||
.fc-time-grid .fc-event .fc-time {
|
||||
white-space: normal !important; }
|
||||
|
||||
/* hide the the time that is normally displayed... */
|
||||
.fc-time-grid .fc-event .fc-time span {
|
||||
display: none; }
|
||||
|
||||
/* ...replace it with a more verbose version (includes AM/PM) stored in an html attribute */
|
||||
.fc-time-grid .fc-event .fc-time:after {
|
||||
content: attr(data-full); }
|
||||
|
||||
/* Vertical Scroller & Containers
|
||||
--------------------------------------------------------------------------------------------------*/
|
||||
/* kill the scrollbars and allow natural height */
|
||||
.fc-scroller,
|
||||
.fc-day-grid-container,
|
||||
.fc-time-grid-container {
|
||||
/* */
|
||||
overflow: visible !important;
|
||||
height: auto !important; }
|
||||
|
||||
/* kill the horizontal border/padding used to compensate for scrollbars */
|
||||
.fc-row {
|
||||
border: 0 !important;
|
||||
margin: 0 !important; }
|
||||
|
||||
/* Button Controls
|
||||
--------------------------------------------------------------------------------------------------*/
|
||||
.fc-button-group,
|
||||
.fc button {
|
||||
display: none;
|
||||
/* don't display any button-related controls */ }
|
||||
9
v2/assets/plugins/fullcalendar/css/fullcalendar.print.min.css
vendored
Normal file
9
v2/assets/plugins/fullcalendar/css/fullcalendar.print.min.css
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
/*!
|
||||
* FullCalendar v3.9.0
|
||||
* Docs & License: https://fullcalendar.io/
|
||||
* (c) 2018 Adam Shaw
|
||||
*//*!
|
||||
* FullCalendar v3.9.0 Print Stylesheet
|
||||
* Docs & License: https://fullcalendar.io/
|
||||
* (c) 2018 Adam Shaw
|
||||
*/.fc-bg,.fc-bgevent-container,.fc-bgevent-skeleton,.fc-business-container,.fc-event .fc-resizer,.fc-helper-container,.fc-helper-skeleton,.fc-highlight-container,.fc-highlight-skeleton{display:none}.fc tbody .fc-row,.fc-time-grid{min-height:0!important}.fc-time-grid .fc-event.fc-not-end:after,.fc-time-grid .fc-event.fc-not-start:before{content:"..."}.fc{max-width:100%!important}.fc-event{background:#fff!important;color:#000!important;page-break-inside:avoid}.fc hr,.fc tbody,.fc td,.fc th,.fc thead,.fc-row{border-color:#ccc!important;background:#fff!important}.fc tbody .fc-row{height:auto!important}.fc tbody .fc-row .fc-content-skeleton{position:static;padding-bottom:0!important}.fc tbody .fc-row .fc-content-skeleton tbody tr:last-child td{padding-bottom:1em}.fc tbody .fc-row .fc-content-skeleton table{height:1em}.fc-more,.fc-more-cell{display:none!important}.fc tr.fc-limited{display:table-row!important}.fc td.fc-limited{display:table-cell!important}.fc-agenda-view .fc-axis,.fc-popover{display:none}.fc-slats,.fc-time-grid hr{display:none!important}.fc button,.fc-button-group,.fc-time-grid .fc-event .fc-time span{display:none}.fc-time-grid .fc-content-skeleton{position:static}.fc-time-grid .fc-content-skeleton table{height:4em}.fc-time-grid .fc-event-container{margin:0!important}.fc-time-grid .fc-event{position:static!important;margin:3px 2px!important}.fc-time-grid .fc-event.fc-not-end{border-bottom-width:1px!important}.fc-time-grid .fc-event.fc-not-start{border-top-width:1px!important}.fc-time-grid .fc-event .fc-time{white-space:normal!important}.fc-time-grid .fc-event .fc-time:after{content:attr(data-full)}.fc-day-grid-container,.fc-scroller,.fc-time-grid-container{overflow:visible!important;height:auto!important}.fc-row{border:0!important;margin:0!important}
|
||||
@@ -0,0 +1,87 @@
|
||||
$(document).ready(function() {
|
||||
|
||||
$('#calendar').fullCalendar({
|
||||
header: {
|
||||
left: 'prev,next today',
|
||||
center: 'title',
|
||||
right: 'month,agendaWeek,agendaDay'
|
||||
},
|
||||
defaultDate: '2018-03-12',
|
||||
navLinks: true, // can click day/week names to navigate views
|
||||
selectable: true,
|
||||
selectHelper: true,
|
||||
select: function(start, end) {
|
||||
var title = prompt('Event Title:');
|
||||
var eventData;
|
||||
if (title) {
|
||||
eventData = {
|
||||
title: title,
|
||||
start: start,
|
||||
end: end
|
||||
};
|
||||
$('#calendar').fullCalendar('renderEvent', eventData, true); // stick? = true
|
||||
}
|
||||
$('#calendar').fullCalendar('unselect');
|
||||
},
|
||||
editable: true,
|
||||
eventLimit: true, // allow "more" link when too many events
|
||||
events: [
|
||||
{
|
||||
title: 'All Day Event2',
|
||||
start: '2018-03-01',
|
||||
end: '2018-03-10'
|
||||
},
|
||||
{
|
||||
title: 'Long Event',
|
||||
start: '2018-03-07',
|
||||
end: '2018-03-10'
|
||||
},
|
||||
{
|
||||
id: 999,
|
||||
title: 'Repeating Event',
|
||||
start: '2018-03-09T16:00:00'
|
||||
},
|
||||
{
|
||||
id: 999,
|
||||
title: 'Repeating Event',
|
||||
start: '2018-03-16T16:00:00'
|
||||
},
|
||||
{
|
||||
title: 'Conference',
|
||||
start: '2018-03-11',
|
||||
end: '2018-03-13'
|
||||
},
|
||||
{
|
||||
title: 'Meeting',
|
||||
start: '2018-03-12T10:30:00',
|
||||
end: '2018-03-12T12:30:00'
|
||||
},
|
||||
{
|
||||
title: 'Lunch',
|
||||
start: '2018-03-12T12:00:00'
|
||||
},
|
||||
{
|
||||
title: 'Meeting',
|
||||
start: '2018-03-12T14:30:00'
|
||||
},
|
||||
{
|
||||
title: 'Happy Hour',
|
||||
start: '2018-03-12T17:30:00'
|
||||
},
|
||||
{
|
||||
title: 'Dinner',
|
||||
start: '2018-03-12T20:00:00'
|
||||
},
|
||||
{
|
||||
title: 'Birthday Party',
|
||||
start: '2018-03-13T07:00:00'
|
||||
},
|
||||
{
|
||||
title: 'Click for Gasdfasdfoogle2',
|
||||
url: 'http://google.com/',
|
||||
start: '2018-03-28'
|
||||
}
|
||||
]
|
||||
});
|
||||
|
||||
});
|
||||
15010
v2/assets/plugins/fullcalendar/js/fullcalendar.js
Normal file
15010
v2/assets/plugins/fullcalendar/js/fullcalendar.js
Normal file
File diff suppressed because it is too large
Load Diff
12
v2/assets/plugins/fullcalendar/js/fullcalendar.min.js
vendored
Normal file
12
v2/assets/plugins/fullcalendar/js/fullcalendar.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
13
v2/assets/plugins/fullcalendar/js/jquery-ui.min.js
vendored
Normal file
13
v2/assets/plugins/fullcalendar/js/jquery-ui.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
v2/assets/plugins/fullcalendar/js/moment.min.js
vendored
Normal file
1
v2/assets/plugins/fullcalendar/js/moment.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
109
v2/assets/plugins/jquery.easy-pie-chart/easy-pie-chart.init.js
Normal file
109
v2/assets/plugins/jquery.easy-pie-chart/easy-pie-chart.init.js
Normal file
@@ -0,0 +1,109 @@
|
||||
!function($) {
|
||||
"use strict";
|
||||
|
||||
var EasyPieChart = function() {};
|
||||
|
||||
EasyPieChart.prototype.init = function() {
|
||||
//initializing various types of easy pie charts
|
||||
|
||||
$('.easy-pie-chart-1').easyPieChart({
|
||||
easing: 'easeOutBounce',
|
||||
barColor : '#ffffff',
|
||||
lineWidth: 6,
|
||||
animate: 1000,
|
||||
lineCap: 'rgba(255, 255, 255, 0.14)',
|
||||
trackColor : 'rgba(255, 255, 255, 0.14)',
|
||||
onStep: function(from, to, percent) {
|
||||
$(this.el).find('.percent').text(Math.round(percent));
|
||||
}
|
||||
});
|
||||
|
||||
$('.easy-pie-chart-2').easyPieChart({
|
||||
easing: 'easeOutBounce',
|
||||
barColor : '#ffffff',
|
||||
lineWidth: 6,
|
||||
lineCap: 'rgba(255, 255, 255, 0.14)',
|
||||
trackColor : 'rgba(255, 255, 255, 0.14)',
|
||||
onStep: function(from, to, percent) {
|
||||
$(this.el).find('.percent').text(Math.round(percent));
|
||||
}
|
||||
});
|
||||
|
||||
$('.easy-pie-chart-3').easyPieChart({
|
||||
easing: 'easeOutBounce',
|
||||
barColor : '#ffffff',
|
||||
lineWidth: 6,
|
||||
lineCap: 'rgba(255, 255, 255, 0.14)',
|
||||
trackColor : 'rgba(255, 255, 255, 0.14)',
|
||||
onStep: function(from, to, percent) {
|
||||
$(this.el).find('.percent').text(Math.round(percent));
|
||||
}
|
||||
});
|
||||
|
||||
$('.easy-pie-chart-4').easyPieChart({
|
||||
easing: 'easeOutBounce',
|
||||
barColor : '#ffffff',
|
||||
lineWidth: 6,
|
||||
lineCap: 'rgba(255, 255, 255, 0.14)',
|
||||
trackColor : 'rgba(255, 255, 255, 0.14)',
|
||||
onStep: function(from, to, percent) {
|
||||
$(this.el).find('.percent').text(Math.round(percent));
|
||||
}
|
||||
});
|
||||
|
||||
$('.easy-pie-chart-5').easyPieChart({
|
||||
easing: 'easeOutBounce',
|
||||
barColor : '#ffffff',
|
||||
lineWidth: 8,
|
||||
trackColor : 'rgba(255, 255, 255, 0.14)',
|
||||
scaleColor: false,
|
||||
onStep: function(from, to, percent) {
|
||||
$(this.el).find('.percent').text(Math.round(percent));
|
||||
}
|
||||
});
|
||||
|
||||
$('.easy-pie-chart-6').easyPieChart({
|
||||
easing: 'easeOutBounce',
|
||||
barColor : '#ffffff',
|
||||
lineWidth: 8,
|
||||
trackColor : 'rgba(255, 255, 255, 0.14)',
|
||||
scaleColor: false,
|
||||
onStep: function(from, to, percent) {
|
||||
$(this.el).find('.percent').text(Math.round(percent));
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
$('.easy-pie-chart-7').easyPieChart({
|
||||
easing: 'easeOutBounce',
|
||||
barColor : '#ffffff',
|
||||
lineWidth: 8,
|
||||
trackColor : 'rgba(255, 255, 255, 0.14)',
|
||||
scaleColor: false,
|
||||
onStep: function(from, to, percent) {
|
||||
$(this.el).find('.percent').text(Math.round(percent));
|
||||
}
|
||||
});
|
||||
|
||||
$('.easy-pie-chart-8').easyPieChart({
|
||||
easing: 'easeOutBounce',
|
||||
barColor : '#ffffff',
|
||||
lineWidth: 8,
|
||||
trackColor : 'rgba(255, 255, 255, 0.14)',
|
||||
scaleColor: false,
|
||||
onStep: function(from, to, percent) {
|
||||
$(this.el).find('.percent').text(Math.round(percent));
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
},
|
||||
//init
|
||||
$.EasyPieChart = new EasyPieChart, $.EasyPieChart.Constructor = EasyPieChart
|
||||
}(window.jQuery),
|
||||
|
||||
//initializing
|
||||
function($) {
|
||||
"use strict";
|
||||
$.EasyPieChart.init()
|
||||
}(window.jQuery);
|
||||
9
v2/assets/plugins/jquery.easy-pie-chart/easypiechart.min.js
vendored
Normal file
9
v2/assets/plugins/jquery.easy-pie-chart/easypiechart.min.js
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
/**!
|
||||
* easyPieChart
|
||||
* Lightweight plugin to render simple, animated and retina optimized pie charts
|
||||
*
|
||||
* @license
|
||||
* @author Robert Fleischmann <rendro87@gmail.com> (http://robert-fleischmann.de)
|
||||
* @version 2.1.6
|
||||
**/
|
||||
!function(a,b){"object"==typeof exports?module.exports=b():"function"==typeof define&&define.amd?define([],b):a.EasyPieChart=b()}(this,function(){var a=function(a,b){var c,d=document.createElement("canvas");a.appendChild(d),"undefined"!=typeof G_vmlCanvasManager&&G_vmlCanvasManager.initElement(d);var e=d.getContext("2d");d.width=d.height=b.size;var f=1;window.devicePixelRatio>1&&(f=window.devicePixelRatio,d.style.width=d.style.height=[b.size,"px"].join(""),d.width=d.height=b.size*f,e.scale(f,f)),e.translate(b.size/2,b.size/2),e.rotate((-0.5+b.rotate/180)*Math.PI);var g=(b.size-b.lineWidth)/2;b.scaleColor&&b.scaleLength&&(g-=b.scaleLength+2),Date.now=Date.now||function(){return+new Date};var h=function(a,b,c){c=Math.min(Math.max(-1,c||0),1);var d=0>=c?!0:!1;e.beginPath(),e.arc(0,0,g,0,2*Math.PI*c,d),e.strokeStyle=a,e.lineWidth=b,e.stroke()},i=function(){var a,c;e.lineWidth=1,e.fillStyle=b.scaleColor,e.save();for(var d=24;d>0;--d)d%6===0?(c=b.scaleLength,a=0):(c=.6*b.scaleLength,a=b.scaleLength-c),e.fillRect(-b.size/2+a,0,c,1),e.rotate(Math.PI/12);e.restore()},j=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||function(a){window.setTimeout(a,1e3/60)}}(),k=function(){b.scaleColor&&i(),b.trackColor&&h(b.trackColor,b.trackWidth||b.lineWidth,1)};this.getCanvas=function(){return d},this.getCtx=function(){return e},this.clear=function(){e.clearRect(b.size/-2,b.size/-2,b.size,b.size)},this.draw=function(a){b.scaleColor||b.trackColor?e.getImageData&&e.putImageData?c?e.putImageData(c,0,0):(k(),c=e.getImageData(0,0,b.size*f,b.size*f)):(this.clear(),k()):this.clear(),e.lineCap=b.lineCap;var d;d="function"==typeof b.barColor?b.barColor(a):b.barColor,h(d,b.lineWidth,a/100)}.bind(this),this.animate=function(a,c){var d=Date.now();b.onStart(a,c);var e=function(){var f=Math.min(Date.now()-d,b.animate.duration),g=b.easing(this,f,a,c-a,b.animate.duration);this.draw(g),b.onStep(a,c,g),f>=b.animate.duration?b.onStop(a,c):j(e)}.bind(this);j(e)}.bind(this)},b=function(b,c){var d={barColor:"#ef1e25",trackColor:"#f9f9f9",scaleColor:"#dfe0e0",scaleLength:5,lineCap:"round",lineWidth:3,trackWidth:void 0,size:110,rotate:0,animate:{duration:1e3,enabled:!0},easing:function(a,b,c,d,e){return b/=e/2,1>b?d/2*b*b+c:-d/2*(--b*(b-2)-1)+c},onStart:function(){},onStep:function(){},onStop:function(){}};if("undefined"!=typeof a)d.renderer=a;else{if("undefined"==typeof SVGRenderer)throw new Error("Please load either the SVG- or the CanvasRenderer");d.renderer=SVGRenderer}var e={},f=0,g=function(){this.el=b,this.options=e;for(var a in d)d.hasOwnProperty(a)&&(e[a]=c&&"undefined"!=typeof c[a]?c[a]:d[a],"function"==typeof e[a]&&(e[a]=e[a].bind(this)));e.easing="string"==typeof e.easing&&"undefined"!=typeof jQuery&&jQuery.isFunction(jQuery.easing[e.easing])?jQuery.easing[e.easing]:d.easing,"number"==typeof e.animate&&(e.animate={duration:e.animate,enabled:!0}),"boolean"!=typeof e.animate||e.animate||(e.animate={duration:1e3,enabled:e.animate}),this.renderer=new e.renderer(b,e),this.renderer.draw(f),b.dataset&&b.dataset.percent?this.update(parseFloat(b.dataset.percent)):b.getAttribute&&b.getAttribute("data-percent")&&this.update(parseFloat(b.getAttribute("data-percent")))}.bind(this);this.update=function(a){return a=parseFloat(a),e.animate.enabled?this.renderer.animate(f,a):this.renderer.draw(a),f=a,this}.bind(this),this.disableAnimation=function(){return e.animate.enabled=!1,this},this.enableAnimation=function(){return e.animate.enabled=!0,this},g()};return b});
|
||||
9
v2/assets/plugins/jquery.easy-pie-chart/jquery.easypiechart.min.js
vendored
Normal file
9
v2/assets/plugins/jquery.easy-pie-chart/jquery.easypiechart.min.js
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
/**!
|
||||
* easyPieChart
|
||||
* Lightweight plugin to render simple, animated and retina optimized pie charts
|
||||
*
|
||||
* @license
|
||||
* @author Robert Fleischmann <rendro87@gmail.com> (http://robert-fleischmann.de)
|
||||
* @version 2.1.6
|
||||
**/
|
||||
!function(a,b){"object"==typeof exports?module.exports=b(require("jquery")):"function"==typeof define&&define.amd?define(["jquery"],b):b(a.jQuery)}(this,function(a){var b=function(a,b){var c,d=document.createElement("canvas");a.appendChild(d),"undefined"!=typeof G_vmlCanvasManager&&G_vmlCanvasManager.initElement(d);var e=d.getContext("2d");d.width=d.height=b.size;var f=1;window.devicePixelRatio>1&&(f=window.devicePixelRatio,d.style.width=d.style.height=[b.size,"px"].join(""),d.width=d.height=b.size*f,e.scale(f,f)),e.translate(b.size/2,b.size/2),e.rotate((-0.5+b.rotate/180)*Math.PI);var g=(b.size-b.lineWidth)/2;b.scaleColor&&b.scaleLength&&(g-=b.scaleLength+2),Date.now=Date.now||function(){return+new Date};var h=function(a,b,c){c=Math.min(Math.max(-1,c||0),1);var d=0>=c?!0:!1;e.beginPath(),e.arc(0,0,g,0,2*Math.PI*c,d),e.strokeStyle=a,e.lineWidth=b,e.stroke()},i=function(){var a,c;e.lineWidth=1,e.fillStyle=b.scaleColor,e.save();for(var d=24;d>0;--d)d%6===0?(c=b.scaleLength,a=0):(c=.6*b.scaleLength,a=b.scaleLength-c),e.fillRect(-b.size/2+a,0,c,1),e.rotate(Math.PI/12);e.restore()},j=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||function(a){window.setTimeout(a,1e3/60)}}(),k=function(){b.scaleColor&&i(),b.trackColor&&h(b.trackColor,b.trackWidth||b.lineWidth,1)};this.getCanvas=function(){return d},this.getCtx=function(){return e},this.clear=function(){e.clearRect(b.size/-2,b.size/-2,b.size,b.size)},this.draw=function(a){b.scaleColor||b.trackColor?e.getImageData&&e.putImageData?c?e.putImageData(c,0,0):(k(),c=e.getImageData(0,0,b.size*f,b.size*f)):(this.clear(),k()):this.clear(),e.lineCap=b.lineCap;var d;d="function"==typeof b.barColor?b.barColor(a):b.barColor,h(d,b.lineWidth,a/100)}.bind(this),this.animate=function(a,c){var d=Date.now();b.onStart(a,c);var e=function(){var f=Math.min(Date.now()-d,b.animate.duration),g=b.easing(this,f,a,c-a,b.animate.duration);this.draw(g),b.onStep(a,c,g),f>=b.animate.duration?b.onStop(a,c):j(e)}.bind(this);j(e)}.bind(this)},c=function(a,c){var d={barColor:"#ef1e25",trackColor:"#f9f9f9",scaleColor:"#dfe0e0",scaleLength:5,lineCap:"round",lineWidth:3,trackWidth:void 0,size:110,rotate:0,animate:{duration:1e3,enabled:!0},easing:function(a,b,c,d,e){return b/=e/2,1>b?d/2*b*b+c:-d/2*(--b*(b-2)-1)+c},onStart:function(){},onStep:function(){},onStop:function(){}};if("undefined"!=typeof b)d.renderer=b;else{if("undefined"==typeof SVGRenderer)throw new Error("Please load either the SVG- or the CanvasRenderer");d.renderer=SVGRenderer}var e={},f=0,g=function(){this.el=a,this.options=e;for(var b in d)d.hasOwnProperty(b)&&(e[b]=c&&"undefined"!=typeof c[b]?c[b]:d[b],"function"==typeof e[b]&&(e[b]=e[b].bind(this)));e.easing="string"==typeof e.easing&&"undefined"!=typeof jQuery&&jQuery.isFunction(jQuery.easing[e.easing])?jQuery.easing[e.easing]:d.easing,"number"==typeof e.animate&&(e.animate={duration:e.animate,enabled:!0}),"boolean"!=typeof e.animate||e.animate||(e.animate={duration:1e3,enabled:e.animate}),this.renderer=new e.renderer(a,e),this.renderer.draw(f),a.dataset&&a.dataset.percent?this.update(parseFloat(a.dataset.percent)):a.getAttribute&&a.getAttribute("data-percent")&&this.update(parseFloat(a.getAttribute("data-percent")))}.bind(this);this.update=function(a){return a=parseFloat(a),e.animate.enabled?this.renderer.animate(f,a):this.renderer.draw(a),f=a,this}.bind(this),this.disableAnimation=function(){return e.animate.enabled=!1,this},this.enableAnimation=function(){return e.animate.enabled=!0,this},g()};a.fn.easyPieChart=function(b){return this.each(function(){var d;a.data(this,"easyPieChart")||(d=a.extend({},b,a(this).data()),a.data(this,"easyPieChart",new c(this,d)))})}});
|
||||
105
v2/assets/plugins/simplebar/css/simplebar.css
Normal file
105
v2/assets/plugins/simplebar/css/simplebar.css
Normal file
@@ -0,0 +1,105 @@
|
||||
/*!
|
||||
*
|
||||
* SimpleBar.js - v2.6.1
|
||||
* Scrollbars, simpler.
|
||||
* https://grsmto.github.io/simplebar/
|
||||
*
|
||||
* Made by Adrien Grsmto from a fork by Jonathan Nicol
|
||||
* Under MIT License
|
||||
*
|
||||
*/
|
||||
[data-simplebar] {
|
||||
position: relative;
|
||||
z-index: 0;
|
||||
overflow: hidden!important;
|
||||
max-height: inherit;
|
||||
-webkit-overflow-scrolling: touch; /* Trigger native scrolling for mobile, if not supported, plugin is used. */
|
||||
}
|
||||
|
||||
[data-simplebar="init"] {
|
||||
display: -webkit-box;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.simplebar-scroll-content {
|
||||
overflow-x: hidden!important;
|
||||
overflow-y: scroll;
|
||||
min-width: 100%!important;
|
||||
max-height: inherit!important;
|
||||
-webkit-box-sizing: content-box!important;
|
||||
box-sizing: content-box!important;
|
||||
}
|
||||
|
||||
.simplebar-content {
|
||||
overflow-y: hidden!important;
|
||||
overflow-x: scroll;
|
||||
-webkit-box-sizing: border-box!important;
|
||||
box-sizing: border-box!important;
|
||||
min-height: 100%!important;
|
||||
}
|
||||
|
||||
.simplebar-track {
|
||||
z-index: 1;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
width: 11px;
|
||||
}
|
||||
|
||||
.simplebar-scrollbar {
|
||||
position: absolute;
|
||||
right: 2px;
|
||||
width: 7px;
|
||||
min-height: 10px;
|
||||
}
|
||||
|
||||
.simplebar-scrollbar:before {
|
||||
position: absolute;
|
||||
content: "";
|
||||
background: black;
|
||||
border-radius: 7px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
opacity: 0;
|
||||
-webkit-transition: opacity 0.2s linear;
|
||||
transition: opacity 0.2s linear;
|
||||
}
|
||||
|
||||
.simplebar-track:hover .simplebar-scrollbar:before,
|
||||
.simplebar-track .simplebar-scrollbar.visible:before {
|
||||
/* When hovered, remove all transitions from drag handle */
|
||||
opacity: 0.0;
|
||||
-webkit-transition: opacity 0.0 linear;
|
||||
transition: opacity 0.0 linear;
|
||||
}
|
||||
|
||||
.simplebar-track.vertical {
|
||||
top: 0;
|
||||
}
|
||||
|
||||
.simplebar-track.vertical .simplebar-scrollbar:before {
|
||||
top: 2px;
|
||||
bottom: 2px;
|
||||
}
|
||||
|
||||
.simplebar-track.horizontal {
|
||||
left: 0;
|
||||
width: auto;
|
||||
height: 11px;
|
||||
}
|
||||
|
||||
.simplebar-track.horizontal .simplebar-scrollbar:before {
|
||||
height: 100%;
|
||||
left: 2px;
|
||||
right: 2px;
|
||||
}
|
||||
|
||||
.horizontal.simplebar-track .simplebar-scrollbar {
|
||||
right: auto;
|
||||
top: 2px;
|
||||
height: 7px;
|
||||
min-height: 0;
|
||||
min-width: 10px;
|
||||
width: auto;
|
||||
}
|
||||
17
v2/assets/plugins/simplebar/js/simplebar.js
Normal file
17
v2/assets/plugins/simplebar/js/simplebar.js
Normal file
File diff suppressed because one or more lines are too long
2
v2/assets/plugins/sparkline-charts/jquery.sparkline.min.js
vendored
Normal file
2
v2/assets/plugins/sparkline-charts/jquery.sparkline.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
82
v2/assets/plugins/sparkline-charts/sparkline-chart-script.js
Normal file
82
v2/assets/plugins/sparkline-charts/sparkline-chart-script.js
Normal file
@@ -0,0 +1,82 @@
|
||||
|
||||
|
||||
$(function() {
|
||||
|
||||
"use strict";
|
||||
|
||||
|
||||
|
||||
$('#sparklinechart1').sparkline([ 1, 4, 5, 9, 8, 10, 5, 8, 4, 1, 0, 7, 5, 7, 9, 8, 10, 5], {
|
||||
|
||||
type: 'bar',
|
||||
|
||||
height: '45',
|
||||
|
||||
barWidth: '3',
|
||||
|
||||
resize: true,
|
||||
|
||||
barSpacing: '4',
|
||||
|
||||
barColor: '#ffffff',
|
||||
|
||||
spotColor: '#ffffff',
|
||||
|
||||
minSpotColor: '#ffffff',
|
||||
|
||||
maxSpotColor: '#ffffff',
|
||||
|
||||
highlightSpotColor: '#ffffff',
|
||||
|
||||
highlightLineColor: '#ffffff'
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
$("#sparklinechart2").sparkline([1,1,0,1,-1,-1,1,-1,0,0,1,-1,1,1,-1,0,0,1,1,-1,-1,1,1], {
|
||||
|
||||
type: 'tristate',
|
||||
|
||||
height: '30',
|
||||
|
||||
zeroAxis: false
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
$("#sparklinechart3").sparkline([28,48,40,19,96,27,100], {
|
||||
|
||||
type: 'line',
|
||||
|
||||
width: '150',
|
||||
|
||||
height: '65',
|
||||
|
||||
lineWidth: '2',
|
||||
|
||||
lineColor: '#ffffff',
|
||||
|
||||
fillColor: 'transparent',
|
||||
|
||||
spotColor: '#ffffff',
|
||||
|
||||
minSpotColor: '#ffffff',
|
||||
|
||||
maxSpotColor: '#ffffff',
|
||||
|
||||
highlightSpotColor: '#ffffff',
|
||||
|
||||
highlightLineColor: '#ffffff'
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user