Add frontend assets and plugin bundles
Add the legacy frontend themes, scripts, and plugin assets required by the main SPOTA interfaces.
This commit is contained in:
176
assets/plugins/bootstrap-switch/static/less/bootstrap-switch.less
vendored
Normal file
176
assets/plugins/bootstrap-switch/static/less/bootstrap-switch.less
vendored
Normal file
@@ -0,0 +1,176 @@
|
||||
/* ============================================================
|
||||
* bootstrapSwitch v1.8 by Larentis Mattia @SpiritualGuru
|
||||
* http://www.larentis.eu/
|
||||
*
|
||||
* Enhanced for radiobuttons by Stein, Peter @BdMdesigN
|
||||
* http://www.bdmdesign.org/
|
||||
*
|
||||
* Project site:
|
||||
* http://www.larentis.eu/switch/
|
||||
* ============================================================
|
||||
* Licensed under the Apache License, Version 2.0
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* ============================================================ */
|
||||
|
||||
@import "deps/variables";
|
||||
@import "deps/mixins";
|
||||
|
||||
.has-switch {
|
||||
display: inline-block;
|
||||
cursor: pointer;
|
||||
.border-radius(5px);
|
||||
border: 1px solid;
|
||||
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
|
||||
position: relative;
|
||||
text-align: left;
|
||||
overflow: hidden;
|
||||
line-height: 8px;
|
||||
.user-select(none);
|
||||
vertical-align: middle;
|
||||
|
||||
min-width: 100px;
|
||||
|
||||
&.switch-mini {
|
||||
min-width: 72px;
|
||||
}
|
||||
&.switch-mini i.switch-mini-icons {
|
||||
height: 1.20em;
|
||||
line-height: 9px;
|
||||
vertical-align: text-top;
|
||||
text-align: center;
|
||||
transform: scale(0.6);
|
||||
margin-top: -1px;
|
||||
margin-bottom: -1px;
|
||||
}
|
||||
&.switch-small {
|
||||
min-width: 80px;
|
||||
}
|
||||
|
||||
&.switch-large {
|
||||
min-width: 120px;
|
||||
}
|
||||
|
||||
&.deactivate {
|
||||
.opacity(50);
|
||||
cursor: default !important;
|
||||
label, span {
|
||||
cursor: default !important;
|
||||
}
|
||||
}
|
||||
> div {
|
||||
display: inline-block;
|
||||
width: 150%;
|
||||
position: relative;
|
||||
top: 0;
|
||||
|
||||
&.switch-animate {
|
||||
.transition(left 0.5s);
|
||||
}
|
||||
&.switch-off {
|
||||
left: -50%;
|
||||
}
|
||||
&.switch-on {
|
||||
left: 0%;
|
||||
}
|
||||
}
|
||||
input[type=radio],
|
||||
input[type=checkbox] {
|
||||
//debug
|
||||
display: none;
|
||||
//position: absolute;
|
||||
//margin-left: 60%;
|
||||
//z-index: 123;
|
||||
}
|
||||
|
||||
span, label {
|
||||
.box-sizing(border-box);
|
||||
|
||||
cursor: pointer;
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
height: 100%;
|
||||
|
||||
padding-bottom: 4px;
|
||||
padding-top: 4px;
|
||||
font-size: 14px;
|
||||
line-height: 20px;
|
||||
|
||||
&.switch-mini {
|
||||
padding-bottom: 4px;
|
||||
padding-top: 4px;
|
||||
font-size: 10px;
|
||||
line-height: 9px;
|
||||
}
|
||||
|
||||
&.switch-small {
|
||||
padding-bottom: 3px;
|
||||
padding-top: 3px;
|
||||
font-size: 12px;
|
||||
line-height: 18px;
|
||||
}
|
||||
|
||||
&.switch-large {
|
||||
padding-bottom: 9px;
|
||||
padding-top: 9px;
|
||||
font-size: 16px;
|
||||
line-height: normal;
|
||||
}
|
||||
}
|
||||
|
||||
label {
|
||||
text-align: center;
|
||||
margin-top: -1px;
|
||||
margin-bottom: -1px;
|
||||
z-index: 100;
|
||||
width: 34%;
|
||||
border-left: 1px solid @btnBorder;
|
||||
border-right: 1px solid @btnBorder;
|
||||
|
||||
.buttonBackground(@btnBackground, @btnBackgroundHighlight, @grayDark);
|
||||
|
||||
i {
|
||||
color: #000;
|
||||
text-shadow: 0 1px 0 #fff;
|
||||
line-height: 18px;
|
||||
pointer-events: none;
|
||||
}
|
||||
}
|
||||
|
||||
span {
|
||||
text-align: center;
|
||||
z-index: 1;
|
||||
width: 33%;
|
||||
|
||||
&.switch-left {
|
||||
.border-left-radius(4px);
|
||||
}
|
||||
|
||||
&.switch-right {
|
||||
.buttonBackground(@btnBackgroundHighlight, @btnBackground, @grayDark, 0 1px 1px rgba(255,255,255,.75));
|
||||
}
|
||||
|
||||
&.switch-primary, &.switch-left {
|
||||
.buttonBackground(@btnPrimaryBackgroundHighlight, @btnPrimaryBackground);
|
||||
}
|
||||
|
||||
&.switch-info {
|
||||
.buttonBackground(@btnInfoBackgroundHighlight, @btnInfoBackground);
|
||||
}
|
||||
|
||||
&.switch-success {
|
||||
.buttonBackground(@btnSuccessBackgroundHighlight, @btnSuccessBackground);
|
||||
}
|
||||
|
||||
&.switch-warning {
|
||||
.buttonBackground(@btnWarningBackgroundHighlight, @btnWarningBackground);
|
||||
}
|
||||
|
||||
&.switch-danger {
|
||||
.buttonBackground(@btnDangerBackgroundHighlight, @btnDangerBackground);
|
||||
}
|
||||
|
||||
&.switch-default {
|
||||
.buttonBackground(@btnBackgroundHighlight, @btnBackground, @grayDark, 0 1px 1px rgba(255,255,255,.75));
|
||||
}
|
||||
}
|
||||
}
|
||||
97
assets/plugins/bootstrap-switch/static/less/deps/mixins.less
Normal file
97
assets/plugins/bootstrap-switch/static/less/deps/mixins.less
Normal file
@@ -0,0 +1,97 @@
|
||||
.border-radius(@radius) {
|
||||
-webkit-border-radius: @radius;
|
||||
-moz-border-radius: @radius;
|
||||
border-radius: @radius;
|
||||
}
|
||||
|
||||
.border-top-left-radius(@radius) {
|
||||
-webkit-border-top-left-radius: @radius;
|
||||
-moz-border-radius-topleft: @radius;
|
||||
border-top-left-radius: @radius;
|
||||
}
|
||||
|
||||
.border-bottom-left-radius(@radius) {
|
||||
-webkit-border-bottom-left-radius: @radius;
|
||||
-moz-border-radius-bottomleft: @radius;
|
||||
border-bottom-left-radius: @radius;
|
||||
}
|
||||
|
||||
.border-left-radius(@radius) {
|
||||
.border-top-left-radius(@radius);
|
||||
.border-bottom-left-radius(@radius);
|
||||
}
|
||||
|
||||
// Transitions
|
||||
.transition(@transition) {
|
||||
-webkit-transition: @transition;
|
||||
-moz-transition: @transition;
|
||||
-o-transition: @transition;
|
||||
transition: @transition;
|
||||
}
|
||||
|
||||
// Box sizing
|
||||
.box-sizing(@boxmodel) {
|
||||
-webkit-box-sizing: @boxmodel;
|
||||
-moz-box-sizing: @boxmodel;
|
||||
box-sizing: @boxmodel;
|
||||
}
|
||||
|
||||
// User select
|
||||
// For selecting text on the page
|
||||
.user-select(@select) {
|
||||
-webkit-user-select: @select;
|
||||
-moz-user-select: @select;
|
||||
-ms-user-select: @select;
|
||||
-o-user-select: @select;
|
||||
user-select: @select;
|
||||
}
|
||||
|
||||
// Opacity
|
||||
.opacity(@opacity) {
|
||||
opacity: @opacity / 100;
|
||||
filter: ~"alpha(opacity=@{opacity})";
|
||||
}
|
||||
|
||||
// Gradient Bar Colors for buttons and alerts
|
||||
.gradientBar(@primaryColor, @secondaryColor, @textColor: #fff, @textShadow: 0 -1px 0 rgba(0,0,0,.25)) {
|
||||
color: @textColor;
|
||||
text-shadow: @textShadow;
|
||||
#gradient > .vertical(@primaryColor, @secondaryColor);
|
||||
border-color: @secondaryColor @secondaryColor darken(@secondaryColor, 15%);
|
||||
border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) fadein(rgba(0, 0, 0, .1), 15%);
|
||||
}
|
||||
|
||||
// Gradients
|
||||
#gradient {
|
||||
.vertical(@startColor: #555, @endColor: #333) {
|
||||
background-color: mix(@startColor, @endColor, 60%);
|
||||
background-image: -moz-linear-gradient(top, @startColor, @endColor); // FF 3.6+
|
||||
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+
|
||||
background-image: -webkit-linear-gradient(top, @startColor, @endColor); // Safari 5.1+, Chrome 10+
|
||||
background-image: -o-linear-gradient(top, @startColor, @endColor); // Opera 11.10
|
||||
background-image: linear-gradient(to bottom, @startColor, @endColor); // Standard, IE10
|
||||
background-repeat: repeat-x;
|
||||
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@startColor), argb(@endColor))); // IE9 and down
|
||||
}
|
||||
}
|
||||
|
||||
.reset-filter() {
|
||||
filter: e(%("progid:DXImageTransform.Microsoft.gradient(enabled = false)"));
|
||||
}
|
||||
|
||||
.buttonBackground(@startColor, @endColor, @textColor: #fff, @textShadow: 0 -1px 0 rgba(0,0,0,.25)) { // gradientBar will set the background to a pleasing blend of these, to support IE<=9
|
||||
.gradientBar(@startColor, @endColor, @textColor, @textShadow);
|
||||
*background-color: @endColor; /* Darken IE7 buttons by default so they stand out more given they won't have borders */
|
||||
.reset-filter(); // in these cases the gradient won't cover the background, so we override
|
||||
&:hover, &:focus, &:active, &.active, &.disabled, &[disabled] {
|
||||
color: @textColor;
|
||||
background-color: @endColor;
|
||||
*background-color: darken(@endColor, 5%);
|
||||
}
|
||||
|
||||
// IE 7 + 8 can't handle box-shadow to show active, so we darken a bit ourselves
|
||||
&:active,
|
||||
&.active {
|
||||
background-color: darken(@endColor, 10%) e("\9");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
@grayDarker: #222;
|
||||
@grayDark: #333;
|
||||
@white: #fff;
|
||||
@orange: #f89406;
|
||||
|
||||
@bodyBackground: @white;
|
||||
@textColor: @grayDark;
|
||||
|
||||
@linkColor: #08c;
|
||||
@linkColorHover: darken(@linkColor, 15%);
|
||||
|
||||
@btnBackground: @white;
|
||||
@btnBackgroundHighlight: darken(@white, 10%);
|
||||
@btnBorder: #ccc;
|
||||
|
||||
@btnPrimaryBackground: @linkColor;
|
||||
@btnPrimaryBackgroundHighlight: spin(@btnPrimaryBackground, 20%);
|
||||
|
||||
@btnInfoBackground: #5bc0de;
|
||||
@btnInfoBackgroundHighlight: #2f96b4;
|
||||
|
||||
@btnSuccessBackground: #62c462;
|
||||
@btnSuccessBackgroundHighlight: #51a351;
|
||||
|
||||
@btnWarningBackground: lighten(@orange, 15%);
|
||||
@btnWarningBackgroundHighlight: @orange;
|
||||
|
||||
@btnDangerBackground: #ee5f5b;
|
||||
@btnDangerBackgroundHighlight: #bd362f;
|
||||
|
||||
@btnInverseBackground: #444;
|
||||
@btnInverseBackgroundHighlight: @grayDarker;
|
||||
Reference in New Issue
Block a user