Initial WebUI design and structure with JSON sample function (#170)

* Initial WebUI with sample functions

* Changed folder structure

* Light Reset Button and Translation fixing in Links

* Indentation fixed

* Reorganized menu and new function for setting effects

* Styling fix
This commit is contained in:
b1rdhous3
2016-08-13 20:05:01 +02:00
committed by redPanther
parent 5a902add81
commit 1ff8528597
570 changed files with 41576 additions and 995 deletions

View File

@@ -0,0 +1,222 @@
/*!
* Bootstrap Colorpicker v2.3.3
* http://mjolnic.github.io/bootstrap-colorpicker/
*
* Originally written by (c) 2012 Stefan Petre
* Licensed under the Apache License v2.0
* http://www.apache.org/licenses/LICENSE-2.0.txt
*
*/
.colorpicker-saturation {
width: 100px;
height: 100px;
background-image: url("../img/bootstrap-colorpicker/saturation.png");
cursor: crosshair;
float: left;
}
.colorpicker-saturation i {
display: block;
height: 5px;
width: 5px;
border: 1px solid #000;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
position: absolute;
top: 0;
left: 0;
margin: -4px 0 0 -4px;
}
.colorpicker-saturation i b {
display: block;
height: 5px;
width: 5px;
border: 1px solid #fff;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
}
.colorpicker-hue,
.colorpicker-alpha {
width: 15px;
height: 100px;
float: left;
cursor: row-resize;
margin-left: 4px;
margin-bottom: 4px;
}
.colorpicker-hue i,
.colorpicker-alpha i {
display: block;
height: 1px;
background: #000;
border-top: 1px solid #fff;
position: absolute;
top: 0;
left: 0;
width: 100%;
margin-top: -1px;
}
.colorpicker-hue {
background-image: url("../img/bootstrap-colorpicker/hue.png");
}
.colorpicker-alpha {
background-image: url("../img/bootstrap-colorpicker/alpha.png");
display: none;
}
.colorpicker-saturation,
.colorpicker-hue,
.colorpicker-alpha {
background-size: contain;
}
.colorpicker {
padding: 4px;
min-width: 130px;
margin-top: 1px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
z-index: 2500;
}
.colorpicker:before,
.colorpicker:after {
display: table;
content: "";
line-height: 0;
}
.colorpicker:after {
clear: both;
}
.colorpicker:before {
content: '';
display: inline-block;
border-left: 7px solid transparent;
border-right: 7px solid transparent;
border-bottom: 7px solid #ccc;
border-bottom-color: rgba(0, 0, 0, 0.2);
position: absolute;
top: -7px;
left: 6px;
}
.colorpicker:after {
content: '';
display: inline-block;
border-left: 6px solid transparent;
border-right: 6px solid transparent;
border-bottom: 6px solid #ffffff;
position: absolute;
top: -6px;
left: 7px;
}
.colorpicker div {
position: relative;
}
.colorpicker.colorpicker-with-alpha {
min-width: 140px;
}
.colorpicker.colorpicker-with-alpha .colorpicker-alpha {
display: block;
}
.colorpicker-color {
height: 10px;
margin-top: 5px;
clear: both;
background-image: url("../img/bootstrap-colorpicker/alpha.png");
background-position: 0 100%;
}
.colorpicker-color div {
height: 10px;
}
.colorpicker-selectors {
display: none;
height: 10px;
margin-top: 5px;
clear: both;
}
.colorpicker-selectors i {
cursor: pointer;
float: left;
height: 10px;
width: 10px;
}
.colorpicker-selectors i + i {
margin-left: 3px;
}
.colorpicker-element .input-group-addon i,
.colorpicker-element .add-on i {
display: inline-block;
cursor: pointer;
height: 16px;
vertical-align: text-top;
width: 16px;
}
.colorpicker.colorpicker-inline {
position: relative;
display: inline-block;
float: none;
z-index: auto;
}
.colorpicker.colorpicker-horizontal {
width: 110px;
min-width: 110px;
height: auto;
}
.colorpicker.colorpicker-horizontal .colorpicker-saturation {
margin-bottom: 4px;
}
.colorpicker.colorpicker-horizontal .colorpicker-color {
width: 100px;
}
.colorpicker.colorpicker-horizontal .colorpicker-hue,
.colorpicker.colorpicker-horizontal .colorpicker-alpha {
width: 100px;
height: 15px;
float: left;
cursor: col-resize;
margin-left: 0px;
margin-bottom: 4px;
}
.colorpicker.colorpicker-horizontal .colorpicker-hue i,
.colorpicker.colorpicker-horizontal .colorpicker-alpha i {
display: block;
height: 15px;
background: #ffffff;
position: absolute;
top: 0;
left: 0;
width: 1px;
border: none;
margin-top: 0px;
}
.colorpicker.colorpicker-horizontal .colorpicker-hue {
background-image: url("../img/bootstrap-colorpicker/hue-horizontal.png");
}
.colorpicker.colorpicker-horizontal .colorpicker-alpha {
background-image: url("../img/bootstrap-colorpicker/alpha-horizontal.png");
}
.colorpicker.colorpicker-hidden {
display: none;
}
.colorpicker.colorpicker-visible {
display: block;
}
.colorpicker-inline.colorpicker-visible {
display: inline-block;
}
.colorpicker-right:before {
left: auto;
right: 6px;
}
.colorpicker-right:after {
left: auto;
right: 7px;
}
.colorpicker-no-arrow:before {
border-right: 0;
border-left: 0;
}
.colorpicker-no-arrow:after {
border-right: 0;
border-left: 0;
}
/*# sourceMappingURL=bootstrap-colorpicker.css.map */

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,609 +0,0 @@
@font-face {
font-family: 'fontello';
src: url('../res/fontello.ttf') format('truetype'), url('../res/fontello.woff') format('woff');
font-weight: normal;
font-style: normal;
}
html, body {
height: 100%;
width: 100%;
padding: 0;
margin: 0;
color: #A6B4B4;
background-color: #2C2C2C;
}
* {
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
-webkit-touch-callout: none;
-webkit-text-size-adjust: none;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
font-family: 'Lucida Grande', Helvetica, Arial, Roboto, serif;
}
#app {
height: 100%;
width: 100%;
display: -webkit-flex;
-webkit-flex-direction: column;
-webkit-flex-wrap: nowrap;
display: flex;
flex-direction: column;
flex-wrap: nowrap;
background-color: #2C2C2C;
min-width: 320px;
min-height: 460px;
}
.work {
-webkit-flex: 1;
flex: 1;
position: relative;
overflow: hidden;
}
.footer {
border-top: 1px solid #919F9F;
display: -webkit-flex;
-webkit-justify-content: space-around;
display: flex;
justify-content: space-around;
}
.footer .button {
width: 100%;
text-align: center;
position: relative;
padding: 5px;
}
.touchrect {
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
z-index: 10;
}
.icon {
font-family: "fontello";
}
.footer .button .icon {
font-size: 25px;
margin-top: 8px;
}
.footer .button .title {
font-size: 12px;
margin-top: 8px;
margin-bottom: 8px;
}
.footer .button:active,
.footer .button.selected {
color: #FFFFFF;
}
.container {
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 400%;
display: flex;
display: -webkit-flex;
-webkit-transition: left 0.5s ease-in-out;
transition: left 0.5s ease-in-out;
}
.contentarea {
width: 100%;
height: 100%;
overflow-y: auto;
-ms-overflow-y: auto;
-ms-overflow-style: -ms-autohiding-scrollbar;
position: relative;
-webkit-overflow-scrolling: touch;
}
#color {
display: -webkit-flex;
-webkit-flex-direction: column;
display: flex;
flex-direction: column;
}
#colorpicker {
position: relative;
-webkit-flex: 1;
flex: 1;
}
#colorwheelbg {
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: auto;
}
#pointer {
width: 30px;
height: 30px;
position: absolute;
border: 2px solid #FFFFFF;
border-radius: 15px;
left: calc(50% - 15px);
top: calc(50% - 15px);
}
ul {
list-style: none;
padding: 0;
margin: 0;
}
li {
display: block;
}
.horizontal {
display: -webkit-flex;
-webkit-flex: 1;
display: flex;
flex: 1;
position: relative;
}
li .delete_icon {
font-family: "fontello";
font-size: 20px;
color: red;
height: 40px;
width: 40px;
line-height: 40px;
text-align: center;
}
li .edit_icon {
font-family: "fontello";
font-size: 20px;
height: 40px;
width: 40px;
line-height: 40px;
text-align: center;
}
.locked .edit_icon,
.locked .delete_icon {
display: none;
}
li .titlebox {
-webkit-flex: 1;
flex: 1;
}
.titlebox label {
display: block;
line-height: 20px;
height: 20px;
}
.titlebox label.title {
font-size: 16px;
}
.titlebox label.subtitle {
font-size: 10px;
}
/*
li:not(:last-child) {
border-bottom: 1px solid #919F9F;
}
*/
li {
border-bottom: 1px solid #919F9F;
}
li input[type=range] {
width: 100%;
}
#transform li {
padding: 0;
}
#transform .icon {
width: 40px;
text-align: center;
}
.group,
.grouplist {
margin-top: 10px;
}
.grouplist .header {
display: flex;
justify-content: space-between;
border-bottom: 1px solid gray;
align-items: center;
padding-left: 15px;
font-size: 16px;
display: -webkit-flex;
-webkit-justify-content: space-between;
-webkit-align-items: center;
}
.group ul,
.grouplist ul {
overflow-y: hidden;
-webkit-transition: all 0.5s ease-in-out;
transition: all 0.5s ease-in-out;
}
.group[collapsed=true] ul {
max-height: 0;
}
.group li label {
margin: 4px 0 0 50px;
display: block;
background: none;
}
.group > .header {
border-bottom: 1px solid gray;
padding: 3px 0 3px 10px;
position: relative;
}
.group > .header label {
display: block;
background: none;
}
.group > .header label:first-child {
font-size: 16px;
}
.group > .header label:last-child {
font-size: 12px;
}
.group > .header label:first-child:after {
font-family: "fontello";
content: '\e808';
font-size: 20px;
transition: all 0.5s ease-in-out;
-webkit-transform-origin: 50% 33%;
-webkit-transform: rotateZ(180deg);
transform-origin: 50% 33%;
transform: rotateZ(180deg);
-ms-transform-origin: 50% 33%;
-ms-transform: rotateZ(180deg);
position: absolute;
right: 24px;
top: 0;
bottom: 0;
}
.grouplist .header .callout {
font-family: "fontello";
font-size: 20px;
padding: 10px;
}
.grouplist .header .callout:active {
color: #FFFFFF;
}
.group[collapsed=true] > .header label:first-child:after {
-webkit-transform: rotateZ(0deg);
-ms-transform: rotateZ(0deg);
transform: rotateZ(0deg);
}
.wrapper {
display: flex;
align-items: center;
display: -webkit-flex;
-webkit-align-items: center;
}
.wrapper .value {
width: 40px;
background: transparent;
border: 0;
color: #FFFFFF;
margin: auto 5px;
}
#transform .group .slider {
-webkit-flex: 1;
flex: 1;
width: 100%;
}
.slider {
position: relative;
margin-left: 20px;
margin-right: 20px;
}
.slider .track {
border-radius: 4px;
height: 4px;
border: 1px solid #BDC3C7;
background-color: #FFFFFF;
}
.slider .thumb {
box-sizing: border-box;
border-radius: 10px;
height: 20px;
width: 20px;
border: 2px solid #BDC3C7;
background-color: #FFFFFF;
position: absolute;
top: -8px;
margin-left: -10px;
}
.wrapper .icon {
display: block;
font-size: 30px;
}
.red .icon {
color: #FF0000;
}
.green .icon {
color: #00FF00;
}
.blue .icon {
color: #0000FF;
}
.msg {
position: relative;
margin: auto;
padding: 5px 10px;
font-size: 12px;
font-weight: bold;
}
.error {
background-color: #D70000;
color: #FFFFFF;
}
.status {
background-color: #00A200;
color: #FFFFFF;
}
.wrapper_msg {
position: absolute;
bottom: 5px;
width: 100%;
display: -webkit-flex;
display: flex;
visibility: visible;
opacity: 1;
-webkit-transition: opacity 0.2s linear;
transition: opacity 0.2s linear;
}
.invisible {
opacity: 0;
visibility: hidden;
}
.hidden {
display: none !important;
}
.inputline {
display: -webkit-flex;
-webkit-justify-content: space-between;
-webkit-align-items: center;
display: flex;
justify-content: space-between;
align-items: center;
font-size: 14px;
padding: 6px 10px;
}
#settings .inputline input {
background: none;
border: 1px solid rgba(100, 100, 100, 0.4);
height: 100%;
color: white;
text-align: right;
font-size: inherit;
-webkit-user-select: text;
-moz-user-select: text;
-ms-user-select: text;
user-select: text;
outline: none;
}
#settings .inputline input:focus {
color: white;
}
.line {
width: 100%;
position: relative;
padding: 5px 0;
}
button {
margin: auto 10px;
border: 1px #A6B4B4 solid;
background: none;
color: #A6B4B4;
padding: 6px 20px;
}
button:active {
border: 1px #FFFFFF solid;
background-color: transparent;
color: #FFFFFF;
outline: none;
}
button:focus {
outline: none;
}
.spinner {
height: 20px;
width: 20px;
display: inline-flex;
display: -webkit-inline-flex;
-webkit-animation: rotation .8s infinite linear;
animation: rotation .8s infinite linear;
border: 6px inset #D7D7D7;
border-radius: 50%;
float: right;
margin-right: 15px;
}
@-webkit-keyframes rotation {
from {
-ms-transform: rotate(0deg);
}
to {
-ms-transform: rotate(359deg);
}
}
@-webkit-keyframes rotation {
from {
-webkit-transform: rotate(0deg);
}
to {
-webkit-transform: rotate(359deg);
}
}
@keyframes rotation {
from {
transform: rotate(0deg);
}
to {
transform: rotate(359deg);
}
}
li.selected {
background-color: rgba(100, 100, 100, 0.5);
}
#effects li {
height: 40px;
line-height: 40px;
padding-left: 20px;
}
.info {
font-size: 16px;
position: absolute;
top: 50%;
width: 100%;
text-align: center;
}
#color #buttonctrl {
display: -webkit-flex;
-webkit-justify-content: space-between;
-webkit-align-items: flex-end;
display: flex;
justify-content: space-between;
align-items: flex-end;
margin: 10px auto 35px auto;
}
#color #buttonctrl > .icon {
font-size: 27px;
line-height: 100%;
padding: 0 20px;
}
#color #buttonctrl > .icon:active {
color: #FFFFFF;
}
#color .slider {
position: relative;
width: 70%;
margin: 10px auto;
height: 20px;
}
#color .slider .track {
width: 100%;
height: 100%;
background-image: -webkit-linear-gradient(left, #000000 0%, #FFFFFF 100%);
background-image: linear-gradient(to right, #000000 0%, #FFFFFF 100%);
}
#color .slider .thumb {
background: transparent;
border: 3px solid rgba(255, 255, 255, 1.0);
width: 14px;
border-radius: 4px;
height: 28px;
position: absolute;
top: -4px;
margin-left: -7px;
}
#color .value {
outline: none;
border: 1px solid white;
font-family: Monaco, monospace;
text-align: center;
background: transparent;
width: 100px;
color: white;
font-size: 16px;
display: block;
-webkit-user-select: text;
-moz-user-select: text;
-ms-user-select: text;
user-select: text;
}
.checkbox::before {
display: table-cell;
font-family: "fontello";
content: '\e803';
height: 40px;
width: 40px;
font-size: 20px;
vertical-align: middle;
text-align: center;
}
.selected .checkbox::before {
content: '\e802';
}

View File

@@ -0,0 +1,64 @@
/*
* metismenu - v1.1.3
* Easy menu jQuery plugin for Twitter Bootstrap 3
* https://github.com/onokumus/metisMenu
*
* Made by Osman Nuri Okumus
* Under MIT License
*/
.arrow {
float: right;
line-height: 1.42857;
}
.glyphicon.arrow:before {
content: "\e079";
}
.active > a > .glyphicon.arrow:before {
content: "\e114";
}
/*
* Require Font-Awesome
* http://fortawesome.github.io/Font-Awesome/
*/
.fa.arrow:before {
content: "\f104";
}
.active > a > .fa.arrow:before {
content: "\f107";
}
.plus-times {
float: right;
}
.fa.plus-times:before {
content: "\f067";
}
.active > a > .fa.plus-times {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg);
}
.plus-minus {
float: right;
}
.fa.plus-minus:before {
content: "\f067";
}
.active > a > .fa.plus-minus:before {
content: "\f068";
}

View File

@@ -0,0 +1,354 @@
/*!
* Start Bootstrap - SB Admin 2 (http://startbootstrap.com/)
* Copyright 2013-2016 Start Bootstrap
* Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap/blob/gh-pages/LICENSE)
*/
body {
background-color: #f8f8f8;
}
#wrapper {
width: 100%;
}
#page-wrapper {
padding: 0 15px;
min-height: 568px;
background-color: #fff;
}
@media(min-width:768px) {
#page-wrapper {
position: inherit;
margin: 0 0 0 250px;
padding: 0 30px;
border-left: 1px solid #e7e7e7;
}
}
.navbar-top-links {
margin-right: 0;
}
.navbar-top-links li {
display: inline-block;
}
.navbar-top-links li:last-child {
margin-right: 15px;
}
.navbar-top-links li a {
padding: 15px;
min-height: 50px;
}
.navbar-top-links .dropdown-menu li {
display: block;
}
.navbar-top-links .dropdown-menu li:last-child {
margin-right: 0;
}
.navbar-top-links .dropdown-menu li a {
padding: 3px 20px;
min-height: 0;
}
.navbar-top-links .dropdown-menu li a div {
white-space: normal;
}
.navbar-top-links .dropdown-messages,
.navbar-top-links .dropdown-tasks,
.navbar-top-links .dropdown-alerts {
width: 310px;
min-width: 0;
}
.navbar-top-links .dropdown-messages {
margin-left: 5px;
}
.navbar-top-links .dropdown-tasks {
margin-left: -59px;
}
.navbar-top-links .dropdown-alerts {
margin-left: -123px;
}
.navbar-top-links .dropdown-user {
right: 0;
left: auto;
}
.sidebar .sidebar-nav.navbar-collapse {
padding-right: 0;
padding-left: 0;
}
.sidebar .sidebar-search {
padding: 15px;
}
.sidebar ul li {
border-bottom: 1px solid #e7e7e7;
}
.sidebar ul li a.active {
background-color: #eee;
}
.sidebar .arrow {
float: right;
}
.sidebar .fa.arrow:before {
content: "\f104";
}
.sidebar .active>a>.fa.arrow:before {
content: "\f107";
}
.sidebar .nav-second-level li,
.sidebar .nav-third-level li {
border-bottom: 0!important;
}
.sidebar .nav-second-level li a {
padding-left: 37px;
}
.sidebar .nav-third-level li a {
padding-left: 52px;
}
@media(min-width:768px) {
.sidebar {
z-index: 1;
position: absolute;
width: 250px;
margin-top: 51px;
}
.navbar-top-links .dropdown-messages,
.navbar-top-links .dropdown-tasks,
.navbar-top-links .dropdown-alerts {
margin-left: auto;
}
}
.btn-outline {
color: inherit;
background-color: transparent;
transition: all .5s;
}
.btn-primary.btn-outline {
color: #428bca;
}
.btn-success.btn-outline {
color: #5cb85c;
}
.btn-info.btn-outline {
color: #5bc0de;
}
.btn-warning.btn-outline {
color: #f0ad4e;
}
.btn-danger.btn-outline {
color: #d9534f;
}
.btn-primary.btn-outline:hover,
.btn-success.btn-outline:hover,
.btn-info.btn-outline:hover,
.btn-warning.btn-outline:hover,
.btn-danger.btn-outline:hover {
color: #fff;
}
.chat {
margin: 0;
padding: 0;
list-style: none;
}
.chat li {
margin-bottom: 10px;
padding-bottom: 5px;
border-bottom: 1px dotted #999;
}
.chat li.left .chat-body {
margin-left: 60px;
}
.chat li.right .chat-body {
margin-right: 60px;
}
.chat li .chat-body p {
margin: 0;
}
.panel .slidedown .glyphicon,
.chat .glyphicon {
margin-right: 5px;
}
.chat-panel .panel-body {
height: 350px;
overflow-y: scroll;
}
.login-panel {
margin-top: 25%;
}
.flot-chart {
display: block;
height: 400px;
}
.flot-chart-content {
width: 100%;
height: 100%;
}
.dataTables_wrapper {
position: relative;
clear: both;
}
table.dataTable thead .sorting,
table.dataTable thead .sorting_asc,
table.dataTable thead .sorting_desc,
table.dataTable thead .sorting_asc_disabled,
table.dataTable thead .sorting_desc_disabled {
background: 0 0;
}
table.dataTable thead .sorting_asc:after {
content: "\f0de";
float: right;
font-family: fontawesome;
}
table.dataTable thead .sorting_desc:after {
content: "\f0dd";
float: right;
font-family: fontawesome;
}
table.dataTable thead .sorting:after {
content: "\f0dc";
float: right;
font-family: fontawesome;
color: rgba(50,50,50,.5);
}
.btn-circle {
width: 30px;
height: 30px;
padding: 6px 0;
border-radius: 15px;
text-align: center;
font-size: 12px;
line-height: 1.428571429;
}
.btn-circle.btn-lg {
width: 50px;
height: 50px;
padding: 10px 16px;
border-radius: 25px;
font-size: 18px;
line-height: 1.33;
}
.btn-circle.btn-xl {
width: 70px;
height: 70px;
padding: 10px 16px;
border-radius: 35px;
font-size: 24px;
line-height: 1.33;
}
.show-grid [class^=col-] {
padding-top: 10px;
padding-bottom: 10px;
border: 1px solid #ddd;
background-color: #eee!important;
}
.show-grid {
margin: 15px 0;
}
.huge {
font-size: 40px;
}
.panel-green {
border-color: #5cb85c;
}
.panel-green > .panel-heading {
border-color: #5cb85c;
color: #fff;
background-color: #5cb85c;
}
.panel-green a {
color: #5cb85c;
}
.panel-green a:hover {
color: #3d8b3d;
}
.panel-red {
border-color: #d9534f;
}
.panel-red > .panel-heading {
border-color: #d9534f;
color: #fff;
background-color: #d9534f;
}
.panel-red a {
color: #d9534f;
}
.panel-red a:hover {
color: #b52b27;
}
.panel-yellow {
border-color: #f0ad4e;
}
.panel-yellow > .panel-heading {
border-color: #f0ad4e;
color: #fff;
background-color: #f0ad4e;
}
.panel-yellow a {
color: #f0ad4e;
}
.panel-yellow a:hover {
color: #df8a13;
}