Commit f2a711a3 authored by Jérome Perrin's avatar Jérome Perrin

move javascript code in src now that all is migrated

parent cbb86b45
......@@ -4,7 +4,7 @@ module.exports = function (grunt) {
var global_config = {
src: "dream/platform/src2/",
src: "dream/platform/src/",
lib: "dream/platform/vendor/",
tmp: "tmp",
dest: "dream/platform/static/"
......
/*
* Skeleton V1.2
* Copyright 2011, Dave Gamache
* www.getskeleton.com
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
* 6/20/2012
*/
/* Table of Content
==================================================
#Reset & Basics
#Basic Styles
#Site Styles
#Typography
#Links
#Lists
#Images
#Buttons
#Forms
#Misc */
/* #Reset & Basics (Inspired by E. Meyers)
================================================== */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
display: block; }
body {
line-height: 1; }
ol, ul {
list-style: none; }
blockquote, q {
quotes: none; }
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none; }
table {
border-collapse: collapse;
border-spacing: 0; }
/* #Basic Styles
================================================== */
body {
background: #fff;
font: 14px/21px "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
color: #444;
-webkit-font-smoothing: antialiased; /* Fix for webkit rendering */
-webkit-text-size-adjust: 100%;
}
/* #Typography
================================================== */
h1, h2, h3, h4, h5, h6 {
color: #181818;
font-family: "Georgia", "Times New Roman", serif;
font-weight: normal; }
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { font-weight: inherit; }
h1 { font-size: 46px; line-height: 50px; margin-bottom: 14px;}
h2 { font-size: 35px; line-height: 40px; margin-bottom: 10px; }
h3 { font-size: 28px; line-height: 34px; margin-bottom: 8px; }
h4 { font-size: 21px; line-height: 30px; margin-bottom: 4px; }
h5 { font-size: 17px; line-height: 24px; }
h6 { font-size: 14px; line-height: 21px; }
.subheader { color: #777; }
p { margin: 0 0 20px 0; }
p img { margin: 0; }
p.lead { font-size: 21px; line-height: 27px; color: #777; }
em { font-style: italic; }
strong { font-weight: bold; color: #333; }
small { font-size: 80%; }
/* Blockquotes */
blockquote, blockquote p { font-size: 17px; line-height: 24px; color: #777; font-style: italic; }
blockquote { margin: 0 0 20px; padding: 9px 20px 0 19px; border-left: 1px solid #ddd; }
blockquote cite { display: block; font-size: 12px; color: #555; }
blockquote cite:before { content: "\2014 \0020"; }
blockquote cite a, blockquote cite a:visited, blockquote cite a:visited { color: #555; }
hr { border: solid #ddd; border-width: 1px 0 0; clear: both; margin: 10px 0 30px; height: 0; }
/* #Links
================================================== */
a, a:visited { color: #333; text-decoration: underline; outline: 0; }
a:hover, a:focus { color: #000; }
p a, p a:visited { line-height: inherit; }
/* #Lists
================================================== */
ul, ol { margin-bottom: 20px; }
ul { list-style: none outside; }
ol { list-style: decimal; }
ol, ul.square, ul.circle, ul.disc { margin-left: 30px; }
ul.square { list-style: square outside; }
ul.circle { list-style: circle outside; }
ul.disc { list-style: disc outside; }
ul ul, ul ol,
ol ol, ol ul { margin: 4px 0 5px 30px; font-size: 90%; }
ul ul li, ul ol li,
ol ol li, ol ul li { margin-bottom: 6px; }
li { line-height: 18px; margin-bottom: 12px; }
ul.large li { line-height: 21px; }
li p { line-height: 21px; }
/* #Images
================================================== */
img.scale-with-grid {
max-width: 100%;
height: auto; }
/* #Buttons
================================================== */
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
background: #eee; /* Old browsers */
background: #eee -moz-linear-gradient(top, rgba(255,255,255,.2) 0%, rgba(0,0,0,.2) 100%); /* FF3.6+ */
background: #eee -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,.2)), color-stop(100%,rgba(0,0,0,.2))); /* Chrome,Safari4+ */
background: #eee -webkit-linear-gradient(top, rgba(255,255,255,.2) 0%,rgba(0,0,0,.2) 100%); /* Chrome10+,Safari5.1+ */
background: #eee -o-linear-gradient(top, rgba(255,255,255,.2) 0%,rgba(0,0,0,.2) 100%); /* Opera11.10+ */
background: #eee -ms-linear-gradient(top, rgba(255,255,255,.2) 0%,rgba(0,0,0,.2) 100%); /* IE10+ */
background: #eee linear-gradient(top, rgba(255,255,255,.2) 0%,rgba(0,0,0,.2) 100%); /* W3C */
border: 1px solid #aaa;
border-top: 1px solid #ccc;
border-left: 1px solid #ccc;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
border-radius: 3px;
color: #444;
display: inline-block;
font-size: 11px;
font-weight: bold;
text-decoration: none;
text-shadow: 0 1px rgba(255, 255, 255, .75);
cursor: pointer;
margin-bottom: 20px;
line-height: normal;
padding: 8px 10px;
font-family: "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif; }
.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
color: #222;
background: #ddd; /* Old browsers */
background: #ddd -moz-linear-gradient(top, rgba(255,255,255,.3) 0%, rgba(0,0,0,.3) 100%); /* FF3.6+ */
background: #ddd -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,.3)), color-stop(100%,rgba(0,0,0,.3))); /* Chrome,Safari4+ */
background: #ddd -webkit-linear-gradient(top, rgba(255,255,255,.3) 0%,rgba(0,0,0,.3) 100%); /* Chrome10+,Safari5.1+ */
background: #ddd -o-linear-gradient(top, rgba(255,255,255,.3) 0%,rgba(0,0,0,.3) 100%); /* Opera11.10+ */
background: #ddd -ms-linear-gradient(top, rgba(255,255,255,.3) 0%,rgba(0,0,0,.3) 100%); /* IE10+ */
background: #ddd linear-gradient(top, rgba(255,255,255,.3) 0%,rgba(0,0,0,.3) 100%); /* W3C */
border: 1px solid #888;
border-top: 1px solid #aaa;
border-left: 1px solid #aaa; }
.button:active,
button:active,
input[type="submit"]:active,
input[type="reset"]:active,
input[type="button"]:active {
border: 1px solid #666;
background: #ccc; /* Old browsers */
background: #ccc -moz-linear-gradient(top, rgba(255,255,255,.35) 0%, rgba(10,10,10,.4) 100%); /* FF3.6+ */
background: #ccc -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,.35)), color-stop(100%,rgba(10,10,10,.4))); /* Chrome,Safari4+ */
background: #ccc -webkit-linear-gradient(top, rgba(255,255,255,.35) 0%,rgba(10,10,10,.4) 100%); /* Chrome10+,Safari5.1+ */
background: #ccc -o-linear-gradient(top, rgba(255,255,255,.35) 0%,rgba(10,10,10,.4) 100%); /* Opera11.10+ */
background: #ccc -ms-linear-gradient(top, rgba(255,255,255,.35) 0%,rgba(10,10,10,.4) 100%); /* IE10+ */
background: #ccc linear-gradient(top, rgba(255,255,255,.35) 0%,rgba(10,10,10,.4) 100%); /* W3C */ }
.button.full-width,
button.full-width,
input[type="submit"].full-width,
input[type="reset"].full-width,
input[type="button"].full-width {
width: 100%;
padding-left: 0 !important;
padding-right: 0 !important;
text-align: center; }
/* Fix for odd Mozilla border & padding issues */
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0;
}
/* #Forms
================================================== */
form {
margin-bottom: 20px; }
fieldset {
margin-bottom: 20px; }
input[type="text"],
input[type="password"],
input[type="email"],
textarea,
select {
border: 1px solid #ccc;
padding: 6px 4px;
outline: none;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
border-radius: 2px;
font: 13px "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
color: #777;
margin: 0;
width: 210px;
max-width: 100%;
display: block;
margin-bottom: 20px;
background: #fff; }
select {
padding: 0; }
input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
textarea:focus {
border: 1px solid #aaa;
color: #444;
-moz-box-shadow: 0 0 3px rgba(0,0,0,.2);
-webkit-box-shadow: 0 0 3px rgba(0,0,0,.2);
box-shadow: 0 0 3px rgba(0,0,0,.2); }
textarea {
min-height: 60px; }
label,
legend {
display: block;
font-weight: bold;
font-size: 13px; }
select {
width: 220px; }
input[type="checkbox"] {
display: inline; }
label span,
legend span {
font-weight: normal;
font-size: 13px;
color: #444; }
/* #Misc
================================================== */
.remove-bottom { margin-bottom: 0 !important; }
.half-bottom { margin-bottom: 10px !important; }
.add-bottom { margin-bottom: 20px !important; }
.bold {
font-weight: bold;
}
.note {
font-weight: bold;
display: block;
}
.center {
display: block;
text-align: center;
}
.left {
display: block;
text-align: left;
}
.right {
display: block;
text-align: right;
}
.starred {
color: #0FBABD;
}
.large {
font-size: 125%;
}
.ui-popup .file {
max-width: 70%;
}
.inline {
max-width: 50%;
margin: 0 auto;
}
.inline a.ui-btn:after {
font-size: .9em;
}
@media (max-width: 40em) {
.inline {
max-width: 70%;
margin: 0 auto;
}
}
.alert {
color: red;
font-weight: bold;
}
.alert textarea {
color: red !important;
font-weight: normal;
}
.alert label {
display: block;
width: 100%;
float: none;
}
tbody .alert,
tbody .proceed,
tbody .large {
display: block;
text-align: center
}
@media (max-width: 40em) {
tbody .alert,
tbody .proceed {
font-size: 1.5em;
}
}
.proceed {
color: #0FBABD;
font-weight: bold;
}
.static {
cursor: default;
}
.input_board {
margin: 0;
}
.input_board .ui-controlgroup-controls {
width: 100%;
}
.input_board .ui-controlgroup-controls .ui-input-text input {
box-shadow: 0 0 2px #999999 inset;
-webkit-box-shadow: 0 0 2px #999999 inset;
}
.button_board {
text-align: center;
}
a.confirm, a.action {
font-weight: bold !important;
}
.profile {
display: inline-block;
border: 1px solid;
}
@media (max-width: 40em) {
.profile {
margin-top: 1em;
}
}
.profile img {
padding-right: 1em;
float: left;
vertical-align: middle;
max-width: 120px;
}
.tag {
margin: 0;
font-size: 200%;
}
/* Modified on BASE */
.mini {
font-size: 80%;
}
@media (max-width: 40em) {
.tag {
margin: 0;
font-size: 150%;
}
}
.downloads:before {
content: "·";
}
.inline-icon {
padding: 0 .5em;
}
.logo_wrap {
margin-top: 0em;
margin-bottom: 2em;
padding: 0.5em;
text-align: center;
}
.logo_wrap img {
max-height: 8em;
}
@media (max-width: 40em) {
.logo_wrap {
margin-top: 1em;
margin-bottom: 1em;
}
.logo_wrap img {
max-height: 7em;
}
}
@media (max-width: 30em) {
.logo_wrap {
margin-top: .5em;
margin-bottom: .5em;
}
}
@media (max-width: 20em) {
.logo_wrap {
margin-top: .25em;
margin-bottom: .25em;
}
}
/* custom signin buttons: thx Zocial http://zocial.smcllns.com/ */
.signin_google,
.signin_google:visited {
background: #DD4B39 !important;
color: #fff !important;
text-shadow: none !important;
cursor: pointer !important;
}
.signin_fb,
.signin_fb:visited {
background: #4863ae !important;
color: #fff !important;
text-shadow: none !important;
cursor: pointer !important;
}
.signin_fb:hover,
.signin_fb:active,
.signin_fb.ui-btn-active,
.signin_google:hover,
.signin_google:active,
.signin_google.ui-btn-active {
background-image: -webkit-gradient(linear, center bottom, center top, from(rgba(255, 255, 255, 0.1)), color-stop(0.30, rgba(255, 255, 255, 0)), to(rgba(0, 0, 0, 0.1))) !important;
background-image: -webkit-linear-gradient(center bottom , rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0) 30%, transparent 50%, rgba(0, 0, 0, 0.1)) !important;
background-image: -ms-linear-gradient(center bottom , rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0) 30%, transparent 50%, rgba(0, 0, 0, 0.1)) !important;
background-image: -moz-linear-gradient(center bottom , rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0) 30%, transparent 50%, rgba(0, 0, 0, 0.1)) !important;
background-image: -o-linear-gradient(center bottom , rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0) 30%, transparent 50%, rgba(0, 0, 0, 0.1)) !important;
background-image: linear-gradient(center bottom , rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0) 30%, transparent 50%, rgba(0, 0, 0, 0.1)) !important;
}
.signin_google:focus,
.signin_google.ui-focus
.signin_fb:focus,
.signin_fb.ui-focus {
-webkit-box-shadow: none !important;
-moz-box-shadow: none !important;
box-shadow: none !important;
}
.popup_element {
padding-top: .75em;
padding-left: .75em;
padding-right: .75em;
}
.popup_element p {
margin-bottom: 0.15em;
}
.content_element {
display: inline-block;
vertical-align: top;
width: 45%;
padding-left: 2%;
padding-right: 2%;
/* ~ 98% for 2 col layout */
padding-top: 2%;
}
.content_element_fullscreen {
width: 96% /* 2% padding-left/right */
}
/* is this padding really necessary? */
.content_element .ui-controlgroup-vertical,
.content_element .ui-controlgroup-horizontal,
.content_element form {
margin-top: 1em;
margin-bottom: 1em;
vertical-align: middle;
}
@media (max-width: 40em) {
.content_element {
width: 100%;
padding: 0;
}
}
.content_element .ui-input-search {
width: 50%;
}
@media (max-width: 45em) {
.content_element .ui-input-search {
width: 60%;
}
}
@media (max-width: 30em) {
.content_element .ui-input-search {
width: 65%;
}
}
@media (max-width: 20em) {
.content_element .ui-input-search{
width: 70%;
}
}
.panel .ui-panel-inner .panel_element {
margin-left: -1em;
margin-right: -1em;
}
.panel .ui-panel-inner .panel_element.panel_element_first {
margin-top: -1em;
}
.panel .ui-panel-inner .panel_element.panel_element_last {
margin-bottom: -1em;
}
.panel .panel_element.panel_header {
border-width: 0;
padding-top: 1px;
top: -1px;
}
/* navbar */
.navbar ul li a.ui-btn-active.clone_item span.navbar_clone {
font-weight: bold;
}
div.ui-content > iframe {
height: 500px;
min-width: 1300px;
}
div.ui-content2 > iframe {
height: 500px;
min-width: 1300px;
}
\ No newline at end of file
body {
padding:0;
margin:0;
background-color:white;
font-family:'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
text-align:center;
}
#headerWrapper {
display:none;
width:100%;
background-color:black;
position:fixed;
top:0;
left:0;
height:44px;
padding:0;
border-bottom:1px solid #999;
box-shadow: 0px 2px 19px #aaa;
-o-box-shadow: 0px 2px 19px #aaa;
-webkit-box-shadow: 0px 2px 19px #aaa;
-moz-box-shadow: 0px 2px 19px #aaa;
opacity:0.8;
}
#intro {
margin-top:59px;
}
#main {
/* these two margins settings are here just to ensure that jsPlumb handles
margins properly.*/
position: relative;
margin:20px auto;
font-size: 80%;
border: 1px solid #999;
width: 100%;
height: 600px;
overflow: hidden;
border-radius: 10px;
background-color:#eaedef;
text-align: center;
}
/* Setting for dialog */
label, input {
display:block;
}
input.text, select {
margin:4px;
padding:0;
width:95%;
}
fieldset {
padding:0;
border:0;
margin-top:25px;
}
h1 {
font-size: 1.2em;
margin: .6em 0;
}
div#users-contain {
width: 350px;
margin: 20px 0;
}
div#users-contain table {
margin: 1em 0;
border-collapse: collapse;
width: 100%;
}
div#users-contain table td, div#users-contain table th {
border: 1px solid #eee;
padding: .6em 10px;
text-align: left;
}
.ui-dialog .ui-state-error {
padding: .3em;
}
.validateTips {
border: 1px solid transparent;
padding: 0.3em;
}
/* End of dialog setting */
li {
margin: 3px;
/*padding: 1px;*/
/*text-align: -webkit-match-parent;*/
background: #e6e6e6;
border: 1px solid #d3d3d3;
list-style-type: none;
width: 120px;
}
#sidebar {
font-size:13px;
}
/* demo elements */
.menu, #explanation {
background-color:#fff;
}
.menu {
height: 15px;
float:right;
padding-top:1em;
padding-bottom:0.4em;
background-color: transparent;
margin-right:30px;
}
.otherLibraries {
display:inline;
}
a, a:visited {
text-decoration:none;
color:#01a3c6;
font-family:helvetica;
padding:0.3em;
border-radius:0.2em;
}
a:hover {
color:#1b911b;
}
.selected {
color:rgb(189, 11, 11) !important;
}
.window, .label {
background-color:white;
text-align:center;
z-index:23;
cursor:pointer;
box-shadow: 2px 2px 19px #aaa;
-o-box-shadow: 2px 2px 19px #aaa;
-webkit-box-shadow: 2px 2px 19px #aaa;
-moz-box-shadow: 2px 2px 19px #aaa;
}
path, ._jsPlumb_endpoint {
cursor:pointer;
}
._jsPlumb_endpoint_drop_allowed {
border: 4px solid #123456;
box-shadow: 6px 6px 19px #444;
-o-box-shadow: 6px 6px 19px #444;
-webkit-box-shadow: 6px 6px 19px #444;
-moz-box-shadow: 6px 6px 19px #444;
}
/* z index stuff */
._jsPlumb_connector {
z-index:18;
}
._jsPlumb_endpoint {
z-index:19;
}
._jsPlumb_overlay {
z-index:23;
}
._jsPlumb_connector._jsPlumb_hover {
z-index:21 !important;
}
._jsPlumb_endpoint._jsPlumb_hover {
z-index:22 !important;
}
._jsPlumb_overlay {
border:1px solid #346789;
opacity:0.8;
filter:alpha(opacity=80);
background-color:white;
color:black;
font-family:helvetica;
padding:0.5em;
}
/* DREAM specific css */
#available {
position: absolute;
width: 200px;
height: 200px;
border: 2px solid;
margin-top: 350px;
margin-left: 150px;
border-radius: 10px;
}
#tools {
/* position: absolute;
width: 200px;
height: 400px; */
width: 100%;
border: 1px solid #999;
margin: 20px 0;
border-radius: 10px;
padding-bottom: 20px;
}
#tools-container {
margin-bottom: 4px;
}
#simulation_controls {
/* position: absolute;
width: 200px;
height: 300px;
margin-top: 550px;
margin-left: 35px;
font-size:13px; */
width: 100%;
border: 1px solid #999;
border-radius: 10px;
}
.tool {
border: 1px solid lightgray;
box-shadow: 1px 1px 2px #aaa;
/*margin-top: 20px;
margin-left: 35px;*/
min-width:7em;
height:2em;
z-index: 10001;
color: gray;
font-family:serif;
font-style:italic;
padding-top:0.9em;
font-size:0.9em;
margin:0.5em;
display: inline-block;
border-radius: 5px;
}
#graph {
width: 70%;
height: 250px;
text-align: center;
margin-left:auto;
margin-right:auto;
padding-top:2px;
margin-top:0px;
}
.capacity_graph {
width: 70%;
height: 250px;
text-align: center;
margin-left:auto;
margin-right:auto;
padding-top:2px;
margin-top:0px;
}
#queue_stat_graph {
width: 70%;
height: 250px;
text-align: center;
margin-left:auto;
margin-right:auto;
padding-top:2px;
margin-top:0px;
}
#tools .ui-button {
width:80%;
margin:4px 0;
}
.Dream-Source, .Dream-BatchSource {
border: 1px solid #bbc;
background-color:#ffe;
background-image: linear-gradient(to bottom, #ffe 0%, #dde 100%);
}
.Dream-Machine, .Dream-MachineJobShop, .Dream-BatchScrapMachine, .Dream-MachineManagedJob, .Dream-MouldAssembly {
border: 1px solid #cbc;
background-color: #fef;
background-image: linear-gradient(to bottom, #fef 0%, #ede 100%);
}
.Dream-Queue, .Dream-QueueJobShop, .Dream-LineClearance, .Dream-QueueManagedJob, .Dream-ConditionalBuffer, .Dream-OrderDecomposition, .Dream-MouldAssemblyBuffer {
border: 1px solid #bcc;
background-color:#eff;
background-image: linear-gradient(to bottom, #eff 0%, #dee 100%);
}
.Dream-Exit, .Dream-ExitJobShop {
border: 1px solid #ccb;
background-color:#eef;
background-image: linear-gradient(to bottom, #eef 0%, #dde 100%);
}
.Dream-EventGenerator {
border: 1px solid #cba;
background-color:#fdc;
background-image: linear-gradient(to bottom, #fdc 0%, #ecb 100%);
}
.Dream-BatchDecomposition, .Dream-BatchDecompositionStartTime, .Dream-BatchReassembly {
border: 1px solid #bcb;
background-color:#dfd;
background-image: linear-gradient(to bottom, #dfd 0%, #cec 100%);
}
.Dream-Repairman {
border: 1px solid #cbb;
background-color:#fdd;
background-image: linear-gradient(to bottom, #fdd 0%, #dcc 100%);
}
#exit_stat {
display: inline-block;
}
#exit_stat table, #exit_stat td {
border: 1px solid black;
}
.window, .dummy_window {
border:1px solid lightgray;
width:100px;
height:64px;
position:absolute;
color:black;
font-family:serif;
font-style:italic;
padding-top:0.9em;
font-size:0.9em;
cursor:move;
font-size:11px;
-webkit-transition:background-color 0.1s ease-in;
-moz-transition:background-color 0.1s ease-in;
transition:background-color 0.1s ease-in;
border-radius: 5px;
}
.window:hover {
background-color: #5c96bc;
background-image: none;
color:white;
}
.dummy_window {
position: absolute;
top: 0;
left: 0;
visibility: hidden;
}
#debug_json textarea {
width:95%;
}
#error{
text-align: left;
}
.ep {
position:absolute;
bottom:37%;
right:5px;
width:1em;
height:1em;
background-color:orange;
cursor:pointer;
box-shadow: 0px 0px 2px black;
-webkit-transition:-webkit-box-shadow 0.25s ease-in;
-moz-transition:-moz-box-shadow 0.25s ease-in;
transition:box-shadow 0.25s ease-in;
}
._jsPlumb_source_hover, ._jsPlumb_target_hover, .dragHover {
background-color:#1e8151;
background-image: none;
color:white;
}
path {
cursor:pointer;
}
#spreadsheet_output {
margin: 20px 0;
}
#gantt_output {
height: 400px;
margin: 20px 0;
}
.sub_task {
background-color: #3DD388;
border-color: #28B06C;
}
li.result {
width: 100%;
text-align: left;
cursor:pointer;
}
li.result.active {
background:#fcc;
}
/*
.left, .right { display: block; }
.main_block { display: block; }
@media screen and (max-width:900px) {
.left, .right {
float: none;
}
}
nav { margin: 0; }
.localnav {
margin:0 0 20px 0;
}
.ui-mobile-viewport .localnav li {
float:left;
}
.localnav .ui-btn-inner {
padding: .6em 10px;
font-size:80%;
}
*/
#main {
/* width: 850px; */
border-top: 2px solid #456;
border-left: 2px solid #456;
border-right: 2px solid #456;
border-bottom: 2px solid #456;
height: 600px;
border-bottom-left-radius: 10px;
border-bottom-right-radius: 10px;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
background-color:#eaedef;
}
.graph_node, .window, .label {
background-color:white;
text-align:center;
z-index:23;
cursor:pointer;
box-shadow: 2px 2px 19px #aaa;
-o-box-shadow: 2px 2px 19px #aaa;
-webkit-box-shadow: 2px 2px 19px #aaa;
-moz-box-shadow: 2px 2px 19px #aaa;
}
.graph_node, .window {
border:1px dotted gray;
width:5.7em;
height:4em;
position:absolute;
color:gray;
font-family:serif;
font-style:italic;
padding-top:0.9em;
font-size:0.9em;
}
path, ._jsPlumb_endpoint { cursor:pointer; }
/* z index stuff */
._jsPlumb_connector { z-index:18; }
._jsPlumb_endpoint { z-index:19; }
._jsPlumb_overlay { z-index:23; }
._jsPlumb_connector._jsPlumb_hover {
z-index:21 !important;
}
._jsPlumb_endpoint._jsPlumb_hover {
z-index:22 !important;
}
._jsPlumb_overlay {
border:1px solid #346789;
opacity:0.8;
filter:alpha(opacity=80);
background-color:white;
color:black;
font-family:helvetica;
padding:0.5em;
}
/* =========================== action button ========================*/
.ui-input-search-no-pseudo:after {
content: none;
}
.ui-input-has-action {
position: relative;
}
.ui-input-search .ui-input-action,
.ui-input-text .ui-input-action {
position: absolute;
right: 0;
top: 50%;
margin: -15px .3125em 0;
border: 0;
background-color: transparent;
}
.ui-input-has-action.ui-input-has-clear input {
padding-left: 0.25em;
padding-right: 4.5em;
}
.ui-input-has-action.ui-input-has-clear .ui-input-clear {
right: 2em !important;
}
html body .ui-input-search .ui-input-action:after,
html body .ui-input-text .ui-input-action:after {
margin-top: -12px;
}
html body .ui-input-search .ui-input-action:hover,
html body .ui-input-text .ui-input-action:hover,
html body .ui-input-search .ui-input-action:active,
html body .ui-input-text .ui-input-action:active {
background: transparent;
background-image: none;
-webkit-box-shadow: none /* iOS3 */ !important;
box-shadow: none /* iOS3 */ !important;
}
/* =========================== carousel widget ========================*/
.ui-carousel {
list-style: none outside none;
margin: 0 auto;
padding: 0;
position: relative;
text-align: center;
width: auto;
min-height: 25em;
overflow: hidden; /* firefox seems the only browser to properly overflow-hide round corners... */
margin: 0 -15px;
}
.ui-carousel-inset {
margin: 1em auto;
-webkit-border-radius: 1em;
-moz-border-radius: 1em;
border-radius: 1em;
}
.ui-carousel li {
list-style: none;
width: 100%;
position: absolute;
display: none;
height: 100%;
-webkit-border-radius: inherit;
-moz-border-radius: inherit;
border-radius: inherit;
overflow: inherit;
min-height: inherit;
}
.ui-carousel li.ui-carousel-transitioning {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.ui-carousel li.ui-carousel-active {
display: block;
}
.ui-carousel li a {
height: inherit;
-webkit-border-radius: inherit;
-moz-border-radius: inherit;
border-radius: inherit;
overflow: inherit;
min-height: inherit;
}
.ui-carousel img {
width: 100%;
display: block;
-webkit-border-radius: inherit;
-moz-border-radius: inherit;
border-radius: inherit;
min-height: inherit;
}
.ui-carousel-controls {
text-align: center;
}
.ui-carousel-controls .ui-radio {
display: inline-block;
padding: 0 0.25em;
}
.ui-carousel-controls .ui-radio input:checked {
border: 1px solid red !important;
}
.ui-carousel-captions .ui-carousel-captions-heading {
margin: 0;
padding: 0;
}
.ui-carousel-captions-content {
left: 0;
margin: 0;
padding: 0.5em 0;
position: absolute;
right: 0;
}
.ui-carousel-captions-bottom {
bottom: 0;
}
.ui-carousel-captions-top {
top: 0;
}
@media (max-width: 77.5em) {
.ui-carousel.ui-responsive {
max-width: 80%;
}
}
@media (max-width: 45em) {
.ui-carousel.ui-responsive {
max-width: 85%;
}
}
@media (max-width: 40em) {
.ui-carousel.ui-responsive {
max-width: 90%;
}
}
@media (max-width: 30em) {
.ui-carousel.ui-responsive {
max-width: 90%;
}
}
@media (max-width: 20em) {
.ui-carousel.ui-responsive {
max-width: 90%;
}
}
/* font-size */
html table.ui-table {
font-size: 90%;
}
html div.ui-table-wrapper-top > *,
html div.ui-table-wrapper-bottom > *,
html div.ui-collapsible-set {
font-size: 100%;
}
@media (min-width: 40em) {
html table.ui-table {
font-size: 80%;
}
html div.ui-table-wrapper-top > *,
html div.ui-table-wrapper-bottom > *,
html div.ui-collapsible-set {
font-size: 90%;
}
html table thead th a.ui-btn {
font-size: 100%;
}
}
/* shrink icon font-size (should not be set here...) */
.ui-page .ui-table-wrapper-top .ui-btn[class*="ui-icon-"]:after ,
.ui-page .ui-table-wrapper-bottom .ui-btn[class*="ui-icon-"]:after,
.ui-page .ui-table-wrapper-top .ui-btn[class*="ui-icon-"]:after,
.ui-page .ui-table-wrapper-bottom .ui-btn[class*="ui-icon-"]:after,
html div.ui-collapsible-set h1 .ui-btn[class*="ui-icon-"]:after{
font-size: 125%;
margin-top: -9px;
}
html table.ui-table tbody td a,
html table.ui-table tbody th a {
text-decoration: none;
font-weight: normal;
}
html table.ui-table tbody td:hover a,
html table.ui-table tbody th:hover a {
text-decoration: underline;
}
/* override JQM */
html table.ui-table {
width: 100.15%;
border: 0 none;
border-left: 1px solid;
border-right: 1px solid;
}
html table td, html table th {
padding: 0px !important;
}
/* checkbox cells */
html table th .ui-checkbox .ui-btn,
html table th .ui-checkbox .ui-btn,
html table td .ui-checkbox .ui-btn,
html table td .ui-checkbox .ui-btn {
border: 0 none;
border-radius: 0 0 0 0;
box-shadow: none !important;
height: inherit;
padding-bottom: 0.5em;
padding-top: 0.5em;
width: 100%;
}
html table th .ui-checkbox .ui-btn.ui-btn-icon-notext.ui-icon-checkbox-on:after,
html table th .ui-checkbox .ui-btn.ui-btn-icon-notext.ui-icon-checkbox-off:after,
html table td .ui-checkbox .ui-btn.ui-btn-icon-notext.ui-icon-checkbox-on:after,
html table td .ui-checkbox .ui-btn.ui-btn-icon-notext.ui-icon-checkbox-off:after {
margin-left: -.5em;
}
html table tr th .ui-checkbox input,
html table tr td .ui-checkbox input {
position: absolute !important;
top: -9999px;
left: -9999px;
height: 1px;
width: 1px;
overflow: hidden;
clip: rect(1px 1px 1px 1px);
}
html table tr th .ui-checkbox,
html table tr td .ui-checkbox {
margin: 0;
min-width: 1em;
padding: 0;
height: inherit;
position: static;
}
/* top radii - can use :first/last-child, because IE can't do corners anyway */
/* inherit = 0!, not inheriting = radius */
.ui-table-wrapper-top.ui-table-wrapper-inset,
.ui-table-wrapper-top.ui-table-wrapper-inset * {
-webkit-border-bottom-right-radius: 0;
border-bottom-right-radius: 0;
-webkit-border-bottom-left-radius: 0;
border-bottom-left-radius: 0;
}
/* first grid and button get top left */
.ui-table-wrapper-top.ui-table-wrapper-inset > div:first-child,
.ui-table-wrapper-top.ui-table-wrapper-inset > div:first-child .ui-btn,
.ui-table-wrapper-top.ui-table-wrapper-inset > div:first-child .ui-select {
border-radius: inherit;
-webkit-border-radius: inherit;
border-top-right-radius: 0;
-webkit-border-top-right-radius: 0;
}
/* last grid and button get top right */
.ui-table-wrapper-top.ui-table-wrapper-inset > div:last-child,
.ui-table-wrapper-top.ui-table-wrapper-inset > div:last-child .ui-btn,
.ui-table-wrapper-top.ui-table-wrapper-inset > div:last-child .ui-select {
border-radius: 0;
-webkit-border-radius: 0;
border-top-right-radius: inherit;
-webkit-border-top-right-radius: inherit;
}
/* bottom radii */
.ui-table-wrapper-bottom.ui-table-wrapper-inset,
.ui-table-wrapper-bottom.ui-table-wrapper-inset * {
-webkit-border-top-right-radius: 0;
border-top-right-radius: 0;
-webkit-border-top-left-radius: 0;
border-top-left-radius: 0;
}
/* first grid and button get bottom left */
.ui-table-wrapper-bottom.ui-table-wrapper-inset > div:first-child,
.ui-table-wrapper-bottom.ui-table-wrapper-inset > div:first-child .ui-btn,
.ui-table-wrapper-bottom.ui-table-wrapper-inset > div:first-child .ui-select {
border-radius: inherit;
-webkit-border-radius: inherit;
border-bottom-right-radius: 0;
-webkit-border-bottom-right-radius: 0;
}
/* last grid and button get bottom right */
.ui-table-wrapper-bottom.ui-table-wrapper-inset > div:last-child,
.ui-table-wrapper-bottom.ui-table-wrapper-inset > div:last-child .ui-btn,
.ui-table-wrapper-bottom.ui-table-wrapper-inset > div:last-child .ui-select {
border-radius: 0;
-webkit-border-radius: 0;
border-bottom-right-radius: inherit;
-webkit-border-bottom-right-radius: inherit;
}
/* and overwrite again for controlgroups... */
.ui-table-wrapper-top.ui-table-wrapper-inset .ui-controlgroup .ui-controlgroup-controls .ui-btn,
.ui-table-wrapper-bottom.ui-table-wrapper-inset .ui-controlgroup .ui-controlgroup-controls .ui-btn,
.ui-table-wrapper-top.ui-table-wrapper-inset .ui-controlgroup .ui-controlgroup-controls .ui-select,
.ui-table-wrapper-bottom.ui-table-wrapper-inset .ui-controlgroup .ui-controlgroup-controls .ui-select {
border-radius: 0;
-webkit-border-radius: 0;
}
/* table wrappers */
.ui-table-wrapper-top, .ui-table-wrapper-bottom {
min-height: 25px;
width: 100%;
vertical-align: middle;
border-style: solid;
-webkit-box-shadow: none /* iOS3 */ !important;
box-shadow: none /* iOS3 */ !important;
}
.ui-table-wrapper-top div > .ui-select,
.ui-table-wrapper-top div > .ui-btn,
.ui-table-wrapper-bottom div > .ui-select,
.ui-table-wrapper-bottom div > .ui-btn {
width: 100%;
margin: 0;
}
/* table borders */
.ui-table-wrapper-top {
border-width: 1px 1px 0;
}
.ui-table-wrapper-bottom {
border-width: 0 1px 1px;
}
/* inherit border to table ... */
.ui-table-wrapper-top ~ table,
.ui-table-wrapper-bottom ~ table {
border: 1px solid;
}
/* wrapper buttons */
.ui-table-wrapper-top .ui-btn:not(.ui-input-clear),
.ui-table-wrapper-bottom .ui-btn:not(.ui-input-clear) {
margin: 0;
border: 0 none;
-moz-border-radius: 0;
-webkit-border-radius: 0;
border-radius: 0;
-webkit-border-radius: 0;
-webkit-box-shadow: none;
-moz-box-shadow: none;
box-shadow: none;
font-weight: normal;
padding: .625em 1em;
vertical-align: middle;
}
.ui-table-wrapper-top > div, .ui-table-wrapper-bottom > div {
text-align: center;
}
.ui-table-wrapper-top .ui-table-columntoggle-btn {
float: none;
}
/* wrapper plain text */
.ui-table-wrapper-top .ui-plain-text,
.ui-table-wrapper-bottom .ui-plain-text {
font-size: .95em;
margin: 0;
padding: .625em 1em;
display: block;
position: relative;
text-align: center;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
cursor: normal;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
vertical-align: middle;
}
/* wrapper controlgroups */
.ui-table-wrapper-top .ui-controlgroup,
.ui-table-wrapper-bottom .ui-controlgroup {
text-align: center;
margin: 0 !important;
}
.ui-table-wrapper-top .ui-controlgroup > *,
.ui-table-wrapper-bottom .ui-controlgroup > * {
border: 0 none;
margin: 0 !important;
}
.ui-table-wrapper-top .ui-controlgroup .ui-controlgroup-controls ,
.ui-table-wrapper-bottom .ui-controlgroup .ui-controlgroup-controls {
/* width: 100%; *//* in single block, this prevents centering */
}
/* buttons */
.ui-table-wrapper-top .ui-controlgroup .ui-controlgroup-controls .ui-btn ,
.ui-table-wrapper-bottom .ui-controlgroup .ui-controlgroup-controls .ui-btn
.ui-table-wrapper-top .ui-controlgroup .ui-controlgroup-controls .ui-select ,
.ui-table-wrapper-bottom .ui-controlgroup .ui-controlgroup-controls .ui-select {
width: auto;
}
.ui-table-wrapper-top .ui-controlgroup .ui-controlgroup-controls .ui-select .ui-btn {
padding-top: 0;
padding-bottom: 0;
}
.ui-table-wrapper-top .ui-controlgroup .ui-controlgroup-controls .ui-select .ui-btn,
.ui-table-wrapper-bottom .ui-controlgroup .ui-controlgroup-controls .ui-select .ui-btn {
padding-top: 6px;
padding-bottom: 6px;
}
@media (max-width: 20em) {
.ui-table-wrapper-top .ui-controlgroup .ui-controlgroup-controls,
.ui-table-wrapper-bottom .ui-controlgroup .ui-controlgroup-controls {
width: 100%;
}
/* why? if not 5 buttons, this breaks...*/
.ui-table-wrapper-top .ui-controlgroup .ui-controlgroup-controls .ui-btn,
.ui-table-wrapper-bottom .ui-controlgroup .ui-controlgroup-controls .ui-btn,
.ui-table-wrapper-top .ui-controlgroup .ui-controlgroup-controls .ui-select,
.ui-table-wrapper-bottom .ui-controlgroup .ui-controlgroup-controls .ui-select {
width: 16%;
padding-left: 2%;
padding-right: 2%;
}
.ui-table-wrapper-top .ui-controlgroup .ui-controlgroup-controls .ui-select,
.ui-table-wrapper-bottom .ui-controlgroup .ui-controlgroup-controls .ui-select {
width: 20%;
padding-left: 0;
padding-right: 0;
}
.ui-table-wrapper-top .ui-controlgroup .ui-controlgroup-controls .ui-select .ui-btn,
.ui-table-wrapper-bottom .ui-controlgroup .ui-controlgroup-controls .ui-select .ui-btn {
width: 100%;
}
.ui-table-wrapper-top .ui-controlgroup .ui-controlgroup-controls .ui-btn:after,
.ui-table-wrapper-bottom .ui-controlgroup .ui-controlgroup-controls .ui-btn:after,
.ui-table-wrapper-top .ui-controlgroup .ui-controlgroup-controls .ui-select .ui-btn:after,
.ui-table-wrapper-bottom .ui-controlgroup .ui-controlgroup-controls .ui-select .ui-btn:after {
left: auto;
right: auto;
margin-left: 5% /* bad... */;
}
/* only child */
.ui-table-wrapper-bottom.ui-table-wrapper-inset > div:only-child,
.ui-table-wrapper-bottom.ui-table-wrapper-inset > div:only-child .ui-btn,
.ui-table-wrapper-bottom.ui-table-wrapper-inset > div:only-child .ui-select {
border-bottom-right-radius: inherit;
-webkit-border-bottom-right-radius: inherit;
border-bottom-right-radius: inherit;
-webkit-border-bottom-right-radius: inherit;
}
/* only child */
.ui-table-wrapper-top.ui-table-wrapper-inset > div:only-child,
.ui-table-wrapper-top.ui-table-wrapper-inset > div:only-child .ui-btn,
.ui-table-wrapper-top.ui-table-wrapper-inset > div:only-child .ui-select {
border-top-right-radius: inherit;
-webkit-border-top-right-radius: inherit;
border-top-right-radius: inherit;
-webkit-border-top-right-radius: inherit;
}
.ui-table-wrapper-top.ui-table-wrapper-inset .ui-controlgroup .ui-controlgroup-controls .ui-first-child,
.ui-table-wrapper-bottom.ui-table-wrapper-inset .ui-controlgroup .ui-controlgroup-controls .ui-first-child {
-webkit-border-bottom-right-radius: 0;
border-bottom-right-radius: 0;
-webkit-border-bottom-left-radius: inherit;
border-bottom-left-radius: inherit;
}
.ui-table-wrapper-top.ui-table-wrapper-inset .ui-controlgroup .ui-controlgroup-controls .ui-last-child,
.ui-table-wrapper-bottom.ui-table-wrapper-inset .ui-controlgroup .ui-controlgroup-controls .ui-last-child {
-webkit-border-bottom-right-radius: inherit;
border-bottom-right-radius: inherit;
-webkit-border-bottom-left-radius: 0;
border-bottom-left-radius: 0;
}
}
/* alignment */
.ui-table th, .ui-table td {
vertical-align: middle;
}
.ui-table thead th, .ui-table thead td {
text-align: center;
}
/* sortable buttons */
.ui-table thead th {
font-weight: normal !important;
/* padding: 0px; */
}
.ui-table thead th a {
margin: 0px !important;
border-width: 0px !important;
height: inherit !important;
}
/* multi row header */
.ui-table thead th[rowspan="2"] a {
height: auto; padding: 10px 0;
}
/* responsiveness */
@media (max-width: 40em) {
html table.ui-table {
width: 100.55%;
}
html table.ui-table-reflow tbody th {
border-top: 1px solid;
margin-top: 1.5em;
}
html table.ui-table-reflow tbody th:before {
width: 100%;
}
.ui-table-wrapper-top.ui-table-wrapper-inset .ui-btn,
.ui-table-wrapper-top.ui-table-wrapper-inset .ui-select,
.ui-table-wrapper-bottom.ui-table-wrapper-inset .ui-btn,
.ui-table-wrapper-bottom.ui-table-wrapper-inset .ui-select {
/* width: auto; */
text-indent: -9999px;
white-space: nowrap !important;
}
.ui-table-wrapper-top.ui-table-wrapper-inset .ui-btn:after,
.ui-table-wrapper-top.ui-table-wrapper-inset .ui-select:after,
.ui-table-wrapper-bottom.ui-table-wrapper-inset .ui-btn:after,
.ui-table-wrapper-bottom.ui-table-wrapper-inset .ui-select:after {
text-indent: 0px;
left: auto;
}
}
/* ui-controlbar */
.ui-controlbar {
position: static;
text-align: center;
}
.ui-controlbar > * {
display: inline-block;
vertical-align: middle;
padding: 0;
}
.ui-controlbar .ui-select {
padding: 0 1%;
}
/* ui-collapsible-tabs - above 40em */
@media (min-width: 40em) {
.ui-collapsible-tabs {
display: table;
table-layout: fixed;
width: 100%;
}
.ui-collapsible-tabs .ui-collapsible {
display: table-cell;
}
.ui-collapsible-tabs .ui-collapsible-content {
margin: 0;
padding: 0;
position: relative;
}
/* content - IE8 ignores this and falls back to regular collapsible-set */
.ui-collapsible-tabs[data-tabs="10"] .ui-collapsible .ui-collapsible-content {width: 1000%; }
.ui-collapsible-tabs[data-tabs="9"] .ui-collapsible .ui-collapsible-content {width: 900%; }
.ui-collapsible-tabs[data-tabs="8"] .ui-collapsible .ui-collapsible-content {width: 800%;}
.ui-collapsible-tabs[data-tabs="7"] .ui-collapsible .ui-collapsible-content {width: 700%;}
.ui-collapsible-tabs[data-tabs="6"] .ui-collapsible .ui-collapsible-content {width: 600%;}
.ui-collapsible-tabs[data-tabs="5"] .ui-collapsible .ui-collapsible-content {width: 500%;}
.ui-collapsible-tabs[data-tabs="4"] .ui-collapsible .ui-collapsible-content {width: 400%;}
.ui-collapsible-tabs[data-tabs="3"] .ui-collapsible .ui-collapsible-content {width: 300%;}
.ui-collapsible-tabs[data-tabs="2"] .ui-collapsible .ui-collapsible-content {width: 200%;}
.ui-collapsible-tabs[data-tabs="1"] .ui-collapsible .ui-collapsible-content {width: 100%;}
/* positioning (can use nth-child because IE8 does not care for the above */
.ui-collapsible-tabs .ui-collapsible:nth-child(1) .ui-collapsible-content {left: 0;}
.ui-collapsible-tabs .ui-collapsible:nth-child(2) .ui-collapsible-content {left: -100%;}
.ui-collapsible-tabs .ui-collapsible:nth-child(3) .ui-collapsible-content {left: -200%;}
.ui-collapsible-tabs .ui-collapsible:nth-child(4) .ui-collapsible-content {left: -300%;}
.ui-collapsible-tabs .ui-collapsible:nth-child(5) .ui-collapsible-content {left: -400%;}
.ui-collapsible-tabs .ui-collapsible:nth-child(6) .ui-collapsible-content {left: -500%;}
.ui-collapsible-tabs .ui-collapsible:nth-child(7) .ui-collapsible-content {left: -600%;}
.ui-collapsible-tabs .ui-collapsible:nth-child(8) .ui-collapsible-content {left: -700%;}
.ui-collapsible-tabs .ui-collapsible:nth-child(9) .ui-collapsible-content {left: -800%;}
.ui-collapsible-tabs .ui-collapsible:nth-child(10) .ui-collapsible-content {left: -900%;}
/* corners */
/* hardcode inset content-theme bottom corners, because can't inherit 0 on bottom left/right first/last tab */
.ui-collapsible-tabs .ui-collapsible-inset.ui-collapsible-themed-content:not(.ui-collapsible-collapsed) .ui-collapsible-content {
-webkit-border-bottom-left-radius: .6em;
border-bottom-left-radius: .6em;
-webkit-border-bottom-right-radius: .6em;
border-bottom-right-radius: .6em;
}
.ui-collapsible-tabs .ui-collapsible.ui-first-child {
-webkit-border-top-left-radius: inherit;
border-top-left-radius: inherit;
-webkit-border-top-right-radius: 0;
border-top-right-radius: 0;
-webkit-border-bottom-right-radius: 0;
border-bottom-right-radius: 0;
}
.ui-collapsible-tabs .ui-collapsible.ui-last-child {
-webkit-border-top-right-radius: inherit;
border-top-right-radius: inherit;
-webkit-border-top-left-radius: 0;
border-top-left-radius: 0;
-webkit-border-bottom-left-radius: 0;
border-bottom-left-radius: 0;
}
/* straight corner last-tab if one tab is open */
.ui-collapsible-tabs .ui-collapsible:not(.ui-collapsible-collapsed) ~ .ui-collapsible.ui-last-child {
-webkit-border-bottom-right-radius: 0;
border-bottom-right-radius: 0;
}
/* first tab, needs extra JS-assigned class... */
.ui-collapsible-tabs .ui-collapsible.ui-first-child {
-webkit-border-bottom-left-radius: 0;
border-bottom-left-radius: 0;
}
.ui-collapsible-tabs.ui-collapsible-set-all-closed .ui-collapsible.ui-first-child {
-webkit-border-bottom-left-radius: inherit;
border-bottom-left-radius: inherit;
}
/* hide status text */
.ui-collapsible-tabs .ui-collapsible-heading-status {
position: absolute !important;
left: -9999px;
clip: rect(1px 1px 1px 1px);
}
/* borders */
.ui-collapsible-tabs .ui-collapsible:not(.ui-collapsible-collapsed) h1 a {
border-bottom-color: transparent;
}
.ui-collapsible-tabs .ui-collapsible .ui-collapsible-content {
border-top-color: transparent;
border-top-width: 1px; /* magic */
}
html .ui-page .ui-collapsible-tabs .ui-collapsible + .ui-collapsible h1 a.ui-btn {
border-left-color: transparent;
}
}
/* hide icons */
html .ui-page .ui-collapsible-tabs .ui-collapsible h1 a.ui-collapsible-hide-icon.ui-btn:after {
content: none;
left: 0;
}
html .ui-page .ui-collapsible-tabs .ui-collapsible h1 a.ui-collapsible-hide-icon.ui-btn {
padding-left: 1em;
}
#window1 { top:6em;left:15%; }
#window2 { top:6em; right:25%; }
#window3 { top:30em; left:15%; }
#window4 { top:30em; right:25%}
.window {
border:1px dotted gray;
width:9.7em;
height:8em;
position:absolute;
color:gray;
font-family:serif;
font-style:italic;
padding-top:0.9em;
font-size:0.9em;
}
.demo { position:relative; }
.drag-locked { border:1px solid red; }
.dragActive { border:2px dotted orange; }
.dropHover { border:1px dotted red; }
/*
._jsPlumb_endpoint._jsPlumb_dragging { border:2px solid green; }
._jsPlumb_endpoint_full { border:3px solid #606; }
._jsPlumb_endpoint_connected { border:4px solid black; }
._jsPlumb_endpoint_drop_allowed { border:5px solid #935; }
._jsPlumb_endpoint_drop_forbidden { border:5px solid #539; }
*/
.cmdLink { font-size:0.80em;}
#clear { padding:0.3em; }
#clear:hover { background-color:yellow; }
#list {
text-align:center;
display:none;
font-size:90%;
position:absolute;
width:250px;
left:30%;
top:100px;
background-color:white;
padding:5px;
border:1px solid #456;
opacity:0.8;
}
#list table { width:100%; text-align:left;}
#explanation { text-align:center; }
\ No newline at end of file
/*!
* Font Awesome 4.0.3 by @davegandy - http://fontawesome.io - @fontawesome
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
*/
/* FONT PATH
* -------------------------- */
@font-face {
font-family: 'FontAwesome';
src: url('../fonts/fontawesome-webfont.eot?v=4.0.3');
src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff?v=4.0.3') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.0.3') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');
font-weight: normal;
font-style: normal;
}
.fa {
display: inline-block;
font-family: FontAwesome;
font-style: normal;
font-weight: normal;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
/* makes the font 33% larger relative to the icon container */
.fa-lg {
font-size: 1.3333333333333333em;
line-height: 0.75em;
vertical-align: -15%;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-fw {
width: 1.2857142857142858em;
text-align: center;
}
.fa-ul {
padding-left: 0;
margin-left: 2.142857142857143em;
list-style-type: none;
}
.fa-ul > li {
position: relative;
}
.fa-li {
position: absolute;
left: -2.142857142857143em;
width: 2.142857142857143em;
top: 0.14285714285714285em;
text-align: center;
}
.fa-li.fa-lg {
left: -1.8571428571428572em;
}
.fa-border {
padding: .2em .25em .15em;
border: solid 0.08em #eeeeee;
border-radius: .1em;
}
.pull-right {
float: right;
}
.pull-left {
float: left;
}
.fa.pull-left {
margin-right: .3em;
}
.fa.pull-right {
margin-left: .3em;
}
.fa-spin {
-webkit-animation: spin 2s infinite linear;
-moz-animation: spin 2s infinite linear;
-o-animation: spin 2s infinite linear;
animation: spin 2s infinite linear;
}
@-moz-keyframes spin {
0% {
-moz-transform: rotate(0deg);
}
100% {
-moz-transform: rotate(359deg);
}
}
@-webkit-keyframes spin {
0% {
-webkit-transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
}
}
@-o-keyframes spin {
0% {
-o-transform: rotate(0deg);
}
100% {
-o-transform: rotate(359deg);
}
}
@-ms-keyframes spin {
0% {
-ms-transform: rotate(0deg);
}
100% {
-ms-transform: rotate(359deg);
}
}
@keyframes spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(359deg);
}
}
.fa-rotate-90 {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
-ms-transform: rotate(90deg);
-o-transform: rotate(90deg);
transform: rotate(90deg);
}
.fa-rotate-180 {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
-webkit-transform: rotate(180deg);
-moz-transform: rotate(180deg);
-ms-transform: rotate(180deg);
-o-transform: rotate(180deg);
transform: rotate(180deg);
}
.fa-rotate-270 {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
-webkit-transform: rotate(270deg);
-moz-transform: rotate(270deg);
-ms-transform: rotate(270deg);
-o-transform: rotate(270deg);
transform: rotate(270deg);
}
.fa-flip-horizontal {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
-webkit-transform: scale(-1, 1);
-moz-transform: scale(-1, 1);
-ms-transform: scale(-1, 1);
-o-transform: scale(-1, 1);
transform: scale(-1, 1);
}
.fa-flip-vertical {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);
-webkit-transform: scale(1, -1);
-moz-transform: scale(1, -1);
-ms-transform: scale(1, -1);
-o-transform: scale(1, -1);
transform: scale(1, -1);
}
.fa-stack {
position: relative;
display: inline-block;
width: 2em;
height: 2em;
line-height: 2em;
vertical-align: middle;
}
.fa-stack-1x,
.fa-stack-2x {
position: absolute;
left: 0;
width: 100%;
text-align: center;
}
.fa-stack-1x {
line-height: inherit;
}
.fa-stack-2x {
font-size: 2em;
}
.fa-inverse {
color: #ffffff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
.fa-glass:before {
content: "\f000";
}
.fa-music:before {
content: "\f001";
}
.fa-search:before {
content: "\f002";
}
.fa-envelope-o:before {
content: "\f003";
}
.fa-heart:before {
content: "\f004";
}
.fa-star:before {
content: "\f005";
}
.fa-star-o:before {
content: "\f006";
}
.fa-user:before {
content: "\f007";
}
.fa-film:before {
content: "\f008";
}
.fa-th-large:before {
content: "\f009";
}
.fa-th:before {
content: "\f00a";
}
.fa-th-list:before {
content: "\f00b";
}
.fa-check:before {
content: "\f00c";
}
.fa-times:before {
content: "\f00d";
}
.fa-search-plus:before {
content: "\f00e";
}
.fa-search-minus:before {
content: "\f010";
}
.fa-power-off:before {
content: "\f011";
}
.fa-signal:before {
content: "\f012";
}
.fa-gear:before,
.fa-cog:before {
content: "\f013";
}
.fa-trash-o:before {
content: "\f014";
}
.fa-home:before {
content: "\f015";
}
.fa-file-o:before {
content: "\f016";
}
.fa-clock-o:before {
content: "\f017";
}
.fa-road:before {
content: "\f018";
}
.fa-download:before {
content: "\f019";
}
.fa-arrow-circle-o-down:before {
content: "\f01a";
}
.fa-arrow-circle-o-up:before {
content: "\f01b";
}
.fa-inbox:before {
content: "\f01c";
}
.fa-play-circle-o:before {
content: "\f01d";
}
.fa-rotate-right:before,
.fa-repeat:before {
content: "\f01e";
}
.fa-refresh:before {
content: "\f021";
}
.fa-list-alt:before {
content: "\f022";
}
.fa-lock:before {
content: "\f023";
}
.fa-flag:before {
content: "\f024";
}
.fa-headphones:before {
content: "\f025";
}
.fa-volume-off:before {
content: "\f026";
}
.fa-volume-down:before {
content: "\f027";
}
.fa-volume-up:before {
content: "\f028";
}
.fa-qrcode:before {
content: "\f029";
}
.fa-barcode:before {
content: "\f02a";
}
.fa-tag:before {
content: "\f02b";
}
.fa-tags:before {
content: "\f02c";
}
.fa-book:before {
content: "\f02d";
}
.fa-bookmark:before {
content: "\f02e";
}
.fa-print:before {
content: "\f02f";
}
.fa-camera:before {
content: "\f030";
}
.fa-font:before {
content: "\f031";
}
.fa-bold:before {
content: "\f032";
}
.fa-italic:before {
content: "\f033";
}
.fa-text-height:before {
content: "\f034";
}
.fa-text-width:before {
content: "\f035";
}
.fa-align-left:before {
content: "\f036";
}
.fa-align-center:before {
content: "\f037";
}
.fa-align-right:before {
content: "\f038";
}
.fa-align-justify:before {
content: "\f039";
}
.fa-list:before {
content: "\f03a";
}
.fa-dedent:before,
.fa-outdent:before {
content: "\f03b";
}
.fa-indent:before {
content: "\f03c";
}
.fa-video-camera:before {
content: "\f03d";
}
.fa-picture-o:before {
content: "\f03e";
}
.fa-pencil:before {
content: "\f040";
}
.fa-map-marker:before {
content: "\f041";
}
.fa-adjust:before {
content: "\f042";
}
.fa-tint:before {
content: "\f043";
}
.fa-edit:before,
.fa-pencil-square-o:before {
content: "\f044";
}
.fa-share-square-o:before {
content: "\f045";
}
.fa-check-square-o:before {
content: "\f046";
}
.fa-arrows:before {
content: "\f047";
}
.fa-step-backward:before {
content: "\f048";
}
.fa-fast-backward:before {
content: "\f049";
}
.fa-backward:before {
content: "\f04a";
}
.fa-play:before {
content: "\f04b";
}
.fa-pause:before {
content: "\f04c";
}
.fa-stop:before {
content: "\f04d";
}
.fa-forward:before {
content: "\f04e";
}
.fa-fast-forward:before {
content: "\f050";
}
.fa-step-forward:before {
content: "\f051";
}
.fa-eject:before {
content: "\f052";
}
.fa-chevron-left:before {
content: "\f053";
}
.fa-chevron-right:before {
content: "\f054";
}
.fa-plus-circle:before {
content: "\f055";
}
.fa-minus-circle:before {
content: "\f056";
}
.fa-times-circle:before {
content: "\f057";
}
.fa-check-circle:before {
content: "\f058";
}
.fa-question-circle:before {
content: "\f059";
}
.fa-info-circle:before {
content: "\f05a";
}
.fa-crosshairs:before {
content: "\f05b";
}
.fa-times-circle-o:before {
content: "\f05c";
}
.fa-check-circle-o:before {
content: "\f05d";
}
.fa-ban:before {
content: "\f05e";
}
.fa-arrow-left:before {
content: "\f060";
}
.fa-arrow-right:before {
content: "\f061";
}
.fa-arrow-up:before {
content: "\f062";
}
.fa-arrow-down:before {
content: "\f063";
}
.fa-mail-forward:before,
.fa-share:before {
content: "\f064";
}
.fa-expand:before {
content: "\f065";
}
.fa-compress:before {
content: "\f066";
}
.fa-plus:before {
content: "\f067";
}
.fa-minus:before {
content: "\f068";
}
.fa-asterisk:before {
content: "\f069";
}
.fa-exclamation-circle:before {
content: "\f06a";
}
.fa-gift:before {
content: "\f06b";
}
.fa-leaf:before {
content: "\f06c";
}
.fa-fire:before {
content: "\f06d";
}
.fa-eye:before {
content: "\f06e";
}
.fa-eye-slash:before {
content: "\f070";
}
.fa-warning:before,
.fa-exclamation-triangle:before {
content: "\f071";
}
.fa-plane:before {
content: "\f072";
}
.fa-calendar:before {
content: "\f073";
}
.fa-random:before {
content: "\f074";
}
.fa-comment:before {
content: "\f075";
}
.fa-magnet:before {
content: "\f076";
}
.fa-chevron-up:before {
content: "\f077";
}
.fa-chevron-down:before {
content: "\f078";
}
.fa-retweet:before {
content: "\f079";
}
.fa-shopping-cart:before {
content: "\f07a";
}
.fa-folder:before {
content: "\f07b";
}
.fa-folder-open:before {
content: "\f07c";
}
.fa-arrows-v:before {
content: "\f07d";
}
.fa-arrows-h:before {
content: "\f07e";
}
.fa-bar-chart-o:before {
content: "\f080";
}
.fa-twitter-square:before {
content: "\f081";
}
.fa-facebook-square:before {
content: "\f082";
}
.fa-camera-retro:before {
content: "\f083";
}
.fa-key:before {
content: "\f084";
}
.fa-gears:before,
.fa-cogs:before {
content: "\f085";
}
.fa-comments:before {
content: "\f086";
}
.fa-thumbs-o-up:before {
content: "\f087";
}
.fa-thumbs-o-down:before {
content: "\f088";
}
.fa-star-half:before {
content: "\f089";
}
.fa-heart-o:before {
content: "\f08a";
}
.fa-sign-out:before {
content: "\f08b";
}
.fa-linkedin-square:before {
content: "\f08c";
}
.fa-thumb-tack:before {
content: "\f08d";
}
.fa-external-link:before {
content: "\f08e";
}
.fa-sign-in:before {
content: "\f090";
}
.fa-trophy:before {
content: "\f091";
}
.fa-github-square:before {
content: "\f092";
}
.fa-upload:before {
content: "\f093";
}
.fa-lemon-o:before {
content: "\f094";
}
.fa-phone:before {
content: "\f095";
}
.fa-square-o:before {
content: "\f096";
}
.fa-bookmark-o:before {
content: "\f097";
}
.fa-phone-square:before {
content: "\f098";
}
.fa-twitter:before {
content: "\f099";
}
.fa-facebook:before {
content: "\f09a";
}
.fa-github:before {
content: "\f09b";
}
.fa-unlock:before {
content: "\f09c";
}
.fa-credit-card:before {
content: "\f09d";
}
.fa-rss:before {
content: "\f09e";
}
.fa-hdd-o:before {
content: "\f0a0";
}
.fa-bullhorn:before {
content: "\f0a1";
}
.fa-bell:before {
content: "\f0f3";
}
.fa-certificate:before {
content: "\f0a3";
}
.fa-hand-o-right:before {
content: "\f0a4";
}
.fa-hand-o-left:before {
content: "\f0a5";
}
.fa-hand-o-up:before {
content: "\f0a6";
}
.fa-hand-o-down:before {
content: "\f0a7";
}
.fa-arrow-circle-left:before {
content: "\f0a8";
}
.fa-arrow-circle-right:before {
content: "\f0a9";
}
.fa-arrow-circle-up:before {
content: "\f0aa";
}
.fa-arrow-circle-down:before {
content: "\f0ab";
}
.fa-globe:before {
content: "\f0ac";
}
.fa-wrench:before {
content: "\f0ad";
}
.fa-tasks:before {
content: "\f0ae";
}
.fa-filter:before {
content: "\f0b0";
}
.fa-briefcase:before {
content: "\f0b1";
}
.fa-arrows-alt:before {
content: "\f0b2";
}
.fa-group:before,
.fa-users:before {
content: "\f0c0";
}
.fa-chain:before,
.fa-link:before {
content: "\f0c1";
}
.fa-cloud:before {
content: "\f0c2";
}
.fa-flask:before {
content: "\f0c3";
}
.fa-cut:before,
.fa-scissors:before {
content: "\f0c4";
}
.fa-copy:before,
.fa-files-o:before {
content: "\f0c5";
}
.fa-paperclip:before {
content: "\f0c6";
}
.fa-save:before,
.fa-floppy-o:before {
content: "\f0c7";
}
.fa-square:before {
content: "\f0c8";
}
.fa-bars:before {
content: "\f0c9";
}
.fa-list-ul:before {
content: "\f0ca";
}
.fa-list-ol:before {
content: "\f0cb";
}
.fa-strikethrough:before {
content: "\f0cc";
}
.fa-underline:before {
content: "\f0cd";
}
.fa-table:before {
content: "\f0ce";
}
.fa-magic:before {
content: "\f0d0";
}
.fa-truck:before {
content: "\f0d1";
}
.fa-pinterest:before {
content: "\f0d2";
}
.fa-pinterest-square:before {
content: "\f0d3";
}
.fa-google-plus-square:before {
content: "\f0d4";
}
.fa-google-plus:before {
content: "\f0d5";
}
.fa-money:before {
content: "\f0d6";
}
.fa-caret-down:before {
content: "\f0d7";
}
.fa-caret-up:before {
content: "\f0d8";
}
.fa-caret-left:before {
content: "\f0d9";
}
.fa-caret-right:before {
content: "\f0da";
}
.fa-columns:before {
content: "\f0db";
}
.fa-unsorted:before,
.fa-sort:before {
content: "\f0dc";
}
.fa-sort-down:before,
.fa-sort-asc:before {
content: "\f0dd";
}
.fa-sort-up:before,
.fa-sort-desc:before {
content: "\f0de";
}
.fa-envelope:before {
content: "\f0e0";
}
.fa-linkedin:before {
content: "\f0e1";
}
.fa-rotate-left:before,
.fa-undo:before {
content: "\f0e2";
}
.fa-legal:before,
.fa-gavel:before {
content: "\f0e3";
}
.fa-dashboard:before,
.fa-tachometer:before {
content: "\f0e4";
}
.fa-comment-o:before {
content: "\f0e5";
}
.fa-comments-o:before {
content: "\f0e6";
}
.fa-flash:before,
.fa-bolt:before {
content: "\f0e7";
}
.fa-sitemap:before {
content: "\f0e8";
}
.fa-umbrella:before {
content: "\f0e9";
}
.fa-paste:before,
.fa-clipboard:before {
content: "\f0ea";
}
.fa-lightbulb-o:before {
content: "\f0eb";
}
.fa-exchange:before {
content: "\f0ec";
}
.fa-cloud-download:before {
content: "\f0ed";
}
.fa-cloud-upload:before {
content: "\f0ee";
}
.fa-user-md:before {
content: "\f0f0";
}
.fa-stethoscope:before {
content: "\f0f1";
}
.fa-suitcase:before {
content: "\f0f2";
}
.fa-bell-o:before {
content: "\f0a2";
}
.fa-coffee:before {
content: "\f0f4";
}
.fa-cutlery:before {
content: "\f0f5";
}
.fa-file-text-o:before {
content: "\f0f6";
}
.fa-building-o:before {
content: "\f0f7";
}
.fa-hospital-o:before {
content: "\f0f8";
}
.fa-ambulance:before {
content: "\f0f9";
}
.fa-medkit:before {
content: "\f0fa";
}
.fa-fighter-jet:before {
content: "\f0fb";
}
.fa-beer:before {
content: "\f0fc";
}
.fa-h-square:before {
content: "\f0fd";
}
.fa-plus-square:before {
content: "\f0fe";
}
.fa-angle-double-left:before {
content: "\f100";
}
.fa-angle-double-right:before {
content: "\f101";
}
.fa-angle-double-up:before {
content: "\f102";
}
.fa-angle-double-down:before {
content: "\f103";
}
.fa-angle-left:before {
content: "\f104";
}
.fa-angle-right:before {
content: "\f105";
}
.fa-angle-up:before {
content: "\f106";
}
.fa-angle-down:before {
content: "\f107";
}
.fa-desktop:before {
content: "\f108";
}
.fa-laptop:before {
content: "\f109";
}
.fa-tablet:before {
content: "\f10a";
}
.fa-mobile-phone:before,
.fa-mobile:before {
content: "\f10b";
}
.fa-circle-o:before {
content: "\f10c";
}
.fa-quote-left:before {
content: "\f10d";
}
.fa-quote-right:before {
content: "\f10e";
}
.fa-spinner:before {
content: "\f110";
}
.fa-circle:before {
content: "\f111";
}
.fa-mail-reply:before,
.fa-reply:before {
content: "\f112";
}
.fa-github-alt:before {
content: "\f113";
}
.fa-folder-o:before {
content: "\f114";
}
.fa-folder-open-o:before {
content: "\f115";
}
.fa-smile-o:before {
content: "\f118";
}
.fa-frown-o:before {
content: "\f119";
}
.fa-meh-o:before {
content: "\f11a";
}
.fa-gamepad:before {
content: "\f11b";
}
.fa-keyboard-o:before {
content: "\f11c";
}
.fa-flag-o:before {
content: "\f11d";
}
.fa-flag-checkered:before {
content: "\f11e";
}
.fa-terminal:before {
content: "\f120";
}
.fa-code:before {
content: "\f121";
}
.fa-reply-all:before {
content: "\f122";
}
.fa-mail-reply-all:before {
content: "\f122";
}
.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
content: "\f123";
}
.fa-location-arrow:before {
content: "\f124";
}
.fa-crop:before {
content: "\f125";
}
.fa-code-fork:before {
content: "\f126";
}
.fa-unlink:before,
.fa-chain-broken:before {
content: "\f127";
}
.fa-question:before {
content: "\f128";
}
.fa-info:before {
content: "\f129";
}
.fa-exclamation:before {
content: "\f12a";
}
.fa-superscript:before {
content: "\f12b";
}
.fa-subscript:before {
content: "\f12c";
}
.fa-eraser:before {
content: "\f12d";
}
.fa-puzzle-piece:before {
content: "\f12e";
}
.fa-microphone:before {
content: "\f130";
}
.fa-microphone-slash:before {
content: "\f131";
}
.fa-shield:before {
content: "\f132";
}
.fa-calendar-o:before {
content: "\f133";
}
.fa-fire-extinguisher:before {
content: "\f134";
}
.fa-rocket:before {
content: "\f135";
}
.fa-maxcdn:before {
content: "\f136";
}
.fa-chevron-circle-left:before {
content: "\f137";
}
.fa-chevron-circle-right:before {
content: "\f138";
}
.fa-chevron-circle-up:before {
content: "\f139";
}
.fa-chevron-circle-down:before {
content: "\f13a";
}
.fa-html5:before {
content: "\f13b";
}
.fa-css3:before {
content: "\f13c";
}
.fa-anchor:before {
content: "\f13d";
}
.fa-unlock-alt:before {
content: "\f13e";
}
.fa-bullseye:before {
content: "\f140";
}
.fa-ellipsis-h:before {
content: "\f141";
}
.fa-ellipsis-v:before {
content: "\f142";
}
.fa-rss-square:before {
content: "\f143";
}
.fa-play-circle:before {
content: "\f144";
}
.fa-ticket:before {
content: "\f145";
}
.fa-minus-square:before {
content: "\f146";
}
.fa-minus-square-o:before {
content: "\f147";
}
.fa-level-up:before {
content: "\f148";
}
.fa-level-down:before {
content: "\f149";
}
.fa-check-square:before {
content: "\f14a";
}
.fa-pencil-square:before {
content: "\f14b";
}
.fa-external-link-square:before {
content: "\f14c";
}
.fa-share-square:before {
content: "\f14d";
}
.fa-compass:before {
content: "\f14e";
}
.fa-toggle-down:before,
.fa-caret-square-o-down:before {
content: "\f150";
}
.fa-toggle-up:before,
.fa-caret-square-o-up:before {
content: "\f151";
}
.fa-toggle-right:before,
.fa-caret-square-o-right:before {
content: "\f152";
}
.fa-euro:before,
.fa-eur:before {
content: "\f153";
}
.fa-gbp:before {
content: "\f154";
}
.fa-dollar:before,
.fa-usd:before {
content: "\f155";
}
.fa-rupee:before,
.fa-inr:before {
content: "\f156";
}
.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
content: "\f157";
}
.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
content: "\f158";
}
.fa-won:before,
.fa-krw:before {
content: "\f159";
}
.fa-bitcoin:before,
.fa-btc:before {
content: "\f15a";
}
.fa-file:before {
content: "\f15b";
}
.fa-file-text:before {
content: "\f15c";
}
.fa-sort-alpha-asc:before {
content: "\f15d";
}
.fa-sort-alpha-desc:before {
content: "\f15e";
}
.fa-sort-amount-asc:before {
content: "\f160";
}
.fa-sort-amount-desc:before {
content: "\f161";
}
.fa-sort-numeric-asc:before {
content: "\f162";
}
.fa-sort-numeric-desc:before {
content: "\f163";
}
.fa-thumbs-up:before {
content: "\f164";
}
.fa-thumbs-down:before {
content: "\f165";
}
.fa-youtube-square:before {
content: "\f166";
}
.fa-youtube:before {
content: "\f167";
}
.fa-xing:before {
content: "\f168";
}
.fa-xing-square:before {
content: "\f169";
}
.fa-youtube-play:before {
content: "\f16a";
}
.fa-dropbox:before {
content: "\f16b";
}
.fa-stack-overflow:before {
content: "\f16c";
}
.fa-instagram:before {
content: "\f16d";
}
.fa-flickr:before {
content: "\f16e";
}
.fa-adn:before {
content: "\f170";
}
.fa-bitbucket:before {
content: "\f171";
}
.fa-bitbucket-square:before {
content: "\f172";
}
.fa-tumblr:before {
content: "\f173";
}
.fa-tumblr-square:before {
content: "\f174";
}
.fa-long-arrow-down:before {
content: "\f175";
}
.fa-long-arrow-up:before {
content: "\f176";
}
.fa-long-arrow-left:before {
content: "\f177";
}
.fa-long-arrow-right:before {
content: "\f178";
}
.fa-apple:before {
content: "\f179";
}
.fa-windows:before {
content: "\f17a";
}
.fa-android:before {
content: "\f17b";
}
.fa-linux:before {
content: "\f17c";
}
.fa-dribbble:before {
content: "\f17d";
}
.fa-skype:before {
content: "\f17e";
}
.fa-foursquare:before {
content: "\f180";
}
.fa-trello:before {
content: "\f181";
}
.fa-female:before {
content: "\f182";
}
.fa-male:before {
content: "\f183";
}
.fa-gittip:before {
content: "\f184";
}
.fa-sun-o:before {
content: "\f185";
}
.fa-moon-o:before {
content: "\f186";
}
.fa-archive:before {
content: "\f187";
}
.fa-bug:before {
content: "\f188";
}
.fa-vk:before {
content: "\f189";
}
.fa-weibo:before {
content: "\f18a";
}
.fa-renren:before {
content: "\f18b";
}
.fa-pagelines:before {
content: "\f18c";
}
.fa-stack-exchange:before {
content: "\f18d";
}
.fa-arrow-circle-o-right:before {
content: "\f18e";
}
.fa-arrow-circle-o-left:before {
content: "\f190";
}
.fa-toggle-left:before,
.fa-caret-square-o-left:before {
content: "\f191";
}
.fa-dot-circle-o:before {
content: "\f192";
}
.fa-wheelchair:before {
content: "\f193";
}
.fa-vimeo-square:before {
content: "\f194";
}
.fa-turkish-lira:before,
.fa-try:before {
content: "\f195";
}
.fa-plus-square-o:before {
content: "\f196";
}
/*
.left, .right { display: block; }
.main_block { display: block; }
@media screen and (max-width:900px) {
.left, .right {
float: none;
}
}
nav { margin: 0; }
.localnav {
margin:0 0 20px 0;
}
.ui-mobile-viewport .localnav li {
float:left;
}
.localnav .ui-btn-inner {
padding: .6em 10px;
font-size:80%;
}
*/
#main {
/* width: 850px; */
border-top: 2px solid #456;
border-left: 2px solid #456;
border-right: 2px solid #456;
border-bottom: 2px solid #456;
height: 600px;
border-bottom-left-radius: 10px;
border-bottom-right-radius: 10px;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
background-color:#eaedef;
}
.graph_node, .window, .label {
background-color:white;
text-align:center;
z-index:23;
cursor:pointer;
box-shadow: 2px 2px 19px #aaa;
-o-box-shadow: 2px 2px 19px #aaa;
-webkit-box-shadow: 2px 2px 19px #aaa;
-moz-box-shadow: 2px 2px 19px #aaa;
}
.graph_node, .window {
border:1px dotted gray;
width:5.7em;
height:4em;
position:absolute;
color:gray;
font-family:serif;
font-style:italic;
padding-top:0.9em;
font-size:0.9em;
}
path, ._jsPlumb_endpoint { cursor:pointer; }
/* z index stuff */
._jsPlumb_connector { z-index:18; }
._jsPlumb_endpoint { z-index:19; }
._jsPlumb_overlay { z-index:23; }
._jsPlumb_connector._jsPlumb_hover {
z-index:21 !important;
}
._jsPlumb_endpoint._jsPlumb_hover {
z-index:22 !important;
}
._jsPlumb_overlay {
border:1px solid #346789;
opacity:0.8;
filter:alpha(opacity=80);
background-color:white;
color:black;
font-family:helvetica;
padding:0.5em;
}
#simulation_result {
height:200px;
}
/*! jQuery UI - v1.10.3 - 2013-11-28
* http://jqueryui.com
* Includes: jquery.ui.core.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.accordion.css, jquery.ui.autocomplete.css, jquery.ui.button.css, jquery.ui.datepicker.css, jquery.ui.dialog.css, jquery.ui.menu.css, jquery.ui.progressbar.css, jquery.ui.slider.css, jquery.ui.spinner.css, jquery.ui.tabs.css, jquery.ui.tooltip.css, jquery.ui.theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
* Copyright 2013 jQuery Foundation and other contributors; Licensed MIT */
/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
display: none;
}
.ui-helper-hidden-accessible {
border: 0;
clip: rect(0 0 0 0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
}
.ui-helper-reset {
margin: 0;
padding: 0;
border: 0;
outline: 0;
line-height: 1.3;
text-decoration: none;
font-size: 100%;
list-style: none;
}
.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
content: "";
display: table;
border-collapse: collapse;
}
.ui-helper-clearfix:after {
clear: both;
}
.ui-helper-clearfix {
min-height: 0; /* support: IE7 */
}
.ui-helper-zfix {
width: 100%;
height: 100%;
top: 0;
left: 0;
position: absolute;
opacity: 0;
filter:Alpha(Opacity=0);
}
.ui-front {
z-index: 100;
}
/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
cursor: default !important;
}
/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
display: block;
text-indent: -99999px;
overflow: hidden;
background-repeat: no-repeat;
}
/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.ui-resizable {
position: relative;
}
.ui-resizable-handle {
position: absolute;
font-size: 0.1px;
display: block;
}
.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle {
display: none;
}
.ui-resizable-n {
cursor: n-resize;
height: 7px;
width: 100%;
top: -5px;
left: 0;
}
.ui-resizable-s {
cursor: s-resize;
height: 7px;
width: 100%;
bottom: -5px;
left: 0;
}
.ui-resizable-e {
cursor: e-resize;
width: 7px;
right: -5px;
top: 0;
height: 100%;
}
.ui-resizable-w {
cursor: w-resize;
width: 7px;
left: -5px;
top: 0;
height: 100%;
}
.ui-resizable-se {
cursor: se-resize;
width: 12px;
height: 12px;
right: 1px;
bottom: 1px;
}
.ui-resizable-sw {
cursor: sw-resize;
width: 9px;
height: 9px;
left: -5px;
bottom: -5px;
}
.ui-resizable-nw {
cursor: nw-resize;
width: 9px;
height: 9px;
left: -5px;
top: -5px;
}
.ui-resizable-ne {
cursor: ne-resize;
width: 9px;
height: 9px;
right: -5px;
top: -5px;
}
.ui-selectable-helper {
position: absolute;
z-index: 100;
border: 1px dotted black;
}
.ui-accordion .ui-accordion-header {
display: block;
cursor: pointer;
position: relative;
margin-top: 2px;
padding: .5em .5em .5em .7em;
min-height: 0; /* support: IE7 */
}
.ui-accordion .ui-accordion-icons {
padding-left: 2.2em;
}
.ui-accordion .ui-accordion-noicons {
padding-left: .7em;
}
.ui-accordion .ui-accordion-icons .ui-accordion-icons {
padding-left: 2.2em;
}
.ui-accordion .ui-accordion-header .ui-accordion-header-icon {
position: absolute;
left: .5em;
top: 50%;
margin-top: -8px;
}
.ui-accordion .ui-accordion-content {
padding: 1em 2.2em;
border-top: 0;
overflow: auto;
}
.ui-autocomplete {
position: absolute;
top: 0;
left: 0;
cursor: default;
}
.ui-button {
display: inline-block;
position: relative;
padding: 0;
line-height: normal;
margin-right: .1em;
cursor: pointer;
vertical-align: middle;
text-align: center;
overflow: visible; /* removes extra width in IE */
}
.ui-button,
.ui-button:link,
.ui-button:visited,
.ui-button:hover,
.ui-button:active {
text-decoration: none;
}
/* to make room for the icon, a width needs to be set here */
.ui-button-icon-only {
width: 2.2em;
}
/* button elements seem to need a little more width */
button.ui-button-icon-only {
width: 2.4em;
}
.ui-button-icons-only {
width: 3.4em;
}
button.ui-button-icons-only {
width: 3.7em;
}
/* button text element */
.ui-button .ui-button-text {
display: block;
line-height: normal;
}
.ui-button-text-only .ui-button-text {
padding: .4em 1em;
}
.ui-button-icon-only .ui-button-text,
.ui-button-icons-only .ui-button-text {
padding: .4em;
text-indent: -9999999px;
}
.ui-button-text-icon-primary .ui-button-text,
.ui-button-text-icons .ui-button-text {
padding: .4em 1em .4em 2.1em;
}
.ui-button-text-icon-secondary .ui-button-text,
.ui-button-text-icons .ui-button-text {
padding: .4em 2.1em .4em 1em;
}
.ui-button-text-icons .ui-button-text {
padding-left: 2.1em;
padding-right: 2.1em;
}
/* no icon support for input elements, provide padding by default */
input.ui-button {
padding: .4em 1em;
}
/* button icon element(s) */
.ui-button-icon-only .ui-icon,
.ui-button-text-icon-primary .ui-icon,
.ui-button-text-icon-secondary .ui-icon,
.ui-button-text-icons .ui-icon,
.ui-button-icons-only .ui-icon {
position: absolute;
top: 50%;
margin-top: -8px;
}
.ui-button-icon-only .ui-icon {
left: 50%;
margin-left: -8px;
}
.ui-button-text-icon-primary .ui-button-icon-primary,
.ui-button-text-icons .ui-button-icon-primary,
.ui-button-icons-only .ui-button-icon-primary {
left: .5em;
}
.ui-button-text-icon-secondary .ui-button-icon-secondary,
.ui-button-text-icons .ui-button-icon-secondary,
.ui-button-icons-only .ui-button-icon-secondary {
right: .5em;
}
/* button sets */
.ui-buttonset {
margin-right: 7px;
}
.ui-buttonset .ui-button {
margin-left: 0;
margin-right: -.3em;
}
/* workarounds */
/* reset extra padding in Firefox, see h5bp.com/l */
input.ui-button::-moz-focus-inner,
button.ui-button::-moz-focus-inner {
border: 0;
padding: 0;
}
.ui-datepicker {
width: 17em;
padding: .2em .2em 0;
display: none;
}
.ui-datepicker .ui-datepicker-header {
position: relative;
padding: .2em 0;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
position: absolute;
top: 2px;
width: 1.8em;
height: 1.8em;
}
.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
top: 1px;
}
.ui-datepicker .ui-datepicker-prev {
left: 2px;
}
.ui-datepicker .ui-datepicker-next {
right: 2px;
}
.ui-datepicker .ui-datepicker-prev-hover {
left: 1px;
}
.ui-datepicker .ui-datepicker-next-hover {
right: 1px;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
display: block;
position: absolute;
left: 50%;
margin-left: -8px;
top: 50%;
margin-top: -8px;
}
.ui-datepicker .ui-datepicker-title {
margin: 0 2.3em;
line-height: 1.8em;
text-align: center;
}
.ui-datepicker .ui-datepicker-title select {
font-size: 1em;
margin: 1px 0;
}
.ui-datepicker select.ui-datepicker-month-year {
width: 100%;
}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
width: 49%;
}
.ui-datepicker table {
width: 100%;
font-size: .9em;
border-collapse: collapse;
margin: 0 0 .4em;
}
.ui-datepicker th {
padding: .7em .3em;
text-align: center;
font-weight: bold;
border: 0;
}
.ui-datepicker td {
border: 0;
padding: 1px;
}
.ui-datepicker td span,
.ui-datepicker td a {
display: block;
padding: .2em;
text-align: right;
text-decoration: none;
}
.ui-datepicker .ui-datepicker-buttonpane {
background-image: none;
margin: .7em 0 0 0;
padding: 0 .2em;
border-left: 0;
border-right: 0;
border-bottom: 0;
}
.ui-datepicker .ui-datepicker-buttonpane button {
float: right;
margin: .5em .2em .4em;
cursor: pointer;
padding: .2em .6em .3em .6em;
width: auto;
overflow: visible;
}
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
float: left;
}
/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
width: auto;
}
.ui-datepicker-multi .ui-datepicker-group {
float: left;
}
.ui-datepicker-multi .ui-datepicker-group table {
width: 95%;
margin: 0 auto .4em;
}
.ui-datepicker-multi-2 .ui-datepicker-group {
width: 50%;
}
.ui-datepicker-multi-3 .ui-datepicker-group {
width: 33.3%;
}
.ui-datepicker-multi-4 .ui-datepicker-group {
width: 25%;
}
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
border-left-width: 0;
}
.ui-datepicker-multi .ui-datepicker-buttonpane {
clear: left;
}
.ui-datepicker-row-break {
clear: both;
width: 100%;
font-size: 0;
}
/* RTL support */
.ui-datepicker-rtl {
direction: rtl;
}
.ui-datepicker-rtl .ui-datepicker-prev {
right: 2px;
left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next {
left: 2px;
right: auto;
}
.ui-datepicker-rtl .ui-datepicker-prev:hover {
right: 1px;
left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next:hover {
left: 1px;
right: auto;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane {
clear: right;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button {
float: left;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
float: right;
}
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
border-right-width: 0;
border-left-width: 1px;
}
.ui-dialog {
position: absolute;
top: 0;
left: 0;
padding: .2em;
outline: 0;
}
.ui-dialog .ui-dialog-titlebar {
padding: .4em 1em;
position: relative;
}
.ui-dialog .ui-dialog-title {
float: left;
margin: .1em 0;
white-space: nowrap;
width: 90%;
overflow: hidden;
text-overflow: ellipsis;
}
.ui-dialog .ui-dialog-titlebar-close {
position: absolute;
right: .3em;
top: 50%;
width: 21px;
margin: -10px 0 0 0;
padding: 1px;
height: 20px;
}
.ui-dialog .ui-dialog-content {
position: relative;
border: 0;
padding: .5em 1em;
background: none;
overflow: auto;
}
.ui-dialog .ui-dialog-buttonpane {
text-align: left;
border-width: 1px 0 0 0;
background-image: none;
margin-top: .5em;
padding: .3em 1em .5em .4em;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
float: right;
}
.ui-dialog .ui-dialog-buttonpane button {
margin: .5em .4em .5em 0;
cursor: pointer;
}
.ui-dialog .ui-resizable-se {
width: 12px;
height: 12px;
right: -5px;
bottom: -5px;
background-position: 16px 16px;
}
.ui-draggable .ui-dialog-titlebar {
cursor: move;
}
.ui-menu {
list-style: none;
padding: 2px;
margin: 0;
display: block;
outline: none;
}
.ui-menu .ui-menu {
margin-top: -3px;
position: absolute;
}
.ui-menu .ui-menu-item {
margin: 0;
padding: 0;
width: 100%;
/* support: IE10, see #8844 */
list-style-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);
}
.ui-menu .ui-menu-divider {
margin: 5px -2px 5px -2px;
height: 0;
font-size: 0;
line-height: 0;
border-width: 1px 0 0 0;
}
.ui-menu .ui-menu-item a {
text-decoration: none;
display: block;
padding: 2px .4em;
line-height: 1.5;
min-height: 0; /* support: IE7 */
font-weight: normal;
}
.ui-menu .ui-menu-item a.ui-state-focus,
.ui-menu .ui-menu-item a.ui-state-active {
font-weight: normal;
margin: -1px;
}
.ui-menu .ui-state-disabled {
font-weight: normal;
margin: .4em 0 .2em;
line-height: 1.5;
}
.ui-menu .ui-state-disabled a {
cursor: default;
}
/* icon support */
.ui-menu-icons {
position: relative;
}
.ui-menu-icons .ui-menu-item a {
position: relative;
padding-left: 2em;
}
/* left-aligned */
.ui-menu .ui-icon {
position: absolute;
top: .2em;
left: .2em;
}
/* right-aligned */
.ui-menu .ui-menu-icon {
position: static;
float: right;
}
.ui-progressbar {
height: 2em;
text-align: left;
overflow: hidden;
}
.ui-progressbar .ui-progressbar-value {
margin: -1px;
height: 100%;
}
.ui-progressbar .ui-progressbar-overlay {
background: url("images/animated-overlay.gif");
height: 100%;
filter: alpha(opacity=25);
opacity: 0.25;
}
.ui-progressbar-indeterminate .ui-progressbar-value {
background-image: none;
}
.ui-slider {
position: relative;
text-align: left;
}
.ui-slider .ui-slider-handle {
position: absolute;
z-index: 2;
width: 1.2em;
height: 1.2em;
cursor: default;
}
.ui-slider .ui-slider-range {
position: absolute;
z-index: 1;
font-size: .7em;
display: block;
border: 0;
background-position: 0 0;
}
/* For IE8 - See #6727 */
.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range {
filter: inherit;
}
.ui-slider-horizontal {
height: .8em;
}
.ui-slider-horizontal .ui-slider-handle {
top: -.3em;
margin-left: -.6em;
}
.ui-slider-horizontal .ui-slider-range {
top: 0;
height: 100%;
}
.ui-slider-horizontal .ui-slider-range-min {
left: 0;
}
.ui-slider-horizontal .ui-slider-range-max {
right: 0;
}
.ui-slider-vertical {
width: .8em;
height: 100px;
}
.ui-slider-vertical .ui-slider-handle {
left: -.3em;
margin-left: 0;
margin-bottom: -.6em;
}
.ui-slider-vertical .ui-slider-range {
left: 0;
width: 100%;
}
.ui-slider-vertical .ui-slider-range-min {
bottom: 0;
}
.ui-slider-vertical .ui-slider-range-max {
top: 0;
}
.ui-spinner {
position: relative;
display: inline-block;
overflow: hidden;
padding: 0;
vertical-align: middle;
}
.ui-spinner-input {
border: none;
background: none;
color: inherit;
padding: 0;
margin: .2em 0;
vertical-align: middle;
margin-left: .4em;
margin-right: 22px;
}
.ui-spinner-button {
width: 16px;
height: 50%;
font-size: .5em;
padding: 0;
margin: 0;
text-align: center;
position: absolute;
cursor: default;
display: block;
overflow: hidden;
right: 0;
}
/* more specificity required here to overide default borders */
.ui-spinner a.ui-spinner-button {
border-top: none;
border-bottom: none;
border-right: none;
}
/* vertical centre icon */
.ui-spinner .ui-icon {
position: absolute;
margin-top: -8px;
top: 50%;
left: 0;
}
.ui-spinner-up {
top: 0;
}
.ui-spinner-down {
bottom: 0;
}
/* TR overrides */
.ui-spinner .ui-icon-triangle-1-s {
/* need to fix icons sprite */
background-position: -65px -16px;
}
.ui-tabs {
position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
padding: .2em;
}
.ui-tabs .ui-tabs-nav {
margin: 0;
padding: .2em .2em 0;
}
.ui-tabs .ui-tabs-nav li {
list-style: none;
float: left;
position: relative;
top: 0;
margin: 1px .2em 0 0;
border-bottom-width: 0;
padding: 0;
white-space: nowrap;
}
.ui-tabs .ui-tabs-nav li a {
float: left;
padding: .5em 1em;
text-decoration: none;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active {
margin-bottom: -1px;
padding-bottom: 1px;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active a,
.ui-tabs .ui-tabs-nav li.ui-state-disabled a,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading a {
cursor: text;
}
.ui-tabs .ui-tabs-nav li a, /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a {
cursor: pointer;
}
.ui-tabs .ui-tabs-panel {
display: block;
border-width: 0;
padding: 1em 1.4em;
background: none;
}
.ui-tooltip {
padding: 8px;
position: absolute;
z-index: 9999;
max-width: 300px;
-webkit-box-shadow: 0 0 5px #aaa;
box-shadow: 0 0 5px #aaa;
}
body .ui-tooltip {
border-width: 2px;
}
/* Component containers
----------------------------------*/
.ui-widget {
font-family: Verdana,Arial,sans-serif;
font-size: 1.1em;
}
.ui-widget .ui-widget {
font-size: 1em;
}
.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
font-family: Verdana,Arial,sans-serif;
font-size: 1em;
}
.ui-widget-content {
border: 1px solid #aaaaaa;
background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;
color: #222222;
}
.ui-widget-content a {
color: #222222;
}
.ui-widget-header {
border: 1px solid #aaaaaa;
background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;
color: #222222;
font-weight: bold;
}
.ui-widget-header a {
color: #222222;
}
/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
border: 1px solid #d3d3d3;
background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;
font-weight: normal;
color: #555555;
}
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited {
color: #555555;
text-decoration: none;
}
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
border: 1px solid #999999;
background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;
font-weight: normal;
color: #212121;
}
.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited {
color: #212121;
text-decoration: none;
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
border: 1px solid #aaaaaa;
background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;
font-weight: normal;
color: #212121;
}
.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
color: #212121;
text-decoration: none;
}
/* Interaction Cues
----------------------------------*/
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
border: 1px solid #fcefa1;
background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x;
color: #363636;
}
.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
color: #363636;
}
.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
border: 1px solid #cd0a0a;
background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;
color: #cd0a0a;
}
.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
color: #cd0a0a;
}
.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
color: #cd0a0a;
}
.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
font-weight: bold;
}
.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
opacity: .7;
filter:Alpha(Opacity=70);
font-weight: normal;
}
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
opacity: .35;
filter:Alpha(Opacity=35);
background-image: none;
}
.ui-state-disabled .ui-icon {
filter:Alpha(Opacity=35); /* For IE8 - See #6059 */
}
/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
width: 16px;
height: 16px;
}
.ui-icon,
.ui-widget-content .ui-icon {
background-image: url(images/ui-icons_222222_256x240.png);
}
.ui-widget-header .ui-icon {
background-image: url(images/ui-icons_222222_256x240.png);
}
.ui-state-default .ui-icon {
background-image: url(images/ui-icons_888888_256x240.png);
}
.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon {
background-image: url(images/ui-icons_454545_256x240.png);
}
.ui-state-active .ui-icon {
background-image: url(images/ui-icons_454545_256x240.png);
}
.ui-state-highlight .ui-icon {
background-image: url(images/ui-icons_2e83ff_256x240.png);
}
.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
background-image: url(images/ui-icons_cd0a0a_256x240.png);
}
/* positioning */
.ui-icon-blank { background-position: 16px 16px; }
.ui-icon-carat-1-n { background-position: 0 0; }
.ui-icon-carat-1-ne { background-position: -16px 0; }
.ui-icon-carat-1-e { background-position: -32px 0; }
.ui-icon-carat-1-se { background-position: -48px 0; }
.ui-icon-carat-1-s { background-position: -64px 0; }
.ui-icon-carat-1-sw { background-position: -80px 0; }
.ui-icon-carat-1-w { background-position: -96px 0; }
.ui-icon-carat-1-nw { background-position: -112px 0; }
.ui-icon-carat-2-n-s { background-position: -128px 0; }
.ui-icon-carat-2-e-w { background-position: -144px 0; }
.ui-icon-triangle-1-n { background-position: 0 -16px; }
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
.ui-icon-triangle-1-e { background-position: -32px -16px; }
.ui-icon-triangle-1-se { background-position: -48px -16px; }
.ui-icon-triangle-1-s { background-position: -64px -16px; }
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
.ui-icon-triangle-1-w { background-position: -96px -16px; }
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
.ui-icon-arrow-1-n { background-position: 0 -32px; }
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
.ui-icon-arrow-1-e { background-position: -32px -32px; }
.ui-icon-arrow-1-se { background-position: -48px -32px; }
.ui-icon-arrow-1-s { background-position: -64px -32px; }
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
.ui-icon-arrow-1-w { background-position: -96px -32px; }
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
.ui-icon-arrow-4 { background-position: 0 -80px; }
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
.ui-icon-extlink { background-position: -32px -80px; }
.ui-icon-newwin { background-position: -48px -80px; }
.ui-icon-refresh { background-position: -64px -80px; }
.ui-icon-shuffle { background-position: -80px -80px; }
.ui-icon-transfer-e-w { background-position: -96px -80px; }
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
.ui-icon-folder-collapsed { background-position: 0 -96px; }
.ui-icon-folder-open { background-position: -16px -96px; }
.ui-icon-document { background-position: -32px -96px; }
.ui-icon-document-b { background-position: -48px -96px; }
.ui-icon-note { background-position: -64px -96px; }
.ui-icon-mail-closed { background-position: -80px -96px; }
.ui-icon-mail-open { background-position: -96px -96px; }
.ui-icon-suitcase { background-position: -112px -96px; }
.ui-icon-comment { background-position: -128px -96px; }
.ui-icon-person { background-position: -144px -96px; }
.ui-icon-print { background-position: -160px -96px; }
.ui-icon-trash { background-position: -176px -96px; }
.ui-icon-locked { background-position: -192px -96px; }
.ui-icon-unlocked { background-position: -208px -96px; }
.ui-icon-bookmark { background-position: -224px -96px; }
.ui-icon-tag { background-position: -240px -96px; }
.ui-icon-home { background-position: 0 -112px; }
.ui-icon-flag { background-position: -16px -112px; }
.ui-icon-calendar { background-position: -32px -112px; }
.ui-icon-cart { background-position: -48px -112px; }
.ui-icon-pencil { background-position: -64px -112px; }
.ui-icon-clock { background-position: -80px -112px; }
.ui-icon-disk { background-position: -96px -112px; }
.ui-icon-calculator { background-position: -112px -112px; }
.ui-icon-zoomin { background-position: -128px -112px; }
.ui-icon-zoomout { background-position: -144px -112px; }
.ui-icon-search { background-position: -160px -112px; }
.ui-icon-wrench { background-position: -176px -112px; }
.ui-icon-gear { background-position: -192px -112px; }
.ui-icon-heart { background-position: -208px -112px; }
.ui-icon-star { background-position: -224px -112px; }
.ui-icon-link { background-position: -240px -112px; }
.ui-icon-cancel { background-position: 0 -128px; }
.ui-icon-plus { background-position: -16px -128px; }
.ui-icon-plusthick { background-position: -32px -128px; }
.ui-icon-minus { background-position: -48px -128px; }
.ui-icon-minusthick { background-position: -64px -128px; }
.ui-icon-close { background-position: -80px -128px; }
.ui-icon-closethick { background-position: -96px -128px; }
.ui-icon-key { background-position: -112px -128px; }
.ui-icon-lightbulb { background-position: -128px -128px; }
.ui-icon-scissors { background-position: -144px -128px; }
.ui-icon-clipboard { background-position: -160px -128px; }
.ui-icon-copy { background-position: -176px -128px; }
.ui-icon-contact { background-position: -192px -128px; }
.ui-icon-image { background-position: -208px -128px; }
.ui-icon-video { background-position: -224px -128px; }
.ui-icon-script { background-position: -240px -128px; }
.ui-icon-alert { background-position: 0 -144px; }
.ui-icon-info { background-position: -16px -144px; }
.ui-icon-notice { background-position: -32px -144px; }
.ui-icon-help { background-position: -48px -144px; }
.ui-icon-check { background-position: -64px -144px; }
.ui-icon-bullet { background-position: -80px -144px; }
.ui-icon-radio-on { background-position: -96px -144px; }
.ui-icon-radio-off { background-position: -112px -144px; }
.ui-icon-pin-w { background-position: -128px -144px; }
.ui-icon-pin-s { background-position: -144px -144px; }
.ui-icon-play { background-position: 0 -160px; }
.ui-icon-pause { background-position: -16px -160px; }
.ui-icon-seek-next { background-position: -32px -160px; }
.ui-icon-seek-prev { background-position: -48px -160px; }
.ui-icon-seek-end { background-position: -64px -160px; }
.ui-icon-seek-start { background-position: -80px -160px; }
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first { background-position: -80px -160px; }
.ui-icon-stop { background-position: -96px -160px; }
.ui-icon-eject { background-position: -112px -160px; }
.ui-icon-volume-off { background-position: -128px -160px; }
.ui-icon-volume-on { background-position: -144px -160px; }
.ui-icon-power { background-position: 0 -176px; }
.ui-icon-signal-diag { background-position: -16px -176px; }
.ui-icon-signal { background-position: -32px -176px; }
.ui-icon-battery-0 { background-position: -48px -176px; }
.ui-icon-battery-1 { background-position: -64px -176px; }
.ui-icon-battery-2 { background-position: -80px -176px; }
.ui-icon-battery-3 { background-position: -96px -176px; }
.ui-icon-circle-plus { background-position: 0 -192px; }
.ui-icon-circle-minus { background-position: -16px -192px; }
.ui-icon-circle-close { background-position: -32px -192px; }
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
.ui-icon-circle-zoomin { background-position: -176px -192px; }
.ui-icon-circle-zoomout { background-position: -192px -192px; }
.ui-icon-circle-check { background-position: -208px -192px; }
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
.ui-icon-circlesmall-close { background-position: -32px -208px; }
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
.ui-icon-squaresmall-close { background-position: -80px -208px; }
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
/* Misc visuals
----------------------------------*/
/* Corner radius */
.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
border-top-left-radius: 4px;
}
.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
border-top-right-radius: 4px;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
border-bottom-left-radius: 4px;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
border-bottom-right-radius: 4px;
}
/* Overlays */
.ui-widget-overlay {
background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;
opacity: .3;
filter: Alpha(Opacity=30);
}
.ui-widget-shadow {
margin: -8px 0 0 -8px;
padding: 8px;
background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;
opacity: .3;
filter: Alpha(Opacity=30);
border-radius: 8px;
}
/*! jQuery UI - v1.10.3 - 2013-11-28
* http://jqueryui.com
* Includes: jquery.ui.core.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.accordion.css, jquery.ui.autocomplete.css, jquery.ui.button.css, jquery.ui.datepicker.css, jquery.ui.dialog.css, jquery.ui.menu.css, jquery.ui.progressbar.css, jquery.ui.slider.css, jquery.ui.spinner.css, jquery.ui.tabs.css, jquery.ui.tooltip.css, jquery.ui.theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
* Copyright 2013 jQuery Foundation and other contributors; Licensed MIT */
.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black}.ui-accordion .ui-accordion-header{display:block;cursor:pointer;position:relative;margin-top:2px;padding:.5em .5em .5em .7em;min-height:0}.ui-accordion .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-noicons{padding-left:.7em}.ui-accordion .ui-accordion-icons .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-header .ui-accordion-header-icon{position:absolute;left:.5em;top:50%;margin-top:-8px}.ui-accordion .ui-accordion-content{padding:1em 2.2em;border-top:0;overflow:auto}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-button{display:inline-block;position:relative;padding:0;line-height:normal;margin-right:.1em;cursor:pointer;vertical-align:middle;text-align:center;overflow:visible}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2.2em}button.ui-button-icon-only{width:2.4em}.ui-button-icons-only{width:3.4em}button.ui-button-icons-only{width:3.7em}.ui-button .ui-button-text{display:block;line-height:normal}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button-icon-only .ui-button-text,.ui-button-icons-only .ui-button-text{padding:.4em;text-indent:-9999999px}.ui-button-text-icon-primary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 1em .4em 2.1em}.ui-button-text-icon-secondary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 2.1em .4em 1em}.ui-button-text-icons .ui-button-text{padding-left:2.1em;padding-right:2.1em}input.ui-button{padding:.4em 1em}.ui-button-icon-only .ui-icon,.ui-button-text-icon-primary .ui-icon,.ui-button-text-icon-secondary .ui-icon,.ui-button-text-icons .ui-icon,.ui-button-icons-only .ui-icon{position:absolute;top:50%;margin-top:-8px}.ui-button-icon-only .ui-icon{left:50%;margin-left:-8px}.ui-button-text-icon-primary .ui-button-icon-primary,.ui-button-text-icons .ui-button-icon-primary,.ui-button-icons-only .ui-button-icon-primary{left:.5em}.ui-button-text-icon-secondary .ui-button-icon-secondary,.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em}.ui-buttonset{margin-right:7px}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em}input.ui-button::-moz-focus-inner,button.ui-button::-moz-focus-inner{border:0;padding:0}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month-year{width:100%}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-dialog{position:absolute;top:0;left:0;padding:.2em;outline:0}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0;white-space:nowrap;width:90%;overflow:hidden;text-overflow:ellipsis}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:21px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin-top:.5em;padding:.3em 1em .5em .4em}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer}.ui-dialog .ui-resizable-se{width:12px;height:12px;right:-5px;bottom:-5px;background-position:16px 16px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-menu{list-style:none;padding:2px;margin:0;display:block;outline:none}.ui-menu .ui-menu{margin-top:-3px;position:absolute}.ui-menu .ui-menu-item{margin:0;padding:0;width:100%;list-style-image:url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)}.ui-menu .ui-menu-divider{margin:5px -2px 5px -2px;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-menu-item a{text-decoration:none;display:block;padding:2px .4em;line-height:1.5;min-height:0;font-weight:normal}.ui-menu .ui-menu-item a.ui-state-focus,.ui-menu .ui-menu-item a.ui-state-active{font-weight:normal;margin:-1px}.ui-menu .ui-state-disabled{font-weight:normal;margin:.4em 0 .2em;line-height:1.5}.ui-menu .ui-state-disabled a{cursor:default}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item a{position:relative;padding-left:2em}.ui-menu .ui-icon{position:absolute;top:.2em;left:.2em}.ui-menu .ui-menu-icon{position:static;float:right}.ui-progressbar{height:2em;text-align:left;overflow:hidden}.ui-progressbar .ui-progressbar-value{margin:-1px;height:100%}.ui-progressbar .ui-progressbar-overlay{background:url("images/animated-overlay.gif");height:100%;filter:alpha(opacity=25);opacity:0.25}.ui-progressbar-indeterminate .ui-progressbar-value{background-image:none}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-spinner{position:relative;display:inline-block;overflow:hidden;padding:0;vertical-align:middle}.ui-spinner-input{border:none;background:none;color:inherit;padding:0;margin:.2em 0;vertical-align:middle;margin-left:.4em;margin-right:22px}.ui-spinner-button{width:16px;height:50%;font-size:.5em;padding:0;margin:0;text-align:center;position:absolute;cursor:default;display:block;overflow:hidden;right:0}.ui-spinner a.ui-spinner-button{border-top:none;border-bottom:none;border-right:none}.ui-spinner .ui-icon{position:absolute;margin-top:-8px;top:50%;left:0}.ui-spinner-up{top:0}.ui-spinner-down{bottom:0}.ui-spinner .ui-icon-triangle-1-s{background-position:-65px -16px}.ui-tabs{position:relative;padding:.2em}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:1px .2em 0 0;border-bottom-width:0;padding:0;white-space:nowrap}.ui-tabs .ui-tabs-nav li a{float:left;padding:.5em 1em;text-decoration:none}.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px;padding-bottom:1px}.ui-tabs .ui-tabs-nav li.ui-tabs-active a,.ui-tabs .ui-tabs-nav li.ui-state-disabled a,.ui-tabs .ui-tabs-nav li.ui-tabs-loading a{cursor:text}.ui-tabs .ui-tabs-nav li a,.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a{cursor:pointer}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:none}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px;-webkit-box-shadow:0 0 5px #aaa;box-shadow:0 0 5px #aaa}body .ui-tooltip{border-width:2px}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #aaa;background:#fff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;color:#222}.ui-widget-content a{color:#222}.ui-widget-header{border:1px solid #aaa;background:#ccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;color:#222;font-weight:bold}.ui-widget-header a{color:#222}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #d3d3d3;background:#e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#555}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #999;background:#dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited{color:#212121;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #aaa;background:#fff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x;color:#363636}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;color:#cd0a0a}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-widget-header .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-state-default .ui-icon{background-image:url(images/ui-icons_888888_256x240.png)}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url(images/ui-icons_454545_256x240.png)}.ui-state-active .ui-icon{background-image:url(images/ui-icons_454545_256x240.png)}.ui-state-highlight .ui-icon{background-image:url(images/ui-icons_2e83ff_256x240.png)}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(images/ui-icons_cd0a0a_256x240.png)}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:4px}.ui-widget-overlay{background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px}
\ No newline at end of file
/**
* Handsontable 0.10.0-beta4
* Handsontable is a simple jQuery plugin for editable tables with basic copy-paste compatibility with Excel and Google Docs
*
* Copyright 2012, Marcin Warpechowski
* Licensed under the MIT license.
* http://handsontable.com/
*
* Date: Wed Nov 27 2013 14:18:10 GMT+0100 (CET)
*/
.handsontable {
position: relative;
}
.handsontable.htAutoColumnSize {
visibility: hidden;
left: 0;
position: absolute;
top: 0;
}
.handsontable table,
.handsontable tbody,
.handsontable thead,
.handsontable td,
.handsontable th,
.handsontable div {
box-sizing: content-box;
-webkit-box-sizing: content-box;
-moz-box-sizing: content-box;
}
.handsontable table.htCore {
border-collapse: separate;
/*it must be separate, otherwise there are offset miscalculations in WebKit: http://stackoverflow.com/questions/2655987/border-collapse-differences-in-ff-and-webkit*/
position: relative;
/*this actually only changes appearance of user selection - does not make text unselectable
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-o-user-select: none;
-ms-user-select: none;
/*user-select: none; /*no browser supports unprefixed version*/
border-spacing: 0;
margin: 0;
border-width: 0;
table-layout: fixed;
width: 0;
outline-width: 0;
/* reset bootstrap table style. for more info see: https://github.com/warpech/jquery-handsontable/issues/224 */
max-width: none;
max-height: none;
}
.handsontable col {
width: 50px;
}
.handsontable col.rowHeader {
width: 50px;
}
.handsontable th,
.handsontable td {
border-right: 1px solid #CCC;
border-bottom: 1px solid #CCC;
height: 22px;
empty-cells: show;
line-height: 21px;
padding: 0 4px 0 4px;
/* top, bottom padding different than 0 is handled poorly by FF with HTML5 doctype */
background-color: #FFF;
vertical-align: top;
overflow: hidden;
outline-width: 0;
white-space: pre-line;
/* preserve new line character in cell */
}
.handsontable td.htInvalid {
-webkit-transition: background 0.75s ease;
transition: background 0.75s ease;
background-color: #ff4c42;
}
.handsontable th:last-child {
/*Foundation framework fix*/
border-right: 1px solid #CCC;
border-bottom: 1px solid #CCC;
}
.handsontable tr:first-child th.htNoFrame,
.handsontable th:first-child.htNoFrame,
.handsontable th.htNoFrame {
border-left-width: 0;
background-color: white;
border-color: #FFF;
}
.handsontable th:first-child,
.handsontable td:first-child,
.handsontable .htNoFrame + th,
.handsontable .htNoFrame + td {
border-left: 1px solid #CCC;
}
.handsontable tr:first-child th,
.handsontable tr:first-child td {
border-top: 1px solid #CCC;
}
.handsontable thead tr:last-child th {
border-bottom-width: 0;
}
.handsontable thead tr.lastChild th {
border-bottom-width: 0;
}
.handsontable th {
background-color: #EEE;
color: #222;
text-align: center;
font-weight: normal;
white-space: nowrap;
}
.handsontable thead th {
padding: 0;
}
.handsontable th.active {
background-color: #CCC;
}
.handsontable thead th .relative {
position: relative;
padding: 2px 4px;
}
/* plugins */
.handsontable .manualColumnMover {
position: absolute;
left: 0;
top: 0;
background-color: transparent;
width: 5px;
height: 25px;
z-index: 999;
cursor: move;
}
.handsontable th .manualColumnMover:hover,
.handsontable th .manualColumnMover.active {
background-color: #88F;
}
.handsontable .manualColumnResizer {
position: absolute;
top: 0;
cursor: col-resize;
}
.handsontable .manualColumnResizerHandle {
background-color: transparent;
width: 5px;
height: 25px;
}
.handsontable .manualColumnResizer:hover .manualColumnResizerHandle,
.handsontable .manualColumnResizer.active .manualColumnResizerHandle {
background-color: #AAB;
}
.handsontable .manualColumnResizerLine {
position: absolute;
right: 0;
top: 0;
background-color: #AAB;
display: none;
width: 0;
border-right: 1px dashed #777;
}
.handsontable .manualColumnResizer.active .manualColumnResizerLine {
display: block;
}
.handsontable .columnSorting:hover {
text-decoration: underline;
cursor: pointer;
}
/* border line */
.handsontable .wtBorder {
position: absolute;
font-size: 0;
}
.handsontable td.area {
background-color: #EEF4FF;
}
/* fill handle */
.handsontable .wtBorder.corner {
font-size: 0;
cursor: crosshair;
}
.handsontable .htBorder.htFillBorder {
background: red;
width: 1px;
height: 1px;
}
.handsontableInput {
border: 2px solid #5292F7;
outline-width: 0;
margin: 0;
padding: 1px 4px 0 2px;
font-family: Arial, Helvetica, sans-serif;
/*repeat from .handsontable (inherit doesn't work with IE<8) */
line-height: 1.3em;
/*repeat from .handsontable (inherit doesn't work with IE<8) */
font-size: inherit;
-webkit-box-shadow: 1px 2px 5px rgba(0, 0, 0, 0.4);
box-shadow: 1px 2px 5px rgba(0, 0, 0, 0.4);
resize: none;
/*below are needed to overwrite stuff added by jQuery UI Bootstrap theme*/
display: inline-block;
color: #000;
border-radius: 0;
}
.handsontableInputHolder {
position: absolute;
top: 0;
left: 0;
z-index: 100;
}
.htSelectEditor {
-webkit-appearance: menulist-button !important;
position: absolute;
}
/*
TextRenderer readOnly cell
*/
.handsontable .htDimmed {
font-style: italic;
color: #777;
}
/*
TextRenderer placeholder value
*/
.handsontable .htPlaceholder {
color: #999;
}
/*
AutocompleteRenderer down arrow
*/
.handsontable .htAutocompleteArrow {
float: right;
font-size: 10px;
color: #EEE;
cursor: default;
width: 16px;
text-align: center;
}
.handsontable td .htAutocompleteArrow:hover {
color: #777;
}
/*
CheckboxRenderer
*/
.handsontable .htCheckboxRendererInput.noValue {
opacity: 0.5;
}
/*
NumericRenderer
*/
.handsontable .htNumeric {
text-align: right;
}
/*context menu rules*/
ul.context-menu-list {
color: black;
}
ul.context-menu-list li {
margin-bottom: 0;
/*Foundation framework fix*/
}
/**
* dragdealer
*/
.handsontable .dragdealer {
position: relative;
width: 9px;
height: 9px;
background: #F8F8F8;
border: 1px solid #DDD;
}
.handsontable .dragdealer .handle {
position: absolute;
width: 9px;
height: 9px;
background: #C5C5C5;
}
.handsontable .dragdealer .disabled {
background: #898989;
}
/**
* Handsontable in Handsontable
*/
.handsontable .handsontable .wtHider {
padding: 0 0 5px 0;
}
.handsontable .handsontable table {
-webkit-box-shadow: 1px 2px 5px rgba(0, 0, 0, 0.4);
box-shadow: 1px 2px 5px rgba(0, 0, 0, 0.4);
}
/**
* Handsontable listbox theme
*/
.handsontable.listbox {
margin: 0;
}
.handsontable.listbox table {
border: 1px solid #ccc;
border-collapse: separate;
background: white;
}
.handsontable.listbox th,
.handsontable.listbox tr:first-child th,
.handsontable.listbox tr:last-child th,
.handsontable.listbox tr:first-child td,
.handsontable.listbox td {
border-width: 0;
}
.handsontable.listbox th,
.handsontable.listbox td {
white-space: nowrap;
text-overflow: ellipsis;
}
.handsontable.listbox td.htDimmed {
cursor: default;
color: inherit;
font-style: inherit;
}
.handsontable.listbox .wtBorder {
visibility: hidden;
}
.handsontable.listbox tr td.current,
.handsontable.listbox tr:hover td {
background: #eee;
}
.htContextMenu {
display: none;
position: absolute;
}
.handsontable .htContextMenu table.htCore {
outline: 1px solid #bbb;
}
.handsontable .htContextMenu .wtBorder {
visibility: hidden;
}
.handsontable .htContextMenu table tbody tr td {
background: white;
border-width: 0;
padding: 4px 6px 0px 6px;
cursor: pointer;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.handsontable .htContextMenu table tbody tr td.htDimmed{
font-style: normal;
color: #323232;
}
.handsontable .htContextMenu table tbody tr td.current{
background: rgb(233, 233, 233);
}
.handsontable .htContextMenu table tbody tr td.htSeparator {
border-top: 1px solid #bbb;
height: 0;
padding: 0;
}
.handsontable .htContextMenu table tbody tr td.htDisabled {
color: #999;
}
.handsontable .htContextMenu table tbody tr td.htDisabled:hover {
background: white;
color: #999;
cursor: default;
}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
/*
* Skeleton V1.2
* Copyright 2011, Dave Gamache
* www.getskeleton.com
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
* 6/20/2012
*/
/* Table of Content
==================================================
#Site Styles
#Page Styles
#Media Queries
#Font-Face */
/* #Site Styles
================================================== */
/* #Page Styles
================================================== */
/* #Media Queries
================================================== */
/* Smaller than standard 960 (devices and browsers) */
@media only screen and (max-width: 959px) {}
/* Tablet Portrait size to standard 960 (devices and browsers) */
@media only screen and (min-width: 768px) and (max-width: 959px) {}
/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 767px) {}
/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
@media only screen and (min-width: 480px) and (max-width: 767px) {}
/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 479px) {}
/* #Font-Face
================================================== */
/* This is the proper syntax for an @font-face file
Just create a "fonts" folder at the root,
copy your FontName into code below and remove
comment brackets */
/* @font-face {
font-family: 'FontName';
src: url('../fonts/FontName.eot');
src: url('../fonts/FontName.eot?iefix') format('eot'),
url('../fonts/FontName.woff') format('woff'),
url('../fonts/FontName.ttf') format('truetype'),
url('../fonts/FontName.svg#webfontZam02nTh') format('svg');
font-weight: normal;
font-style: normal; }
*/
\ No newline at end of file
/*! normalize.css v2.1.3 | MIT License | git.io/normalize */
/* ==========================================================================
HTML5 display definitions
========================================================================== */
/**
* Correct `block` display not defined in IE 8/9.
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
display: block;
}
/**
* Correct `inline-block` display not defined in IE 8/9.
*/
audio,
canvas,
video {
display: inline-block;
}
/**
* Prevent modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices.
*/
audio:not([controls]) {
display: none;
height: 0;
}
/**
* Address `[hidden]` styling not present in IE 8/9.
* Hide the `template` element in IE, Safari, and Firefox < 22.
*/
[hidden],
template {
display: none;
}
/* ==========================================================================
Base
========================================================================== */
/**
* 1. Set default font family to sans-serif.
* 2. Prevent iOS text size adjust after orientation change, without disabling
* user zoom.
*/
html {
font-family: sans-serif; /* 1 */
-ms-text-size-adjust: 100%; /* 2 */
-webkit-text-size-adjust: 100%; /* 2 */
}
/**
* Remove default margin.
*/
body {
margin: 0;
}
/* ==========================================================================
Links
========================================================================== */
/**
* Remove the gray background color from active links in IE 10.
*/
a {
background: transparent;
}
/**
* Address `outline` inconsistency between Chrome and other browsers.
*/
a:focus {
outline: thin dotted;
}
/**
* Improve readability when focused and also mouse hovered in all browsers.
*/
a:active,
a:hover {
outline: 0;
}
/* ==========================================================================
Typography
========================================================================== */
/**
* Address variable `h1` font-size and margin within `section` and `article`
* contexts in Firefox 4+, Safari 5, and Chrome.
*/
h1 {
font-size: 2em;
margin: 0.67em 0;
}
/**
* Address styling not present in IE 8/9, Safari 5, and Chrome.
*/
abbr[title] {
border-bottom: 1px dotted;
}
/**
* Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
*/
b,
strong {
font-weight: bold;
}
/**
* Address styling not present in Safari 5 and Chrome.
*/
dfn {
font-style: italic;
}
/**
* Address differences between Firefox and other browsers.
*/
hr {
-moz-box-sizing: content-box;
box-sizing: content-box;
height: 0;
}
/**
* Address styling not present in IE 8/9.
*/
mark {
background: #ff0;
color: #000;
}
/**
* Correct font family set oddly in Safari 5 and Chrome.
*/
code,
kbd,
pre,
samp {
font-family: monospace, serif;
font-size: 1em;
}
/**
* Improve readability of pre-formatted text in all browsers.
*/
pre {
white-space: pre-wrap;
}
/**
* Set consistent quote types.
*/
q {
quotes: "\201C" "\201D" "\2018" "\2019";
}
/**
* Address inconsistent and variable font size in all browsers.
*/
small {
font-size: 80%;
}
/**
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sup {
top: -0.5em;
}
sub {
bottom: -0.25em;
}
/* ==========================================================================
Embedded content
========================================================================== */
/**
* Remove border when inside `a` element in IE 8/9.
*/
img {
border: 0;
}
/**
* Correct overflow displayed oddly in IE 9.
*/
svg:not(:root) {
overflow: hidden;
}
/* ==========================================================================
Figures
========================================================================== */
/**
* Address margin not present in IE 8/9 and Safari 5.
*/
figure {
margin: 0;
}
/* ==========================================================================
Forms
========================================================================== */
/**
* Define consistent border, margin, and padding.
*/
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em;
}
/**
* 1. Correct `color` not being inherited in IE 8/9.
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
*/
legend {
border: 0; /* 1 */
padding: 0; /* 2 */
}
/**
* 1. Correct font family not being inherited in all browsers.
* 2. Correct font size not being inherited in all browsers.
* 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
*/
button,
input,
select,
textarea {
font-family: inherit; /* 1 */
font-size: 100%; /* 2 */
margin: 0; /* 3 */
}
/**
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
* the UA stylesheet.
*/
button,
input {
line-height: normal;
}
/**
* Address inconsistent `text-transform` inheritance for `button` and `select`.
* All other form control elements do not inherit `text-transform` values.
* Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
* Correct `select` style inheritance in Firefox 4+ and Opera.
*/
button,
select {
text-transform: none;
}
/**
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
* and `video` controls.
* 2. Correct inability to style clickable `input` types in iOS.
* 3. Improve usability and consistency of cursor style between image-type
* `input` and others.
*/
button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
-webkit-appearance: button; /* 2 */
cursor: pointer; /* 3 */
}
/**
* Re-set default cursor for disabled elements.
*/
button[disabled],
html input[disabled] {
cursor: default;
}
/**
* 1. Address box sizing set to `content-box` in IE 8/9/10.
* 2. Remove excess padding in IE 8/9/10.
*/
input[type="checkbox"],
input[type="radio"] {
box-sizing: border-box; /* 1 */
padding: 0; /* 2 */
}
/**
* 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
* 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
* (include `-moz` to future-proof).
*/
input[type="search"] {
-webkit-appearance: textfield; /* 1 */
-moz-box-sizing: content-box;
-webkit-box-sizing: content-box; /* 2 */
box-sizing: content-box;
}
/**
* Remove inner padding and search cancel button in Safari 5 and Chrome
* on OS X.
*/
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
/**
* Remove inner padding and border in Firefox 4+.
*/
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0;
}
/**
* 1. Remove default vertical scrollbar in IE 8/9.
* 2. Improve readability and alignment in all browsers.
*/
textarea {
overflow: auto; /* 1 */
vertical-align: top; /* 2 */
}
/* ==========================================================================
Tables
========================================================================== */
/**
* Remove most spacing between table cells.
*/
table {
border-collapse: collapse;
border-spacing: 0;
}
/*
* Skeleton V1.2
* Copyright 2011, Dave Gamache
* www.getskeleton.com
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
* 6/20/2012
*/
/* Table of Contents
==================================================
#Base 960 Grid
#Tablet (Portrait)
#Mobile (Portrait)
#Mobile (Landscape)
#Clearing */
/* #Base 960 Grid
================================================== */
.container { position: relative; width: 960px; margin: 0 auto; padding: 0; }
.container .column,
.container .columns { float: left; display: inline; margin-left: 10px; margin-right: 10px; }
.row { margin-bottom: 20px; }
/* Nested Column Classes */
.column.alpha, .columns.alpha { margin-left: 0; }
.column.omega, .columns.omega { margin-right: 0; }
/* Base Grid */
.container .one.column,
.container .one.columns { width: 40px; }
.container .two.columns { width: 100px; }
.container .three.columns { width: 160px; }
.container .four.columns { width: 220px; }
.container .five.columns { width: 280px; }
.container .six.columns { width: 340px; }
.container .seven.columns { width: 400px; }
.container .eight.columns { width: 460px; }
.container .nine.columns { width: 520px; }
.container .ten.columns { width: 580px; }
.container .eleven.columns { width: 640px; }
.container .twelve.columns { width: 700px; }
.container .thirteen.columns { width: 760px; }
.container .fourteen.columns { width: 820px; }
.container .fifteen.columns { width: 880px; }
.container .sixteen.columns { width: 940px; }
.container .one-third.column { width: 300px; }
.container .two-thirds.column { width: 620px; }
/* Offsets */
.container .offset-by-one { padding-left: 60px; }
.container .offset-by-two { padding-left: 120px; }
.container .offset-by-three { padding-left: 180px; }
.container .offset-by-four { padding-left: 240px; }
.container .offset-by-five { padding-left: 300px; }
.container .offset-by-six { padding-left: 360px; }
.container .offset-by-seven { padding-left: 420px; }
.container .offset-by-eight { padding-left: 480px; }
.container .offset-by-nine { padding-left: 540px; }
.container .offset-by-ten { padding-left: 600px; }
.container .offset-by-eleven { padding-left: 660px; }
.container .offset-by-twelve { padding-left: 720px; }
.container .offset-by-thirteen { padding-left: 780px; }
.container .offset-by-fourteen { padding-left: 840px; }
.container .offset-by-fifteen { padding-left: 900px; }
/* #Tablet (Portrait)
================================================== */
/* Note: Design for a width of 768px */
@media only screen and (min-width: 768px) and (max-width: 959px) {
.container { width: 768px; }
.container .column,
.container .columns { margin-left: 10px; margin-right: 10px; }
.column.alpha, .columns.alpha { margin-left: 0; margin-right: 10px; }
.column.omega, .columns.omega { margin-right: 0; margin-left: 10px; }
.alpha.omega { margin-left: 0; margin-right: 0; }
.container .one.column,
.container .one.columns { width: 28px; }
.container .two.columns { width: 76px; }
.container .three.columns { width: 124px; }
.container .four.columns { width: 172px; }
.container .five.columns { width: 220px; }
.container .six.columns { width: 268px; }
.container .seven.columns { width: 316px; }
.container .eight.columns { width: 364px; }
.container .nine.columns { width: 412px; }
.container .ten.columns { width: 460px; }
.container .eleven.columns { width: 508px; }
.container .twelve.columns { width: 556px; }
.container .thirteen.columns { width: 604px; }
.container .fourteen.columns { width: 652px; }
.container .fifteen.columns { width: 700px; }
.container .sixteen.columns { width: 748px; }
.container .one-third.column { width: 236px; }
.container .two-thirds.column { width: 492px; }
/* Offsets */
.container .offset-by-one { padding-left: 48px; }
.container .offset-by-two { padding-left: 96px; }
.container .offset-by-three { padding-left: 144px; }
.container .offset-by-four { padding-left: 192px; }
.container .offset-by-five { padding-left: 240px; }
.container .offset-by-six { padding-left: 288px; }
.container .offset-by-seven { padding-left: 336px; }
.container .offset-by-eight { padding-left: 384px; }
.container .offset-by-nine { padding-left: 432px; }
.container .offset-by-ten { padding-left: 480px; }
.container .offset-by-eleven { padding-left: 528px; }
.container .offset-by-twelve { padding-left: 576px; }
.container .offset-by-thirteen { padding-left: 624px; }
.container .offset-by-fourteen { padding-left: 672px; }
.container .offset-by-fifteen { padding-left: 720px; }
}
/* #Mobile (Portrait)
================================================== */
/* Note: Design for a width of 320px */
@media only screen and (max-width: 767px) {
.container { width: 300px; }
.container .columns,
.container .column { margin: 0; }
.container .one.column,
.container .one.columns,
.container .two.columns,
.container .three.columns,
.container .four.columns,
.container .five.columns,
.container .six.columns,
.container .seven.columns,
.container .eight.columns,
.container .nine.columns,
.container .ten.columns,
.container .eleven.columns,
.container .twelve.columns,
.container .thirteen.columns,
.container .fourteen.columns,
.container .fifteen.columns,
.container .sixteen.columns,
.container .one-third.column,
.container .two-thirds.column { width: 300px; }
/* Offsets */
.container .offset-by-one,
.container .offset-by-two,
.container .offset-by-three,
.container .offset-by-four,
.container .offset-by-five,
.container .offset-by-six,
.container .offset-by-seven,
.container .offset-by-eight,
.container .offset-by-nine,
.container .offset-by-ten,
.container .offset-by-eleven,
.container .offset-by-twelve,
.container .offset-by-thirteen,
.container .offset-by-fourteen,
.container .offset-by-fifteen { padding-left: 0; }
}
/* #Mobile (Landscape)
================================================== */
/* Note: Design for a width of 480px */
@media only screen and (min-width: 480px) and (max-width: 767px) {
.container { width: 420px; }
.container .columns,
.container .column { margin: 0; }
.container .one.column,
.container .one.columns,
.container .two.columns,
.container .three.columns,
.container .four.columns,
.container .five.columns,
.container .six.columns,
.container .seven.columns,
.container .eight.columns,
.container .nine.columns,
.container .ten.columns,
.container .eleven.columns,
.container .twelve.columns,
.container .thirteen.columns,
.container .fourteen.columns,
.container .fifteen.columns,
.container .sixteen.columns,
.container .one-third.column,
.container .two-thirds.column { width: 420px; }
}
/* #Clearing
================================================== */
/* Self Clearing Goodness */
.container:after { content: "\0020"; display: block; height: 0; clear: both; visibility: hidden; }
/* Use clearfix class on parent to clear nested columns,
or wrap each row of columns in a <div class="row"> */
.clearfix:before,
.clearfix:after,
.row:before,
.row:after {
content: '\0020';
display: block;
overflow: hidden;
visibility: hidden;
width: 0;
height: 0; }
.row:after,
.clearfix:after {
clear: both; }
.row,
.clearfix {
zoom: 1; }
/* You can also use a <br class="clear" /> to clear columns */
.clear {
clear: both;
display: block;
overflow: hidden;
visibility: hidden;
width: 0;
height: 0;
}
/* #Base 1120 Grid
================================================== */
@media only screen and (min-width: 1120px) and (max-width: 1279px) {
.container { width: 1120px; }
.container .one.column,
.container .one.columns { width: 50px; }
.container .two.columns { width: 120px; }
.container .three.columns { width: 190px; }
.container .four.columns { width: 260px; }
.container .five.columns { width: 330px; }
.container .six.columns { width: 400px; }
.container .seven.columns { width: 470px; }
.container .eight.columns { width: 540px; }
.container .nine.columns { width: 610px; }
.container .ten.columns { width: 680px; }
.container .eleven.columns { width: 750px; }
.container .twelve.columns { width: 820px; }
.container .thirteen.columns { width: 890px; }
.container .fourteen.columns { width: 960px; }
.container .fifteen.columns { width: 1030px; }
.container .sixteen.columns { width: 1100px; }
.container .one-third.column { width: 353px; }
.container .two-thirds.column { width: 727px; }
/* Offsets */
.container .offset-by-one { padding-left: 70px; }
.container .offset-by-two { padding-left: 140px; }
.container .offset-by-three { padding-left: 210px; }
.container .offset-by-four { padding-left: 280px; }
.container .offset-by-five { padding-left: 350px; }
.container .offset-by-six { padding-left: 420px; }
.container .offset-by-seven { padding-left: 490px; }
.container .offset-by-eight { padding-left: 560px; }
.container .offset-by-nine { padding-left: 630px; }
.container .offset-by-ten { padding-left: 700px; }
.container .offset-by-eleven { padding-left: 770px; }
.container .offset-by-twelve { padding-left: 840px; }
.container .offset-by-thirteen { padding-left: 910px; }
.container .offset-by-fourteen { padding-left: 980px; }
.container .offset-by-fifteen { padding-left: 1050px; }
}
/* #Base 1280 Grid
================================================== */
@media only screen and (min-width: 1280px) and (max-width: 1439px) {
.container { width: 1280px; }
.container .one.column,
.container .one.columns { width: 60px; }
.container .two.columns { width: 140px; }
.container .three.columns { width: 220px; }
.container .four.columns { width: 300px; }
.container .five.columns { width: 380px; }
.container .six.columns { width: 460px; }
.container .seven.columns { width: 540px; }
.container .eight.columns { width: 620px; }
.container .nine.columns { width: 700px; }
.container .ten.columns { width: 780px; }
.container .eleven.columns { width: 860px; }
.container .twelve.columns { width: 940px; }
.container .thirteen.columns { width: 1020px; }
.container .fourteen.columns { width: 1100px; }
.container .fifteen.columns { width: 1180px; }
.container .sixteen.columns { width: 1260px; }
.container .one-third.column { width: 406px; }
.container .two-thirds.column { width: 834px; }
/* Offsets */
.container .offset-by-one { padding-left: 80px; }
.container .offset-by-two { padding-left: 160px; }
.container .offset-by-three { padding-left: 240px; }
.container .offset-by-four { padding-left: 320px; }
.container .offset-by-five { padding-left: 400px; }
.container .offset-by-six { padding-left: 480px; }
.container .offset-by-seven { padding-left: 560px; }
.container .offset-by-eight { padding-left: 640px; }
.container .offset-by-nine { padding-left: 720px; }
.container .offset-by-ten { padding-left: 800px; }
.container .offset-by-eleven { padding-left: 880px; }
.container .offset-by-twelve { padding-left: 960px; }
.container .offset-by-thirteen { padding-left: 1040px; }
.container .offset-by-fourteen { padding-left: 1120px; }
.container .offset-by-fifteen { padding-left: 1200px; }
}
/* #Base 1440 Grid
================================================== */
@media only screen and (min-width: 1440px) and (max-width: 1599px) {
.container { width: 1440px; }
.container .one.column,
.container .one.columns { width: 70px; }
.container .two.columns { width: 160px; }
.container .three.columns { width: 250px; }
.container .four.columns { width: 340px; }
.container .five.columns { width: 430px; }
.container .six.columns { width: 520px; }
.container .seven.columns { width: 610px; }
.container .eight.columns { width: 700px; }
.container .nine.columns { width: 790px; }
.container .ten.columns { width: 880px; }
.container .eleven.columns { width: 970px; }
.container .twelve.columns { width: 1060px; }
.container .thirteen.columns { width: 1150px; }
.container .fourteen.columns { width: 1240px; }
.container .fifteen.columns { width: 1330px; }
.container .sixteen.columns { width: 1420px; }
.container .one-third.column { width: 460px; }
.container .two-thirds.column { width: 940px; }
/* Offsets */
.container .offset-by-one { padding-left: 90px; }
.container .offset-by-two { padding-left: 180px; }
.container .offset-by-three { padding-left: 270px; }
.container .offset-by-four { padding-left: 360px; }
.container .offset-by-five { padding-left: 450px; }
.container .offset-by-six { padding-left: 540px; }
.container .offset-by-seven { padding-left: 630px; }
.container .offset-by-eight { padding-left: 720px; }
.container .offset-by-nine { padding-left: 810px; }
.container .offset-by-ten { padding-left: 900px; }
.container .offset-by-eleven { padding-left: 990px; }
.container .offset-by-twelve { padding-left: 1080px; }
.container .offset-by-thirteen { padding-left: 1170px; }
.container .offset-by-fourteen { padding-left: 1260px; }
.container .offset-by-fifteen { padding-left: 1350px; }
}
/* #Base 1600 Grid
================================================== */
@media only screen and (min-width: 1600px) {
.container { width: 1600px; }
.container .one.column,
.container .one.columns { width: 80px; }
.container .two.columns { width: 180px; }
.container .three.columns { width: 280px; }
.container .four.columns { width: 380px; }
.container .five.columns { width: 480px; }
.container .six.columns { width: 580px; }
.container .seven.columns { width: 680px; }
.container .eight.columns { width: 780px; }
.container .nine.columns { width: 880px; }
.container .ten.columns { width: 980px; }
.container .eleven.columns { width: 1080px; }
.container .twelve.columns { width: 1180px; }
.container .thirteen.columns { width: 1280px; }
.container .fourteen.columns { width: 1380px; }
.container .fifteen.columns { width: 1480px; }
.container .sixteen.columns { width: 1580px; }
.container .one-third.column { width: 513px; }
.container .two-thirds.column { width: 1047px; }
/* Offsets */
.container .offset-by-one { padding-left: 100px; }
.container .offset-by-two { padding-left: 200px; }
.container .offset-by-three { padding-left: 300px; }
.container .offset-by-four { padding-left: 400px; }
.container .offset-by-five { padding-left: 500px; }
.container .offset-by-six { padding-left: 600px; }
.container .offset-by-seven { padding-left: 700px; }
.container .offset-by-eight { padding-left: 800px; }
.container .offset-by-nine { padding-left: 900px; }
.container .offset-by-ten { padding-left: 1000px; }
.container .offset-by-eleven { padding-left: 1100px; }
.container .offset-by-twelve { padding-left: 1200px; }
.container .offset-by-thirteen { padding-left: 1300px; }
.container .offset-by-fourteen { padding-left: 1400px; }
.container .offset-by-fifteen { padding-left: 1500px; }
}
/* GLOBALS */
/* Font: */
/* BASE */
body, input, select, textarea, button, p, legend, html.ui-mobile label, .ui-btn {
font-family: Helvetica, Arial, sans-serif;
color: #333;
font-size: 95%;
}
body .ui-controlgroup-label legend {
font-size: 82.5%;
}
@media (max-width: 40em) {
body, input, select, textarea, button, p, legend, html.ui-mobile label, .ui-btn, body .ui-controlgroup-label legend {
font-size: 92.5%;
}
}
/* Modified on BASE */
html .listview .ui-li-divider {
font-size: 80%;
}
/* Watermark NOTE: breaks links if ui-content is kept position:static
.ui-page-active:before,
.ui-page-active .ui-panel-wrapper:before {
background: url("../img/slapos.png") no-repeat center center;
background-attachment: fixed;
content: "";
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
width: 100%;
height: 100%;
opacity: .2;
filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
filter: gray;
-webkit-filter: grayscale(100%) brightness(10%) contrast(100%);
}
.ui-page.ui-page-active:before,
.ui-page.ui-page-active .ui-panel-wrapper:before{
pointer-events: none;
}
@media (max-width: 40em) {
.ui-page-theme-slapos-white:before,
.ui-page-theme-slapos-white .ui-panel-wrapper:before {
-webkit-background-size: 30%;
background-size: 30%;
}
}
@media (max-width: 30em) {
.ui-page-theme-slapos-white:before,
.ui-page-theme-slapos-white .ui-panel-wrapper:before {
-webkit-background-size: 35%;
background-size: 35%;
}
}
@media (max-width: 20em) {
.ui-page-theme-slapos-white:before,
.ui-page-theme-slapos-white .ui-panel-wrapper:before {
-webkit-background-size: 40%;
background-size: 40%;
}
}
*/
/* JQM custom themes */
/* slapos-white */
/*-----------------------------------------------------------------------------------------------------------*/
/* Bar: Toolbars, dividers, slider track */
.ui-bar-slapos-white,
.ui-page-theme-slapos-white .ui-bar-inherit,
html .ui-bar-slapos-white .ui-bar-inherit,
html .ui-body-slapos-white .ui-bar-inherit,
html body .ui-group-theme-slapos-white .ui-bar-inherit {
background: 0 none;
background-color: #fff;
color: rgb(129, 137, 138);
color: rgba(0, 0, 0, 0.25);
text-shadow: none;
border-color: #aaa;
font-weight: normal;
}
.ui-bar-slapos-white {
border-width: 1px;
border-style: solid;
}
/* tables & controlbar & tabs */
html .ui-page-theme-slapos-white .ui-table-wrapper.ui-table-wrapper-top .ui-btn,
html .ui-page-theme-slapos-white .ui-table-wrapper.ui-table-wrapper-top .ui-plain-text,
html .ui-page-theme-slapos-white .ui-table-wrapper.ui-table-wrapper-bottom .ui-btn,
html .ui-page-theme-slapos-white .ui-table-wrapper.ui-table-wrapper-bottom .ui-plain-text,
html .ui-page-theme-slapos-white .ui-controlbar .ui-btn,
html .ui-page-theme-slapos-white .ui-collapsible-set .ui-collapsible h1 a.ui-btn {
color: #aaa;
text-shadow: #FFFFFF 0px 1px 0px;
}
html .ui-page-theme-slapos-white .ui-table {
background-color: #fff;
border-color: #aaa;
}
html .ui-page-theme-slapos-white .ui-table-wrapper,
html .ui-page-theme-slapos-white .ui-table-wrapper .ui-btn,
html .ui-page-theme-slapos-white .ui-collapsible-set .ui-collapsible h1 a.ui-btn {
background-image: -webkit-gradient(linear, left top, left bottom, from( #fff ), to( #f1f1f1 ));
background-image: -webkit-linear-gradient( #fff , #f1f1f1 );
background-image: -moz-linear-gradient( #fff , #f1f1f1 );
background-image: -ms-linear-gradient( #fff , #f1f1f1 );
background-image: -o-linear-gradient( #fff , #f1f1f1 );
background-image: linear-gradient( #fff , #f1f1f1 );
border-color: #aaa;
}
/* Page: background */
.ui-page-theme-slapos-white,
.ui-page-theme-slapos-white .ui-panel-wrapper {
color: #333;
text-shadow: none;
background: #f9f9f9;
background-image: -webkit-gradient(linear, left top, left bottom, from( #f9f9f9), to( #eee ));
background-image: -webkit-linear-gradient( #f9f9f9, #eee );
background-image: -moz-linear-gradient( #f9f9f9, #eee );
background-image: -ms-linear-gradient( #f9f9f9, #eee );
background-image: -o-linear-gradient( #f9f9f9, #eee );
background-image: linear-gradient( #f9f9f9, #eee );
}
/* Body: Read-only lists, text inputs, collapsible content */
.ui-body-slapos-white,
.ui-page-theme-slapos-white .ui-body-inherit,
html .ui-bar-slapos-white .ui-body-inherit,
html .ui-body-slapos-white .ui-body-inherit,
html body .ui-group-theme-slapos-white .ui-body-inherit,
.ui-overlay-slapos-white {
background-image: none;
background: #fff;
border-color: #aaa;
color: #111;
text-shadow: none;
}
.ui-body-slapos-white {
border-width: 1px;
border-style: solid;
}
/* Links */
.ui-page-theme-slapos-white a,
html .ui-bar-slapos-white a,
html .ui-body-slapos-white a
/* visited */
.ui-page-theme-slapos-white a:visited,
html .ui-bar-slapos-white a:visited,
html .ui-body-slapos-white a:visited,
html body .ui-group-theme-slapos-white a:visited,
/* hover */
.ui-overlay-slapos-white a:hover,
.ui-page-theme-slapos-white a:hover,
html .ui-bar-slapos-white a:hover,
html .ui-body-slapos-white a:hover,
html body .ui-group-theme-slapos-white a:hover,
.ui-overlay-slapos-white .ui-btn:hover,
.ui-page-theme-slapos-white .ui-btn:hover,
html .ui-bar-slapos-white .ui-btn:hover,
html .ui-body-slapos-white .ui-btn:hover,
html body .ui-group-theme-slapos-white .ui-btn:hover,
/* texts */
html body .ui-group-theme-slapos-white p, /* overwritten by ui-btn */
html body .ui-group-theme-slapos-white h1,
html body .ui-group-theme-slapos-white h2,
html body .ui-group-theme-slapos-white h3,
html body .ui-group-theme-slapos-white h4,
html body .ui-group-theme-slapos-white h5,
html body .ui-group-theme-slapos-white h6 {
color: rgb(115, 115, 115);
color: rgba(0, 0, 0, 0.55);
}
.ui-page-theme-slapos-white .ui-btn:active,
html .ui-bar-slapos-white .ui-btn:active,
html .ui-body-slapos-white .ui-btn:active,
html body .ui-group-theme-slapos-white .ui-btn:active {
color: #fff;
}
/* Button up */
.ui-page-theme-slapos-white .ui-btn,
html .ui-bar-slapos-white .ui-btn,
html .ui-body-slapos-white .ui-btn,
html body .ui-btn.ui-btn-slapos-white,
html body .ui-group-theme-slapos-white .ui-btn,
[class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-white,
.ui-page-theme-slapos-white .ui-bar-plain,
/* Button visited */
.ui-page-theme-slapos-white .ui-btn:visited,
html .ui-bar-slapos-white .ui-btn:visited,
html .ui-body-slapos-white .ui-btn:visited,
html body .ui-btn.ui-btn-slapos-white:visited,
html body .ui-group-theme-slapos-white .ui-btn:visited,
[class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-white:visited,
/* table wrappers
html .ui-page-theme-slapos-white .ui-table-wrapper-top,
html .ui-page-theme-slapos-white .ui-table-wrapper-bottom,*/
html .ui-page-theme-slapos-white .ui-table-wrapper-top ~ table,
html .ui-page-theme-slapos-white .ui-table-wrapper-bottom ~ table,
html .ui-page-theme-slapos-white table tr td a:visited {
background: #fff;
color: rgb(115, 115, 115);
color: rgba(0, 0, 0, 0.55);
text-shadow: none;
border-color: #aaa;
}
html .ui-page-theme-slapos-white .ui-input-clear:active,
html .ui-page-theme-slapos-white .ui-input-clear.ui-btn-active,
html .ui-page-theme-slapos-white .ui-input-action:active,
html .ui-page-theme-slapos-white .ui-input-action.ui-btn-active {
background: #fff !important;
}
/* Header Buttons */
.ui-page-theme-slapos-white .ui-header .ui-btn,
html .ui-bar-slapos-white .ui-header .ui-btn,
html .ui-body-slapos-white .ui-header .ui-btn,
html body .ui-header .ui-btn.ui-btn-slapos-white,
html body .ui-header .ui-group-theme-slapos-white .ui-btn,
.ui-header [class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-white,
/* Button visited */
.ui-page-theme-slapos-white .ui-header .ui-btn:visited,
html .ui-bar-slapos-white .ui-header .ui-btn:visited,
html .ui-body-slapos-white .ui-header .ui-btn:visited,
html body .ui-header .ui-btn.ui-btn-slapos-white:visited,
html body .ui-header .ui-group-theme-slapos-white .ui-btn:visited,
.ui-header [class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-white:visited,
.ui-page-theme-slapos-white .ui-header a:visited,
html .ui-bar-slapos-white .ui-header a:visited,
html .ui-body-slapos-white .ui-header a:visited,
html body .ui-header a.ui-btn-slapos-white:visited,
html body .ui-header .ui-group-theme-slapos-white a:visited,
.ui-header [class*="ui-group-theme-"] a.ui-btn-slapos-white:visited {
background: none repeat scroll 0 center transparent;
border: 0 none;
-webkit-border-radius: 0 0 0 0 /* iOS3 */ !important;
border-radius: 0 0 0 0 /* iOS3 */ !important;
-webkit-box-shadow: none /* iOS3 */ !important;
box-shadow: none /* iOS3 */ !important;
color: rgb(129, 137, 138);
color: rgba(0, 0, 0, 0.25);
text-shadow: none;
font-weight: normal;
line-height: 325% /* could also be 3.25em, but this is more flexible, while being crap! */;
}
/* Button special handling: panel listitems */
.ui-page-theme-slapos-white .ui-panel-inner li .ui-btn,
html .ui-bar-slapos-white .ui-panel-inner li .ui-btn,
html .ui-body-slapos-white .ui-panel-inner li .ui-btn,
html body .ui-panel-inner li .ui-btn.ui-btn-slapos-white,
html body .ui-panel-inner li .ui-group-theme-slapos-white .ui-btn,
[class*="ui-group-theme-"] .ui-panel-inner li .ui-btn.ui-btn-slapos-white,
/* Button visited */
.ui-page-theme-slapos-white .ui-panel-inner li .ui-btn:visited,
html .ui-bar-slapos-white .ui-panel-inner li .ui-btn:visited,
html .ui-body-slapos-white .ui-panel-inner li .ui-btn:visited,
html body .ui-panel-inner li .ui-btn.ui-btn-slapos-white:visited,
html body .ui-panel-inner li .ui-group-theme-slapos-white .ui-btn:visited,
[class*="ui-group-theme-"] .ui-panel-inner li .ui-btn.ui-btn-slapos-white:visited {
background: none repeat scroll 0 0 transparent;
border-color: rgb(232, 232, 232);
border-color: rgba(255,255,255,.3);
}
/* dropshadow */
html body .ui-group-theme-slapos-white li {
border-top: 1px solid #111;
}
html body .ui-group-theme-slapos-white li.ui-last-child {
border-top: 1px solid #111;
border-bottom: 1px solid #111;
}
html body .ui-group-theme-slapos-black li.ui-last-child a.ui-btn {
border-bottom: none
}
/* Button background hover */
.ui-page-theme-slapos-white .ui-btn:hover,
html .ui-bar-slapos-white .ui-btn:hover,
html .ui-body-slapos-white .ui-btn:hover,
html body .ui-btn.ui-btn-slapos-white:hover,
html body .ui-group-theme-slapos-white .ui-btn:hover,
[class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-white:hover,
/* table wrapper buttons */
html .ui-page-theme-slapos-white .ui-table-wrapper .ui-btn:hover,
/* table rows */
html .ui-page-theme-slapos-white table tr th:hover ~ td,
/* controlbars */
html .ui-page-theme-slapos-white .ui-controlbar .ui-btn:hover,
/* tabs */
html .ui-page-theme-slapos-white .ui-collapsible-set .ui-collapsible h1 a.ui-btn:hover {
background-color: #e8e8e8;
background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fff), to(#e8e8e8));
background: -webkit-linear-gradient(bottom, #fff, #e8e8e8);
background: linear-gradient(bottom, #fff, #e8e8e8);
background: -moz-linear-gradient(bottom, #fff, #e8e8e8);
background: -o-linear-gradient(bottom, #fff, #e8e8e8);
background: -ms-linear-gradient(bottom, #fff, #e8e8e8);
}
/* slapos-black */
/*-----------------------------------------------------------------------------------------------------------*/
/* Bar: Toolbars, dividers, slider track */
.ui-bar-slapos-black,
.ui-page-theme-slapos-black .ui-bar-inherit,
html .ui-bar-slapos-black .ui-bar-inherit,
html .ui-body-slapos-black .ui-bar-inherit,
html body .ui-group-theme-slapos-black .ui-bar-inherit {
background: 0 none;
background: #222;
color: #fff;
text-shadow: 0 1px 0 #111111;
font-weight: normal;
}
.ui-bar-slapos-black {
border-width: 1px;
border-style: solid;
}
/* tables & controlbar & tabs */
html .ui-page-theme-slapos-black .ui-table-wrapper.ui-table-wrapper-top .ui-btn,
html .ui-page-theme-slapos-black .ui-table-wrapper.ui-table-wrapper-top .ui-plain-text,
html .ui-page-theme-slapos-black .ui-table-wrapper.ui-table-wrapper-bottom .ui-btn,
html .ui-page-theme-slapos-black .ui-table-wrapper.ui-table-wrapper-bottom .ui-plain-text,
html .ui-page-theme-slapos-black .ui-controlbar .ui-btn,
html .ui-page-theme-slapos-black .ui-collapsible-set .ui-collapsible h1 a.ui-btn {
color: #444;
text-shadow: 0 1px 0 #111111;
}
/* tables & controlbars */
.ui-page-theme-slapos-black .ui-table {
background-color: #222;
border-color: rgb(232, 232, 232);
border-color: rgba(255,255,255,.3);
}
html .ui-page-theme-slapos-black .ui-table-wrapper,
html .ui-page-theme-slapos-black .ui-table-wrapper .ui-btn,
html .ui-page-theme-slapos-black .ui-collapsible-set .ui-collapsible h1 a.ui-btn {
background-image: -webkit-gradient(linear, left top, left bottom, from( #444 ), to( #222 ));
background-image: -webkit-linear-gradient( #444 , #222 );
background-image: -moz-linear-gradient( #444 , #222 );
background-image: -ms-linear-gradient( #444 , #222 );
background-image: -o-linear-gradient( #444 , #222 );
background-image: linear-gradient( #444 , #222 );
border-color: #444;
}
/* Page background */
.ui-page-theme-slapos-black,
.ui-page-theme-slapos-black .ui-panel-wrapper {
color: #fff;
text-shadow: 0 1px 0 #111111;
background: #222;
border-color: #444;
background-image: -webkit-gradient(linear, left top, left bottom, from( #444 ), to( #222 ));
background-image: -webkit-linear-gradient( #444 , #222 );
background-image: -moz-linear-gradient( #444 , #222 );
background-image: -ms-linear-gradient( #444 , #222 );
background-image: -o-linear-gradient( #444 , #222 );
background-image: linear-gradient( #444 , #222 );
}
/* Body: Read-only lists, text inputs, collapsible content */
.ui-body-slapos-black,
.ui-page-theme-slapos-black .ui-body-inherit,
html .ui-bar-slapos-black .ui-body-inherit,
html .ui-body-slapos-black .ui-body-inherit,
html body .ui-group-theme-slapos-black .ui-body-inherit,
.ui-overlay-slapos-black,
html .ui-page-theme-slapos-black .ui-table-wrapper {
color: #fff;
text-shadow: 0 1px 0 #111111;
background: #222;
border-color: #444;
background-image: -webkit-gradient(linear, left top, left bottom, from( #444 ), to( #222 ));
background-image: -webkit-linear-gradient( #444 , #222 );
background-image: -moz-linear-gradient( #444 , #222 );
background-image: -ms-linear-gradient( #444 , #222 );
background-image: -o-linear-gradient( #444 , #222 );
background-image: linear-gradient( #444 , #222 );
}
.ui-body-slapos-black {
border-width: 1px;
border-style: solid;
}
/* Input filterable */
html .ui-body-slapos-black .ui-body-inherit.ui-input-search {
background-image: none;
}
/* Links */
.ui-page-theme-slapos-black a,
html .ui-bar-slapos-black a,
html .ui-body-slapos-black a,
html body .ui-group-theme-slapos-black a,
/* visited */
.ui-page-theme-slapos-black a:visited,
html .ui-bar-slapos-black a:visited,
html .ui-body-slapos-black a:visited,
html body .ui-group-theme-slapos-black a:visited,
/* hover */
.ui-overlay-slapos-black a:hover,
.ui-page-theme-slapos-black a:hover,
html .ui-bar-slapos-black a:hover,
html .ui-body-slapos-black a:hover,
html body .ui-group-theme-slapos-white a:hover,
.ui-overlay-slapos-black .ui-btn:hover,
.ui-page-theme-slapos-black .ui-btn:hover,
html .ui-page-theme-slapos-black .ui-btn:hover,
html .ui-page-theme-slapos-black .ui-btn:hover,
html body .ui-group-theme-slapos-black .ui-btn:hover,
/* active */
.ui-page-theme-slapos-black .ui-btn:active,
html .ui-bar-slapos-black .ui-btn:active,
html .ui-body-slapos-black .ui-btn:active,
html body .ui-group-theme-slapos-black .ui-btn:active,
/* Texts */
html body .ui-group-theme-slapos-black p,
html body .ui-group-theme-slapos-black h1,
html body .ui-group-theme-slapos-black h2,
html body .ui-group-theme-slapos-black h3,
html body .ui-group-theme-slapos-black h4,
html body .ui-group-theme-slapos-black h5,
html body .ui-group-theme-slapos-black h6 {
color: #fff;
}
/* Button up */
.ui-page-theme-slapos-black .ui-btn,
html .ui-bar-slapos-black .ui-btn,
html .ui-body-slapos-black .ui-btn,
html body .ui-btn.ui-btn-slapos-black,
html body .ui-group-theme-slapos-black .ui-btn,
[class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-black,
.ui-page-theme-slapos-black .ui-bar-plain,
/* Button visited */
.ui-page-theme-slapos-black .ui-btn:visited,
html .ui-bar-slapos-black .ui-btn:visited,
html .ui-body-slapos-black .ui-btn:visited,
html body .ui-btn.ui-btn-slapos-black:visited,
html body .ui-group-theme-slapos-black .ui-btn:visited,
[class*="ui-group-theme-"] a.ui-btn-slapos-black:visited,
.ui-page-theme-slapos-black a:visited,
html .ui-bar-slapos-black a:visited,
html .ui-body-slapos-black a:visited,
html body a.ui-btn-slapos-black:visited,
html body .ui-group-theme-slapos-black a:visited,
[class*="ui-group-theme-"] a.ui-btn-slapos-black:visited,
html .ui-page-theme-slapos-black table tr td a:visited,
/* table wrappers
html .ui-page-theme-slapos-black .ui-table-wrapper-top,
html .ui-page-theme-slapos-black .ui-table-wrapper-bottom, */
html .ui-page-theme-slapos-black .ui-table-wrapper-top ~ table,
html .ui-page-theme-slapos-black .ui-table-wrapper-bottom ~ table {
background: #222;
background-image: -webkit-gradient(linear, left top, left bottom, from( #444 ), to( #222 ));
background-image: -webkit-linear-gradient( #444 , #222 );
background-image: -moz-linear-gradient( #444 , #222 );
background-image: -ms-linear-gradient( #444 , #222 );
background-image: -o-linear-gradient( #444 , #222 );
background-image: linear-gradient( #444 , #222 );
border-color: #444;
color: #fff;
text-shadow: 0px 1px 0px #111;
}
html .ui-page-theme-slapos-black .ui-input-clear:active,
html .ui-page-theme-slapos-black .ui-input-clear.ui-btn-active,
html .ui-page-theme-slapos-black .ui-input-action:active,
html .ui-page-theme-slapos-black .ui-input-action.ui-btn-active {
background: #222 !important;
}
/* Header Buttons */
.ui-page-theme-slapos-black .ui-header .ui-btn,
html .ui-bar-slapos-black .ui-header .ui-btn,
html .ui-body-slapos-black .ui-header .ui-btn,
html body .ui-header .ui-btn.ui-btn-slapos-black,
html body .ui-header .ui-group-theme-slapos-black .ui-btn,
.ui-header [class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-black,
/* Button visited */
.ui-page-theme-slapos-black .ui-header .ui-btn:visited,
html .ui-bar-slapos-black .ui-header .ui-btn:visited,
html .ui-body-slapos-black .ui-header .ui-btn:visited,
html body .ui-header .ui-btn.ui-btn-slapos-black:visited,
html body .ui-header .ui-group-theme-slapos-black .ui-btn:visited,
.ui-header [class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-black:visited,
/* ADD also not on :hover */
.ui-page-theme-slapos-black .ui-header .ui-btn:hover,
html .ui-bar-slapos-black .ui-header .ui-btn:hover,
html .ui-body-slapos-black .ui-header .ui-btn:hover,
html body .ui-header .ui-btn.ui-btn-slapos-black:hover,
html body .ui-header .ui-group-theme-slapos-black .ui-btn:hover,
.ui-header [class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-black:hover {
background: none repeat scroll 0 center transparent;
-webkit-border-radius: 0 0 0 0 /* iOS3 */ !important;
border-radius: 0 0 0 0 /* iOS3 */ !important;
-webkit-box-shadow: none /* iOS3 */ !important;
box-shadow: none /* iOS3 */ !important;
color: #fff;
text-shadow: none;
font-weight: normal;
line-height: 325% /* could also be 3.25em, but this is more flexible, while being crap! */;
}
/* Button special handling: listitem */
.ui-page-theme-slapos-black .ui-panel-inner li .ui-btn,
html .ui-bar-slapos-black .ui-panel-inner li .ui-btn,
html .ui-body-slapos-black .ui-panel-inner li .ui-btn,
html body .ui-panel-inner li .ui-btn.ui-btn-slapos-black,
html body .ui-panel-inner li .ui-group-theme-slapos-black .ui-btn,
[class*="ui-group-theme-"] .ui-panel-inner li .ui-btn.ui-btn-slapos-black,
/* Button visited */
.ui-page-theme-slapos-black .ui-panel-inner li .ui-btn:visited,
html .ui-bar-slapos-black .ui-panel-inner li .ui-btn:visited,
html .ui-body-slapos-black .ui-panel-inner li .ui-btn:visited,
html body .ui-panel-inner li .ui-btn.ui-btn-slapos-black:visited,
html body .ui-panel-inner li .ui-group-theme-slapos-black .ui-btn:visited,
[class*="ui-group-theme-"] .ui-panel-inner li .ui-btn.ui-btn-slapos-black:visited {
background: none repeat scroll 0 0 transparent;
border-color: rgb(232, 232, 232);
border-color: rgba(255,255,255,.3);
}
/* dropshadow */
html body .ui-group-theme-slapos-black li {
border-top: 1px solid #111;
}
html body .ui-group-theme-slapos-black li.ui-last-child {
border-bottom: 1px solid #111;
}
html body .ui-group-theme-slapos-black li.ui-last-child a.ui-btn {
border-bottom: none
}
/* Button hover */
.ui-page-theme-slapos-black .ui-btn:hover,
html .ui-bar-slapos-black .ui-btn:hover,
html .ui-body-slapos-black .ui-btn:hover,
html body .ui-btn.ui-btn-slapos-black:hover,
html body .ui-group-theme-slapos-black .ui-btn:hover,
[class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-black:hover,
/* table wrapper buttons */
html .ui-page-theme-slapos-black .ui-table-wrapper .ui-btn:hover,
/* table rows */
html .ui-page-theme-slapos-black table tr th:hover ~ td,
/* controlbars */
html .ui-page-theme-slapos-black .ui-controlbar .ui-btn:hover,
/* tabs */
html .ui-page-theme-slapos-black .ui-collapsible-set .ui-collapsible h1 a.ui-btn:hover {
background: #222;
background-image: -webkit-gradient(linear, left top, left bottom, from( #444 ), to( #222 ));
background-image: -webkit-linear-gradient( #444 , #222 );
background-image: -moz-linear-gradient( #444 , #222 );
background-image: -ms-linear-gradient( #444 , #222 );
background-image: -o-linear-gradient( #444 , #222 );
background-image: linear-gradient( #444 , #222 );
border-color: rgb(232, 232, 232);
border-color: rgba(255,255,255,.3);
/* border-color: #444 */
color: #fff;
text-shadow: 0px 1px 0px #111;
}
/* swatch "active" - need this for every swatch!!! */
/*-----------------------------------------------------------------------------------------------------------*/
/* Count bubble */
/* white */
.ui-page-theme-slapos-white .ui-li-count,
html .ui-bar-slapos-white .ui-li-count,
html .ui-body-slapos-white .ui-li-count,
html body .ui-group-theme-slapos-white .ui-li-count,
.ui-btn.ui-btn-slapos-white > .ui-li-count,
.ui-li-static.ui-body-slapos-white > .ui-li-count,
.ui-li-divider.ui-bar-slapos-white > .ui-li-count,
.ui-listview li .ui-li-count.ui-body-slapos-white,
/* black */
.ui-page-theme-slapos-black .ui-li-count,
html .ui-bar-slapos-black .ui-li-count,
html .ui-body-slapos-black .ui-li-count,
html body .ui-group-theme-slapos-black .ui-li-count,
.ui-btn.ui-btn-slapos-black > .ui-li-count,
.ui-li-static.ui-body-slapos-black > .ui-li-count,
.ui-li-divider.ui-bar-slapos-black > .ui-li-count,
.ui-listview li .ui-li-count.ui-body-slapos-black {
color: #ffffff;
font-size: .8em;
text-shadow: none;
font-weight: bold;
font-family: arial;
-webkit-box-shadow: 0 1px 2px #999;
box-shadow: 0 1px 2px #999;
padding: 0 6px 1px;
border: 0.15em solid #ffffff;
border-radius: 14px;
-moz-border-radius: 14px;
-webkit-border-radius: 14px;
display: inline-block;
background-position: 0 0 !important;
position: absolute;
right: 0;
line-height: 1.75em;
top: -14px;
background-color: #0FBABD;
background-image: -webkit-gradient(linear,left top,left bottom, color-stop(0,#0FBABD),color-stop(1,#94f2f1));
background-image: -webkit-linear-gradient(top, #0FBABD, #94f2f1);
background-image: linear-gradient(top, #0FBABD, #94f2f1);
background-image: -moz-linear-gradient(top, #0FBABD, #94f2f1);
background-image: -o-linear-gradient(top, #0FBABD, #94f2f1);
background-image: -ms-linear-gradient(top, #0FBABD, #94f2f1);
filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#0FBABD', EndColorStr='#94f2f1');
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#0FBABD', EndColorStr='#94f2f1')";
}
/* Button down */
html .ui-page-theme-slapos-white .ui-bar-active, /* if we do more like this, we need to have a proper theme */
.ui-page-theme-slapos-white .ui-btn:active,
html .ui-bar-slapos-white .ui-btn:active,
html .ui-body-slapos-white .ui-btn:active,
html body .ui-btn.ui-btn-slapos-white:active,
html body .ui-group-theme-slapos-white .ui-btn:active,
[class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-white:active,
/* Active button */
.ui-page-theme-slapos-white .ui-btn.ui-btn-active,
html .ui-bar-slapos-white .ui-btn.ui-btn-active,
html .ui-body-slapos-white .ui-btn.ui-btn-active,
html body .ui-btn.ui-btn-slapos-white.ui-btn-active,
html body .ui-group-theme-slapos-white .ui-btn.ui-btn-active,
[class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-white.ui-btn-active,
/* radio button */
.ui-page-theme-slapos-white .ui-btn.ui-icon-radio-on,
html .ui-bar-slapos-white .ui-btn.ui-icon-radio-on,
html .ui-body-slapos-white .ui-btn.ui-icon-radio-on,
html body .ui-group-theme-slapos-white .ui-btn.ui-icon-radio-on,
.ui-btn.ui-icon-radio-on.ui-btn-slapos-white,
/* Active flipswitch background */
.ui-page-theme-slapos-white .ui-flipswitch-active,
html .ui-bar-slapos-white .ui-flipswitch-active,
html .ui-body-slapos-white .ui-flipswitch-active,
html body .ui-group-theme-slapos-white .ui-flipswitch-active,
html body .ui-flipswitch.ui-bar-slapos-white.ui-flipswitch-active,
/* Active slider track */
.ui-page-theme-slapos-white .ui-slider-track .ui-btn-active,
html .ui-bar-slapos-white .ui-slider-track .ui-btn-active,
html .ui-body-slapos-white .ui-slider-track .ui-btn-active,
html body .ui-group-theme-slapos-white .ui-slider-track .ui-btn-active,
html body div.ui-slider-track.ui-body-slapos-white .ui-btn-active,
/* Table buttons */
html .ui-page-theme-slapos-white .ui-table-wrapper .ui-btn:active,
html .ui-page-theme-slapos-white .ui-table-wrapper .ui.btn.ui-btn-active,
/* Controlbar */
html .ui-page-theme-slapos-white .ui-controlbar .ui-btn:active,
html .ui-page-theme-slapos-white .ui-controlbar .ui-btn.ui-btn-active,
/* Tab Buttons */
html .ui-page-theme-slapos-white .ui-collapsible-set .ui-collapsible h1 a.ui-btn:active,
html .ui-page-theme-slapos-white .ui-collapsible-set .ui-collapsible h1 a.ui-btn.ui-btn-active,
/* black */
html .ui-page-theme-slapos-black .ui-bar-active,
.ui-page-theme-slapos-black .ui-btn:active,
html .ui-bar-slapos-black .ui-btn:active,
html .ui-body-slapos-black .ui-btn:active,
html body .ui-btn.ui-btn-slapos-black:active,
html body .ui-group-theme-slapos-black .ui-btn:active,
[class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-black:active,
/* Active button */
.ui-page-theme-slapos-black .ui-btn.ui-btn-active,
html .ui-bar-slapos-black .ui-btn.ui-btn-active,
html .ui-body-slapos-black .ui-btn.ui-btn-active,
html body .ui-btn.ui-btn-slapos-black.ui-btn-active,
html body .ui-group-theme-slapos-black .ui-btn.ui-btn-active,
[class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-black.ui-btn-active,
/* radio on */
.ui-page-theme-slapos-black .ui-btn.ui-icon-radio-on,
html .ui-bar-slapos-black .ui-btn.ui-icon-radio-on,
html .ui-body-slapos-black .ui-btn.ui-icon-radio-on,
html body .ui-group-theme-slapos-black .ui-btn.ui-icon-radio-on,
.ui-btn.ui-icon-radio-on.ui-btn-slapos-black ,
/* Active flipswitch background */
.ui-page-theme-slapos-black .ui-flipswitch-active,
html .ui-bar-slapos-black .ui-flipswitch-active,
html .ui-body-slapos-black .ui-flipswitch-active,
html body .ui-group-theme-slapos-black .ui-flipswitch-active,
html body .ui-flipswitch.ui-bar-slapos-black.ui-flipswitch-active,
/* Active slider track */
.ui-page-theme-slapos-black .ui-slider-track .ui-btn-active,
html .ui-bar-slapos-black .ui-slider-track .ui-btn-active,
html .ui-body-slapos-black .ui-slider-track .ui-btn-active,
html body .ui-group-theme-slapos-black .ui-slider-track .ui-btn-active,
html body div.ui-slider-track.ui-body-slapos-black .ui-btn-active,
/* Table buttons */
html .ui-page-theme-slapos-black .ui-table-wrapper .ui-btn:active,
html .ui-page-theme-slapos-black .ui-table-wrapper .ui.btn.ui-btn-active,
/* Controlbar */
html .ui-page-theme-slapos-black .ui-controlbar .ui-btn:active,
html .ui-page-theme-slapos-black .ui-controlbar .ui-btn.ui-btn-active,
/* Tab Buttons */
html .ui-page-theme-slapos-black .ui-collapsible-set .ui-collapsible h1 a.ui-btn:active,
html .ui-page-theme-slapos-black .ui-collapsible-set .ui-collapsible h1 a.ui-btn.ui-btn-active {
background-color: #94f2f1;
background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#0fbabd), to(#94f2f1));
background: -webkit-linear-gradient(bottom, #0fbabd, #94f2f1);
background: linear-gradient(bottom, #0fbabd, #94f2f1);
background: -moz-linear-gradient(bottom, #0fbabd, #94f2f1);
background: -o-linear-gradient(bottom, #0fbabd, #94f2f1);
background: -ms-linear-gradient(bottom, #0fbabd, #94f2f1);
color: #fff !important;
text-shadow: none;
cursor: pointer;
}
/* Active radio button */
/* white */
.ui-page-theme-slapos-white .ui-btn.ui-icon-radio-on:after,
html .ui-bar-slapos-white .ui-btn.ui-icon-radio-on:after,
html .ui-body-slapos-white .ui-btn.ui-icon-radio-on:after,
html body .ui-group-theme-slapos-white .ui-btn.ui-icon-radio-on:after,
.ui-btn.ui-icon-radio-on.ui-btn-slapos-white:after,
/* black */
.ui-page-theme-slapos-black .ui-btn.ui-icon-radio-on:after,
html .ui-bar-slapos-black .ui-btn.ui-icon-radio-on:after,
html .ui-body-slapos-black .ui-btn.ui-icon-radio-on:after,
html body .ui-group-theme-slapos-black .ui-btn.ui-icon-radio-on:after,
.ui-btn.ui-icon-radio-on.ui-btn-slapos-black:after {
border-color: #fff;
}
/* Focus */
/* white */
.ui-page-theme-slapos-white .ui-btn:focus,
html .ui-bar-slapos-white .ui-btn:focus,
html .ui-body-slapos-white .ui-btn:focus,
html body .ui-btn.ui-btn-slapos-white:focus,
html body .ui-group-theme-slapos-white .ui-btn:focus,
[class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-white:focus,
/* Focus buttons and text inputs with div wrap */
.ui-page-theme-slapos-white .ui-focus,
html .ui-bar-slapos-white .ui-focus,
html .ui-body-slapos-white .ui-focus,
html body .ui-btn-slapos-white.ui-focus,
html body .ui-body-slapos-white.ui-focus,
html body .ui-group-theme-slapos-white .ui-focus,
[class*="ui-group-theme-"] .ui-btn-slapos-white.ui-focus,
[class*="ui-group-theme-"] .ui-body-slapos-white.ui-focus,
/* black */
.ui-page-theme-slapos-black .ui-btn:focus,
html .ui-bar-slapos-black .ui-btn:focus,
html .ui-body-slapos-black .ui-btn:focus,
html body .ui-btn.ui-btn-slapos-black:focus,
html body .ui-group-theme-slapos-black .ui-btn:focus,
[class*="ui-group-theme-"] .ui-btn.ui-btn-slapos-black:focus,
/* Focus buttons and text inputs with div wrap */
.ui-page-theme-slapos-black .ui-focus,
html .ui-bar-slapos-black .ui-focus,
html .ui-body-slapos-black .ui-focus,
html body .ui-btn-slapos-black.ui-focus,
html body .ui-body-slapos-black.ui-focus,
html body .ui-group-theme-slapos-black .ui-focus,
[class*="ui-group-theme-"] .ui-btn-slapos-black.ui-focus,
[class*="ui-group-theme-"] .ui-body-slapos-black.ui-focus {
-webkit-box-shadow: 0 0 12px #0066ff;
-moz-box-shadow: 0 0 12px #0066ff;
box-shadow: 0 0 12px #0066ff;
}
/* ================================ overwriting widgets ==================================== */
/* toolbar */
/* unset theme overwriting structure */
.ui-header, .ui-footer {
border-width: 1px 0;
}
.ui-header .wrap {
position: absolute;
/* top: 0; JQM: setting this will throw off header by 1px when ui-header-fixed is removed */
bottom: 0;
}
.ui-header .wrap.left {
left: 0;
}
.ui-header .wrap.right {
right: 0;
}
/* double borders */
.ui-header .wrap.left .ui-btn {
border-right: 1px solid rgb(232, 232, 232);
border-right: 1px solid rgba(232, 232, 232, 0.1);
}
.ui-header .wrap.right .ui-btn {
border-left: 1px solid rgb(47, 79, 79);
border-left: 1px solid rgba(0, 0, 0, 0.25);
}
.ui-header .wrap .ui-btn:before {
content: "";
height: 100%;
position: absolute;
width: 0;
bottom: 0;
top: 0;
}
.ui-header .wrap.left .ui-btn:before {
right: -1px;
border-right: 1px solid rgb(47, 79, 79);
border-right: 1px solid rgba(0, 0, 0, 0.25);
}
.ui-header .wrap.right .ui-btn:before {
left: -1px;
border-left: 1px solid rgb(232, 232, 232);
border-left: 1px solid rgba(232, 232, 232, 0.1);
}
/* controlgroup */
/* > overwrite in header */
.ui-page-theme-slapos-white .ui-header .ui-controlgroup,
.ui-page-theme-slapos-white .ui-header .ui-controlgroup fieldset.ui-controlgroup {
padding: 0;
margin: 0;
height: 100%;
}
.ui-page-theme-slapos-white .ui-header .ui-controlgroup-controls {
height: 100%;
}
/* button */
.ui-page-theme-slapos-white .ui-header a.ui-btn ,
html .ui-bar-slapos-white.ui-header a.ui-btn ,
html .ui-body-slapos-white .ui-header a.ui-btn ,
html body .ui-group-theme-slapos-white .ui-header a.ui-btn {
height: 100%;
margin: 0;
position: relative; /* otherwise multiple buttons break */
padding-top: 0;
padding-bottom: 0;
}
html .ui-btn, label.ui-btn {
font-weight: normal;
}
/* hide button text on small screens */
@media (max-width: 40em) {
.responsive.ui-btn,
.responsive .ui-btn {
text-indent: -9999px;
white-space: nowrap !important;
}
.responsive.ui-btn:after,
.responsive .ui-btn:after {
text-indent: 0px;
left: auto;
}
}
/* no bold buttons */
html .ui-btn, label.ui-btn {
font-weight: normal;
}
/* fix svg icon positioning */
.ui-btn-icon-notext:after,
.ui-btn-icon-left:after,
.ui-btn-icon-right:after,
.ui-listview > li > .ui-btn[class*="ui-icon-"]:after {
margin-top: -15px;
}
/* reset fix */
.ui-nosvg .ui-btn-icon-notext:after,
.ui-nosvg .ui-btn-icon-left:after,
.ui-nosvg .ui-btn-icon-right:after,
.ui-nosvg .ui-listview > li > .ui-btn[class*="ui-icon-"]:after {
margin-top: -11px;
}
/* fix text-indent when trying to use custom icons on iconpos-notext buttons */
.ui-btn-icon-notext {
text-indent: -9999px;
}
.ui-btn-icon-notext:after {
text-indent: 0px;
}
/* fix font-size on notext buttons, so icons don't zoom, JQMs-px font-size */
.ui-header .ui-btn-icon-notext,
.ui-footer .ui-btn-icon-notext {
font-size: 12.5px;
}
/* popup */
.ui-popup {
max-width: 20em; /* so... all popups should get this??? */
/* width: 25%; does not work, because max-width will still be screen-padding */
min-width: 20em;
margin: 0 auto;
}
@media (max-width: 40em) {
.ui-popup {
min-width: auto;
margin: 0;
width: auto;
}
}
.ui-popup fieldset {
display: block; /* fix offset caused when using display: table-column */
}
/* panel */
.ui-panel {
border-width: 0px; /* overwrite border-width reset by panel-swatch ui-overlay... */
}
/* panel closer */
html .ui-panel-inner .ui-btn.panel-close {
background-color: transparent;
background-image: none;
margin: 12px 0.3125em 0; /* no friend ... */
}
html .ui-panel-inner .ui-btn.panel-close:hover {
border-color: transparent;
}
html .ui-panel-inner .ui-btn.panel-close:after {
font-size: 1.25em;
margin-top: -12px; /* no friend ... */
}
html .ui-panel-inner .ui-btn.panel-close {
position: absolute !important;
top: 0;
left: -9999px;
clip: rect(1px 1px 1px 1px);
}
@media (max-width: 30em) {
html .ui-panel-inner .ui-btn.panel-close {
right: .5em;
left: auto;
clip: auto !important;
}
}
/* panel search input overriding width */
html .ui-panel-inner .ui-input-search {
margin: 2% 1%;
}
@media (max-width: 30em) {
html .ui-panel-inner .ui-input-search {
width: 77%;
}
}
@media (max-width: 25em) {
html .ui-panel-inner .ui-input-search {
width: 77%;
}
}
@media (max-width: 20em) {
html .ui-panel-inner .ui-input-search {
width: 77%;
}
}
/* filterable */
html .ui-filterable {
width: 75%;
margin: 0 auto;
}
@media (max-width: 40em) {
html .ui-filterable {
width: 100%;
margin: 0.5em 0;
}
}
/* extend panel to fullwidth on small screens */
@media (max-width: 30em) {
/* override JQM 17em */
.ui-panel {
width: 100%;
}
/* positioning: panel */
/* panel left */
.ui-panel-position-left {
left: -100%;
}
/* animated: panel left (for overlay and push) */
.ui-panel-animate.ui-panel-position-left.ui-panel-display-overlay,
.ui-panel-animate.ui-panel-position-left.ui-panel-display-push {
left: 0;
-webkit-transform: translate3d(-100%,0,0);
-moz-transform: translate3d(-100%,0,0);
transform: translate3d(-100%,0,0);
}
/* panel left open */
.ui-panel-position-left.ui-panel-display-reveal, /* negate "panel left" for reveal */
.ui-panel-position-left.ui-panel-open {
left: 0;
}
/* animated: panel left open (for overlay and push) */
.ui-panel-animate.ui-panel-position-left.ui-panel-open.ui-panel-display-overlay,
.ui-panel-animate.ui-panel-position-left.ui-panel-open.ui-panel-display-push {
-webkit-transform: translate3d(0,0,0);
transform: translate3d(0,0,0);
-moz-transform: none;
}
/* panel right */
.ui-panel-position-right {
right: -100%;
}
/* animated: panel right (for overlay and push) */
.ui-panel-animate.ui-panel-position-right.ui-panel-display-overlay,
.ui-panel-animate.ui-panel-position-right.ui-panel-display-push {
right: 0;
-webkit-transform: translate3d(100%,0,0);
-moz-transform: translate3d(100%,0,0);
transform: translate3d(100%,0,0);
}
/* panel right open */
.ui-panel-position-right.ui-panel-display-reveal, /* negate "panel right" for reveal */
.ui-panel-position-right.ui-panel-open {
right: 0;
}
/* animated: panel right open (for overlay and push) */
.ui-panel-animate.ui-panel-position-right.ui-panel-open.ui-panel-display-overlay,
.ui-panel-animate.ui-panel-position-right.ui-panel-open.ui-panel-display-push {
-webkit-transform: translate3d(0,0,0);
transform: translate3d(0,0,0);
-moz-transform: none;
}
/* positioning: pages, fixed toolbars and dismiss */
/* panel left open */
.ui-panel-page-content-position-left.ui-panel-page-content-open,
.ui-panel-dismiss-position-left.ui-panel-dismiss-open {
left: 100%;
right: -100%;
}
/* animated: panel left open (for reveal and push) */
.ui-panel-animate.ui-panel-page-content-position-left.ui-panel-page-content-open.ui-panel-page-content-display-reveal,
.ui-panel-animate.ui-panel-page-content-position-left.ui-panel-page-content-open.ui-panel-page-content-display-push {
left: 0;
right: 0;
-webkit-transform: translate3d(100%,0,0);
-moz-transform: translate3d(100%,0,0);
transform: translate3d(100%,0,0);
}
/* panel right open */
.ui-panel-page-content-position-right.ui-panel-page-content-open,
.ui-panel-dismiss-position-right.ui-panel-dismiss-open {
left: -100%;
right: 100%;
}
/* animated: panel right open (for reveal and push) */
.ui-panel-animate.ui-panel-page-content-position-right.ui-panel-page-content-open.ui-panel-page-content-display-reveal,
.ui-panel-animate.ui-panel-page-content-position-right.ui-panel-page-content-open.ui-panel-page-content-display-push {
left: 0;
right: 0;
-webkit-transform: translate3d(-100%,0,0);
-moz-transform: translate3d(-100%,0,0);
transform: translate3d(-100%,0,0);
}
/* negate "panel left/right open" for overlay */
.ui-panel-page-content-open.ui-panel-page-content-display-overlay {
left: 0;
}
}
/* allow interaction with page on large displays */
@media (min-width: 30em) {
/* wrap on wide viewports once open */
.ui-page-panel-open .ui-panel-content-fixed-toolbar-display-push.ui-panel-content-fixed-toolbar-position-left,
.ui-page-panel-open .ui-panel-content-fixed-toolbar-display-reveal.ui-panel-content-fixed-toolbar-position-left,
.ui-page-panel-open .ui-panel-content-wrap-display-push.ui-panel-content-wrap-position-left,
.ui-page-panel-open .ui-panel-content-wrap-display-reveal.ui-panel-content-wrap-position-left {
margin-right: 17em;
}
.ui-page-panel-open .ui-panel-content-fixed-toolbar-display-push.ui-panel-content-fixed-toolbar-position-right,
.ui-page-panel-open .ui-panel-content-fixed-toolbar-display-reveal.ui-panel-content-fixed-toolbar-position-right,
.ui-page-panel-open .ui-panel-content-wrap-display-push.ui-panel-content-wrap-position-right,
.ui-page-panel-open .ui-panel-content-wrap-display-reveal.ui-panel-content-wrap-position-right {
margin-left: 17em;
}
.ui-page-panel-open .ui-panel-content-fixed-toolbar-display-push,
.ui-page-panel-open .ui-panel-content-fixed-toolbar-display-reveal {
width: auto;
}
/* disable "dismiss" on wide viewports */
.ui-panel-dismiss {
display: none;
}
/* same as the above but for panels with display mode "push" only */
.ui-panel-dismiss-display-push {
display: none;
}
}
/* action/input buttons */
.bare_button,
.bare_button .ui-btn-inner,
.bare_button .ui-icon {
background: 0 none;
border: 0 none;
box-shadow: none !important;
-webkit-box-shadow: none !important;
}
.bare_button .ui-icon {
bottom: 0;
line-height: 1em;
margin: 0;
text-align: center;
top: 31%;
font-size: 1.25em;
border-radius: 0px !important;
-webkit-border-radius: 0px !important;
}
/* listview/list */
/* plain list */
.list {
list-style: none;
text-align: center;
padding: 0;
margin: 0.5em 0;
}
.list li a {
text-decoration: none;
}
/* listview */
/* should support!
<li>
<a> || no link
<span.icon> || <span.iconstack><i><i><i> || no icon
<img> || no image
<h3> required
<p> || no subtext
<span.bubble> || no bubble
</a>
<a> || no side link
</li>
*/
html .ui-panel-inner .listview .ui-li-divider {
font-weight: bold;
padding: 0.5em 1em;
border: 0 none;
}
html .ui-panel-inner .listview .listview_item a {
padding: 0.4em 2.75em !important;
}
.ui-panel-inner .ui-listview > li h1,
.ui-panel-inner .ui-listview > li h2,
.ui-panel-inner .ui-listview > li h3,
.ui-panel-inner .ui-listview > li h4,
.ui-panel-inner .ui-listview > li h5,
.ui-panel-inner .ui-listview > li h6 {
font-size: .9em;
margin: 0;
}
.ui-panel-inner .ui-listview > li p {
font-size: .7em;
margin: 0;
}
.ui-panel-inner .ui-listview .ui-li-has-thumb > img:first-child,
.ui-panel-inner .ui-listview .ui-li-has-thumb > .ui-btn > img:first-child {
max-height: 2.5em;
max-width: 2.5em;
overflow: hidden;
padding: 0.2em 0;
}
/* overwrite icon positioning for fontawesome */
.ui-panel-inner .ui-btn-icon-right:after,
.ui-panel-inner .ui-listview > li > .ui-btn[class*="ui-icon-"]:after {
right: 0;
}
.ui-btn-icon-right:after,
.ui-listview > li > .ui-btn[class*="ui-icon-"]:after {
right: 0.3625em;
}
/* reset */
html.ui-nosvg .ui-btn-icon-right:after,
html.ui-nosvg .ui-panel-inner .ui-listview > li > .ui-btn[class*="ui-icon-"]:after {
right: 0.5625em;
}
.ui-btn.ui-btn-icon-left:after {
left: 0.3625em;
}
html.ui-nosvg .ui-btn-icon-left:after {
left: 0.5625em;
}
/* custom icons */
.ui-listview li span.ui-li-icon-custom {
bottom: 0;
top: 0;
box-shadow: none !important;
font-size: 1.25em;
height: 100%;
left: 0.25em;
line-height: 1em;
margin: 0;
max-height: 80px;
max-width: 80px;
position: absolute;
text-align: center;
width: 22px;
top: 19%; /* no friend... */
}
.ui-listview li span.ui-li-icon-custom:after {
background: none repeat scroll 0 center transparent;
}
/* checkboxradio */
/* overwrite icon background for fontawesome */
.ui-radio .ui-btn.ui-icon-radio-on:after {
background: 0 none;
border-width: 0;
}
/* reset */
.ui-nosvg .ui-radio .ui-btn-ui-icon-radio-on:after {
background-color: #FFFFFF;
background-image: none;
border-width: 5px;
}
/* position icons */
.ui-radio .ui-btn.ui-icon-radio-on:after,
.ui-radio .ui-btn.ui-icon-radio-off:after,
.ui-checkbox .ui-btn.ui-icon-checkbox-on:after,
.ui-checkbox .ui-btn.ui-icon-checkbox-off:after {
margin: -14px 2px 0;
}
/* icon size */
.ui-checkbox .ui-btn.ui-icon-checkbox-on:after,
.ui-checkbox .ui-btn.ui-icon-checkbox-off:after {
font-size: 1.25em;
opacity: 1; /* overwrite JQM .3 for off... */
}
/* reset */
.ui-nosvg .ui-radio .ui-btn.ui-icon-radio-on:after,
.ui-nosvg .ui-radio .ui-btn.ui-icon-radio-off:after,
.ui-checkbox .ui-btn.ui-icon-checkbox-on:after,
.ui-checkbox .ui-btn.ui-icon-checkbox-off:after {
margin: -9px 2px 0;
}
/* filterable */
html .ui-panel-inner .ui-input-search.ui-input-has-clear .ui-btn.ui-input-clear,
html .ui-panel-inner .ui-input-search .ui-input-action {
background-image: none;
margin: -9px 0.3125em 0;
}
html .ui-input-search .ui-input-clear:after,
html .ui-input-search .ui-input-action:after {
margin-top: -12px;
}
html .ui-panel-inner .ui-input-search .ui-input-clear:after,
html .ui-panel-inner .ui-input-search .ui-input-action:after {
margin-top: -16px;
}
/* reset */
html.ui-nosvg .ui-panel-inner .ui-input-search.ui-input-has-clear .ui-btn.ui-input-clear,
html.ui-nosvg .ui-panel-inner .ui-input-search .ui-input-action {
margin: -15px 0.3125em 0;
}
html .ui-panel-inner .ui-input-search .ui-input-clear:after,
html .ui-panel-inner .ui-input-search .ui-input-action:after {
font-size: 1.25em;
}
html .ui-panel-inner .ui-input-search .ui-input-clear:focus,
html .ui-panel-inner .ui-input-search .ui-input-action:focus {
-webkit-box-shadow: none;
-moz-box-shadow: none;
box-shadow: none;
}
html .ui-input-search .ui-input-action {
display:none;
}
html .ui-input-search input:focus ~ .ui-input-action,
html .ui-input-search input.ui-focus ~ .ui-input-action{
display:block;
}
html body .ui-input-search .ui-input-clear:hover,
html body .ui-input-search .ui-input-clear:active {
background: transparent;
background-image: none;
-webkit-box-shadow: none /* iOS3 */ !important;
box-shadow: none /* iOS3 */ !important;
}
/* collapsibles - fix default 200% font-size set by browser */
html .ui-collapsible h1 {
font-size: 100%; /* clean this up... should not be necessary */
}
html .ui-collapsible .ui-collapsible-content .ui-listview li a.ui-btn {
font-weight: normal;
}
/* custom bar */
.ui-bar-plain {
padding: .7em 1em;
border: 1px solid;
font-size: 1em;
}
/* search filter bar? */
.ui-controlbar {
margin-top: 1em;
margin-bottom: 1em;
}
.ui-controlbar .ui-plain-text {
display: block;
font-size: 80%;
}
/* selectmenu */
.ui-select .ui-btn-corner-all,
.ui-select .ui-btn.ui-corner-all {
border-radius: .6em;
-webkit-border-radius: .6em;
/* padding-bottom: 6px;
padding-top: 7px;
*/
}
/* inside controlgroup */
.ui-controlgroup .ui-controlgroup-controls div.ui-select,
.ui-controlgroup .ui-controlgroup-controls div.ui-select div.ui-btn {
border-radius: 0;
-webkit-border-radius: 0;
}
html .ui-select .ui-btn-icon-notext:after,
html .ui-select .ui-btn-icon-left:after,
html .ui-select .ui-btn-icon-right:after {
margin-top: -12px;
}
.ui-input-text .ui-input-clear:hover {
background: transparent;
}
/* breadcrumbs - need work!
.ui-breadcrumbs {
background: none repeat scroll 0 0 #DDDDDD;
border-bottom: 1px solid #81898A;
box-shadow: 0 -7px 4px -6px #aaa inset;
-webkit-box-shadow: 0 -7px 4px -6px #aaa inset;
display: block;
margin: -15px -15px 0;
padding: 0.5em 0;
white-space: nowrap;
}
/* experimental ... thx http://fiddle.jshell.net/leaverou/EjE7c/show/light */
/* -moz-border-radius: 0.6em 10px 10px 0.6em / 0.6em 100px 100px 0.6em; */
/*
div.round {
background:
-moz-radial-gradient(0 100%, circle, rgba(204,0,0,0) 14px, #c00 15px),
-moz-radial-gradient(100% 100%, circle, rgba(204,0,0,0) 14px, #c00 15px),
-moz-radial-gradient(100% 0, circle, rgba(204,0,0,0) 14px, #c00 15px),
-moz-radial-gradient(0 0, circle, rgba(204,0,0,0) 14px, #c00 15px);
background:
-o-radial-gradient(0 100%, circle, rgba(204,0,0,0) 14px, #c00 15px),
-o-radial-gradient(100% 100%, circle, rgba(204,0,0,0) 14px, #c00 15px),
-o-radial-gradient(100% 0, circle, rgba(204,0,0,0) 14px, #c00 15px),
-o-radial-gradient(0 0, circle, rgba(204,0,0,0) 14px, #c00 15px);
background:
-webkit-radial-gradient(0 100%, circle, rgba(204,0,0,0) 14px, #c00 15px),
-webkit-radial-gradient(100% 100%, circle, rgba(204,0,0,0) 14px, #c00 15px),
-webkit-radial-gradient(100% 0, circle, rgba(204,0,0,0) 14px, #c00 15px),
-webkit-radial-gradient(0 0, circle, rgba(204,0,0,0) 14px, #c00 15px);
}
div, div.round {
background-position: bottom left, bottom right, top right, top left;
-moz-background-size: 50% 50%;
-webkit-background-size: 50% 50%;
background-size: 50% 50%;
background-repeat: no-repeat;
}*/
/*
.ui-breadcrumbs .ui-btn {
border-top-left-radius: .6em ;
border-bottom-left-radius: .6em;
border-top-right-radius: 10px / 100px;
border-bottom-right-radius: 10px / 100px;
border-right-width: 0;
padding-right: 2em;
overflow: visible;
margin: auto .5em;
padding-left: 30px;
font-weight: bold;
}
.ui-breadcrumbs .ui-btn.ui-btn-active {
cursor: default;
}
.ui-breadcrumbs .ui-btn:before {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
background: none repeat scroll 0 0 transparent;
border-color: #DDDDDD #DDDDDD transparent;
border-style: solid;
border-width: 0.4em 2em 2em;
content: "";
display: block;
height: 0;
position: absolute;
right: -1.2em;
top: 0.25em;
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
-ms-transform: rotate(90deg);
-o-transform: rotate(90deg);
transform: rotate(90deg);
width: 0;
}
.ui-breadcrumbs .ui-btn.ui-last-child {
border-right-width: 1px;
padding-right: .5em;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
outline: 0 !important;
display: inline-block;
border-radius: .6em;
}
.ui-breadcrumbs .ui-btn.ui-last-child:before {
content: none;
}
.ui-breadcrumbs .ui-btn.ui-crumbs {
font-size: 70%;
max-width: 23%;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
margin: auto .5em;
}
.ui-breadcrumbs .ui-btn.ui-crumbs:after {
margin-top: -10px;
}*/
This source diff could not be displayed because it is too large. You can view the blob instead.
<!doctype html>
<html>
<head>
<title>Dream Simulation</title>
<link rel="stylesheet" href="css/base.css">
<link rel="stylesheet" href="css/skeleton.css">
<link rel="stylesheet" href="css/skeleton_wide.css">
<link rel="stylesheet" href="css/layout.css">
<link rel="stylesheet" href="css/jquery-ui-1.10.3.custom.min.css">
<link rel="stylesheet" href="css/demo-new.css">
<link rel="stylesheet" href="css/font-awesome.css">
</head>
<body data-demo-id="flowchartConnectorsDemo" data-library="jquery">
<div class="container">
<div class="dummy_window"></div>
<div id="headerWrapper">
<div id="header"></div>
</div>
<div class="four columns">
<div id="tools">
<h4>Tools</h4>
<div id="tools-container"></div>
<a id="clear_all"> <i class="fa fa-magic"></i> Clear All</a>
<a id="layout_graph"><i class="fa fa-sitemap"></i> Layout Graph</a>
<a id="zoom_in"><i class="fa fa-plus"></i> Zoom +</a>
<a id="zoom_out"><i class="fa fa-minus"></i> Zoom -</a>
</div>
</div>
<div class="twelve columns">
<div id="main"></div>
</div>
</div>
<div class="container">
<div class="twelve columns">
<div id="wip_part_spreadsheet" style="display: none; overflow: scroll;"></div>
<div id="shift_spreadsheet" style="display: none; overflow: scroll"></div>
<div id="capacity_by_project_spreadsheet" style="display: none; overflow: scroll"></div>
<div id="capacity_by_station_spreadsheet" style="display: none; overflow: scroll"></div>
</div>
<div class="twelve columns">
<div id="result_zone">
<h1>Results</h1>
<ul id="result_list"></ul>
</div>
<div id="reports" style="display:none;">
<ul>
<li><a href="#station_utilisation_graph">Stations Utilization</a></li>
<li><a href="#capacity_utilisation_graph">Capacity Utilization</a></li>
<li><a href="#job_gantt">Job Gantt</a></li>
</ul>
<div id="capacity_utilisation_graph">
<h1>Capacity Utilization</h1>
<div id="capacity_graphs"></div>
</div>
</div>
<pre id="error">
</pre>
</div>
<!-- DEP -->
<script type="text/javascript" src="lib/jquery-1.10.1.min.js"></script>
<script type="text/javascript" src="lib/jquery-ui-1.10.3.custom.min.js"></script>
<script type="text/javascript" src="lib/jquery.ui.touch-punch.min.js"></script>
<script type="text/javascript" src="lib/pubsub.js"></script>
<script type="text/javascript" src="lib/jquery.jsPlumb-1.5.4-min.js"></script>
<!-- /DEP -->
<div id="dialog-form" title="Configure">
<form>
<fieldset id="dialog-fieldset">
</fieldset>
</form>
</div>
<!-- demo code -->
<script type="text/javascript" src="src/dream.js"></script>
<script type="text/javascript" src="src/jsonPlumb.js"></script>
<script type="text/javascript" src="src/dream_launcher.js"></script>
</div>
</body>
</html>
/* ========================= GALLERY WIDGET ========================= */
(function ($) {
$.widget("mobile.carousel", {
options: {
bullets: null,
bulletsPos: null,
inset: null,
captions: null,
captionpos: null,
captiontheme: null,
carouseltransition: null,
heading: "h1,h2,h3,h4,h5,h6,legend"
},
_transitionEndEvents : "webkitTransitionEnd oTransitionEnd " +
"otransitionend transitionend msTransitionEnd",
_create: function () {
var el = this.element[0],
o = this.options,
getAttrFixed = $.mobile.getAttribute;
// only time we read the DOM config
o.inset = getAttrFixed(el, "inset", true) || false;
o.carouseltransition = getAttrFixed(el, "transition", true) || "slide";
o.bullets = getAttrFixed(el, "bullets", true) || true;
o.captions = getAttrFixed(el, "captions", true) || false;
if (o.captions) {
o.captionspos = getAttrFixed(el, "captions-pos", true) || "bottom";
o.captionstheme = getAttrFixed(el, "captions-theme", true) || "a";
}
if (o.bullets) {
o.bulletsPos = getAttrFixed(el, "bulletsPos", true) || "bottom";
}
this.refresh(true);
},
refresh: function (create) {
var o = this.options,
el = this.element,
items = el.children(),
fragment = document.createDocumentFragment(),
classes = "ui-carousel",
barrel,
label,
radio,
item,
i,
containsLinks,
captionsHeading,
captionsContent;
// loop over images
for (i = 0; i < items.length; i += 1) {
item = items[i];
// create captions
if (o.captions) {
containsLinks = item.children.length === 1
&& item.children[0].tagName === "A";
captionsContent = $(item)
.find(containsLinks ? "a *" : "*")
.not("img")
.wrap("<div class='ui-carousel-captions-content ui-bar-" +
o.captionstheme + " ui-carousel-captions-" + o.captionspos +
"'></div>")
.parent();
captionsHeading = captionsContent.find(o.heading).addClass(
"ui-carousel-captions-heading"
);
}
// create radios
if (o.bullets) {
// TODO: do this in jQuery...
radio = document.createElement("input");
radio.setAttribute("type", 'radio');
radio.setAttribute("name", 'radio-' + this.uuid);
radio.setAttribute("value", 'radio-' + this.uuid + '-' + i);
if (i === 0) {
radio.checked = true;
$(item).addClass("ui-carousel-active");
}
// and use data()
radio.reference = $(item);
label = document.createElement("label");
label.setAttribute("data-" + $.mobile.ns + "iconpos", "notext");
label.appendChild(radio);
fragment.appendChild(label);
}
}
if (o.inset) {
classes += " ui-carousel-inset";
}
if (o.captions) {
classes += " ui-carousel-captions";
}
if (o.bullets) {
classes += " ui-carousel-bullets";
barrel = $("<div id='ui-carousel-barrel-" + this.uuid +
"' class='ui-carousel-controls ui-carousel-controls-" +
o.bulletsPos + "' />");
while (fragment.firstChild) {
// browser hangs up if calling this inside append()
$(fragment.firstChild).children().checkboxradio();
barrel.append(
fragment.firstChild
);
}
// remove existing barrel
if (create === undefined) {
$("#ui-carousel-barrel-" + this.uuid).remove();
}
// this always needs to go before the slider
el[o.bulletsPos === "top" ? "before" : "after"](barrel);
this._on(barrel.find("input"), { change: "_onChange"});
}
// all set, add classes
el.addClass(classes);
},
// _handleKeydown: function( event ) {
// var index = this._value();
// if ( this.options.disabled ) {
// return;
// }
//
// // In all cases prevent the default and mark the handle as active
// switch ( event.keyCode ) {
// case $.mobile.keyCode.RIGHT:
// case $.mobile.keyCode.LEFT:
// event.preventDefault();
//
// if ( !this._keySliding ) {
// this._keySliding = true;
// this.handle.addClass( "ui-state-active" );
// }
//
// break;
// }
//
// // move the slider according to the keypress
// switch ( event.keyCode ) {
// case $.mobile.keyCode.RIGHT:
// this.refresh( index + this.step );
// break;
// case $.mobile.keyCode.LEFT:
// this.refresh( index - this.step );
// break;
// }
// }, // remove active mark
//
// _handleKeyup: function(/* event */) {
// if ( this._keySliding ) {
// this._keySliding = false;
// }
// },
// _bindSwipeEvents: function() {
// var self = this,
// area = self.element;
//
// // on swipe, change to the next/previous image
// if( !!self.options.swipeClose ) {
// if ( self.options.position === "left" ) {
// area.on( "swipeleft.carousel", function(/* e */) {
// // self.close();
// });
// } else {
// area.on( "swiperight.carousel", function(/* e */) {
// // self.close();
// });
// }
// }
// },
_completeTransition: function (current, next, events) {
var self = this,
o = self.options;
next.removeClass("in out " + o.carouseltransition)
.off(events);
current
.on(events, self._cleanupTransition(current, events));
},
_cleanupTransition: function (current, events) {
var self = this,
o = self.options,
classes = o.carouseltransition + " out in";
current.removeClass(classes);
current.removeClass("ui-carousel-active").off(events);
},
_onChange: function (e) {
var self = this,
events = self._transitionEndEvents,
el = self.element,
o = self.options,
currentActive = el.children().filter(".ui-carousel-active"),
nextActive = e.target.reference,
//classes = o.carouseltransition + " out in",
transition = $.mobile._maybeDegradeTransition(o.carouseltransition);
// click on active radio
if (nextActive.hasClass("ui-carousel-active")) {
return;
}
// initialize
nextActive
.on(events, self._completeTransition(
currentActive,
nextActive,
events
));
nextActive
.addClass(transition + " ui-carousel-active in ");
}
});
}(jQuery));
/* tranistion workflow
// first slide
if (init) {
current.removeClass("ui-carousel-active in out reverse slide")
next.css('z-index','-10')
.addClass("ui-carousel-active ui-carousel-opaque")
.css('z-index','')
if (transition !== "none") {
// > once animation is complete!
// current.removeClass("ui-carousel-active in out reverse slide")
// next.removeClass("out in reverse slide")
next.removeClass("ui-carousel-opaque")
.addClass("slide in reverse")
} else {
current.removeClass("ui-carousel-active in out reverse slide")
next.removeClass("out in reverse slide")
}
} else {
// > once animation is complete
current.removeClass("ui-carousel-active in out reverse slide")
next.css('z-index','-10')
.addClass("ui-carousel-active ui-carousel-opaque")
.css('z-index','')
if (transition !== "none") {
// > once animation is complete!
// current.removeClass("ui-carousel-active in out reverse slide")
// next.removeClass("out in reverse slide")
next.removeClass("ui-carousel-opaque")
.addClass("slide in reverse")
} else {
current.removeClass("ui-carousel-active in out reverse slide")
next.removeClass("out in reverse slide")
}
current.addClass("slide out reverse");
}
*/
/* ========================= ACTION BUTTON EXTENSION ==================== */
(function () {
$.widget("mobile.textinput", $.mobile.textinput, {
options: {
actionBtn: false,
actionBtnText: "Search",
actionBtnIcon: "search"
},
_create: function () {
this._super();
if (!!this.options.actionBtn || this.isSearch) {
this._addActionBtn();
}
},
actionButton: function () {
return $("<a href='#' class='ui-input-action ui-btn ui-icon-" +
this.options.actionBtnIcon + " ui-btn-icon-notext ui-corner-all" +
"' title='" + this.options.actionBtnText + "'>" +
this.options.actionBtnText + "</a>");
},
_addActionBtn: function () {
if (!this.options.enhanced) {
this._enhanceAction();
}
$.extend(this, {
_actionBtn: this.widget().find("a.ui-input-action")
});
},
_enhanceAction: function () {
this.actionButton().appendTo(this.widget());
this.widget().addClass(
"ui-input-has-action ui-input-search-no-pseudo"
);
},
_setOptions: function (options) {
this._super(options);
if (options.actionBtn !== undefined &&
!this.element.is("textarea, :jqmData(type='range')")) {
if (options.actionBtn) {
this._addActionBtn();
} else {
this._destroyAction();
}
}
if (options.clearBtnText !== undefined &&
this._actionBtn !== undefined) {
this._actionBtn.text(options.clearBtnText);
}
},
_destroyAction: function () {
this.element.removeClass("ui-input-has-clear");
this._actionBtn.remove();
},
_destroy: function () {
this._super();
this._destroyAction();
}
});
}());
/* ============================= TABLE ====================================*/
(function( $, undefined ) {
$.widget( "mobile.table", {
options: {
classes: {
table: "ui-table"
},
enhanced: false
},
_create: function() {
if ( !this.options.enhanced ) {
this.element.addClass( this.options.classes.table );
}
// extend here, assign on refresh > _setHeaders
$.extend( this, {
// Expose headers and allHeaders properties on the widget
// headers references the THs within the first TR in the table
headers: undefined,
// allHeaders references headers, plus all THs in the thead, which may
// include several rows, or not
allHeaders: undefined
});
this._refresh( true );
},
_setHeaders: function() {
var trs = this.element.find( "thead tr" );
this.headers = this.element.find( "tr:eq(0)" ).children();
this.allHeaders = this.headers.add( trs.children() );
},
refresh: function() {
this._refresh();
},
rebuild: $.noop,
_refresh: function( /* create */ ) {
var table = this.element,
trs = table.find( "thead tr" );
// updating headers on refresh (fixes #5880)
this._setHeaders();
// Iterate over the trs
trs.each( function() {
var columnCount = 0;
// Iterate over the children of the tr
$( this ).children().each( function() {
var span = parseInt( $.mobile.getAttribute( this, "colspan" ), 10 ),
selector = ":nth-child(" + ( columnCount + 1 ) + ")",
j;
this.setAttribute( "data-" + $.mobile.ns + "colstart", columnCount + 1 );
if ( span ) {
for( j = 0; j < span - 1; j++ ) {
columnCount++;
selector += ", :nth-child(" + ( columnCount + 1 ) + ")";
}
}
// Store "cells" data on header as a reference to all cells in the
// same column as this TH
$( this ).jqmData( "cells", table.find( "tr" ).not( trs.eq( 0 ) ).not( this ).children( selector ) );
columnCount++;
});
});
}
});
})( jQuery );
(function( $, undefined ) {
$.widget( "mobile.table", $.mobile.table, {
options: {
mode: "columntoggle",
columnBtnTheme: null,
columnPopupTheme: null,
columnBtnText: "Columns...",
columnBtnIcon: "Search",
sort: null,
wrap: null,
topGrid: null,
bottomGrid: null,
classes: $.extend( $.mobile.table.prototype.options.classes, {
popup: "ui-table-columntoggle-popup",
columnBtn: "ui-table-columntoggle-btn",
priorityPrefix: "ui-table-priority-",
columnToggleTable: "ui-table-columntoggle"
})
},
_create: function() {
this._super();
if( this.options.mode !== "columntoggle" ) {
return;
}
$.extend( this, {
_menu: null
});
if( this.options.enhanced ) {
this._menu = this.document.find( this._id() + "-popup" ).children().first();
} else {
this._menu = this._enhanceColToggle();
this.element.addClass( this.options.classes.columnToggleTable );
}
this._setupEvents();
this._setToggleState();
},
_id: function() {
return ( this.element.attr( "id" ) || ( this.widgetName + this.uuid ) );
},
_setupEvents: function() {
//NOTE: inputs are bound in bindToggles,
// so it can be called on refresh, too
// update column toggles on resize
this._on( $.mobile.window, {
throttledresize: "_setToggleState"
});
},
_bindToggles: function( menu ) {
var inputs = menu.find( "input" );
this._on( inputs, {
change: "_menuInputChange"
});
},
_addToggles: function( menu, keep ) {
var opts = this.options;
// allow update of menu on refresh (fixes #5880)
if ( !keep ) {
menu.empty();
}
// create the hide/show toggles
this.headers.not( "td" ).each( function() {
var header = $( this ),
priority = $.mobile.getAttribute( this, "priority", true ),
cells = header.add( header.jqmData( "cells" ) );
if( priority ) {
cells.addClass( opts.classes.priorityPrefix + priority );
if ( !keep ) {
$("<label><input type='checkbox' checked />" + header.text() + "</label>" )
.appendTo( menu )
.children( 0 )
.jqmData( "cells", cells )
.checkboxradio( {
theme: opts.columnPopupTheme
});
}
}
});
// set bindings here
if ( !keep ) {
this._bindToggles( menu );
}
},
_menuInputChange: function( evt ) {
var input = $( evt.target ),
checked = input[ 0 ].checked;
input.jqmData( "cells" )
.toggleClass( "ui-table-cell-hidden", !checked )
.toggleClass( "ui-table-cell-visible", checked );
if ( input[ 0 ].getAttribute( "locked" ) ) {
input.removeAttr( "locked" );
this._unlockCells( input.jqmData( "cells" ) );
} else {
input.attr( "locked", true );
}
},
_unlockCells: function( cells ) {
// allow hide/show via CSS only = remove all toggle-locks
cells.removeClass( "ui-table-cell-hidden ui-table-cell-visible");
},
_toLetter: function (n) {
return n.toString(26).replace(/./g, function( c ) {
return String.fromCharCode( c.charCodeAt(0) + ( isNaN( +c ) ? 10 : 49 ));
});
},
_generateWrapper: function ( grids ) {
return $("<div/>", {
class: "ui-table-wrapper ui-table-wrapper-inset ui-corner-all"
}).append($.map(new Array( grids ), function(){
return $("<div/>");
})).grid({ grid: grids > 1 ? this._toLetter(grids-2) : "solo" });
},
_enhanceColToggle: function() {
var id , menuButton, popup, menu, front, back, slots, fill, i, sorts, btn, item,
table = this.element,
opts = this.options,
ns = $.mobile.ns,
fragment = $.mobile.document[ 0 ].createDocumentFragment();
id = this._id() + "-popup";
menuButton = $( "<a role='button' href='#" + id + "' " +
"class='" + opts.classes.columnBtn + " ui-btn ui-btn-" + ( opts.columnBtnTheme || "a" ) + " ui-corner-all ui-shadow ui-mini ui-icon ui-btn-icon-left ui-icon-"+ opts.columnBtnIcon +"' " +
"data-" + ns + "rel='popup' " +
"data-" + ns + "icon='" + opts.columnBtnIcon + "' " +
"data-" + ns + "mini='true'>" + opts.columnBtnText + "</a>" );
popup = $( "<div data-" + ns + "role='popup' data-" + ns + "role='fieldcontain' class='" + opts.classes.popup + "' id='" + id + "'></div>" );
menu = $( "<fieldset data-" + ns + "role='controlgroup'></fieldset>" );
// set extension here, send "false" to trigger build/rebuild
this._addToggles( menu, false );
menu.appendTo( popup );
// wrappers
// TODO: not nice, should be possible to wrap top with 3 elements
// and then where do you put the toggle button
// TODO: also not nice, because no way to latch on the filter
// TODO: also not nice, because data-slot-id is not used.
if (opts.wrap) {
fill = table.parent().find( "div[data-slot]" );
if (opts.wrap === "both") {
front = this._generateWrapper( opts.topGrid );
back = this._generateWrapper( opts.bottomGrid );
if (fill) {
slots = front.add( back ).children("div");
for (i = 0; i < fill.length; i += 1) {
item = parseFloat(fill.eq(i).jqmData("slot-id"))-1;
fill.eq(i)
.find("label")
.addClass("ui-hidden-accessible")
.end()
// skip slot 2
.appendTo( slots.eq( item || (i === 2 ? 3 : i)) );
}
}
front
.addClass("ui-table-wrapper-top")
.children("div").last().append( menuButton[ 0 ] );
back
.addClass("ui-table-wrapper-bottom");
fragment.appendChild( front[ 0 ] );
fragment.appendChild( popup[ 0 ] );
// not possible in one-go...
table.before(fragment)
table.after(back);
} else {
front = this._generateWrapper( opts.topGrid || opts.bottomGrid || 3);
if (fill.length) {
slots = front.children("div");
for (i = 0; i < fill.length; i += 1) {
fill.eq(i)
.find("label")
.addClass("ui-hidden-accessible")
.end()
// skip slot 2
.appendTo( slots.eq( i === 2 ? 3 : i ) );
}
}
front
.addClass("ui-table-wrapper-top")
.children("div").last().append( menuButton[ 0 ] );
fragment.appendChild( front[ 0 ] );
fragment.appendChild( popup[ 0 ] );
// not possible in one-go...
table[ opts.wrap === "top" ? "before" : "after"](fragment)
}
// no wrap
} else {
fragment.appendChild( popup[ 0 ] );
fragment.appendChild( menuButton[ 0 ] );
table.before( fragment );
}
if (opts.sort) {
sorts = table.find( "thead tr th[data-sortable]" );
btn = $("<a />", {
class: "ui-sortable ui-btn ui-icon-sort-down ui-icon ui-btn-icon-right",
});
sorts.each(function(i, el) {
var $el = $(el);
$el.html( btn.clone().text( $el.text() ) );
});
}
popup.popup().children( "fieldset" ).controlgroup();
// always return the menu
return menu;
},
rebuild: function() {
this._super();
if ( this.options.mode === "columntoggle" ) {
// NOTE: rebuild passes "false", while refresh passes "undefined"
// both refresh the table, but inside addToggles, !false will be true,
// so a rebuild call can be indentified
this._refresh( false );
}
},
_refresh: function( create ) {
this._super( create );
if ( !create && this.options.mode === "columntoggle" ) {
// columns not being replaced must be cleared from input toggle-locks
this._unlockCells( this.allHeaders );
// update columntoggles and cells
this._addToggles( this._menu, create );
// check/uncheck
this._setToggleState();
}
},
_setToggleState: function() {
this._menu.find( "input" ).each( function() {
var checkbox = $( this );
this.checked = checkbox.jqmData( "cells" ).eq( 0 ).css( "display" ) === "table-cell";
checkbox.checkboxradio( "refresh" );
});
},
_destroy: function() {
this._super();
}
});
})( jQuery );
(function( $, undefined ) {
$.widget( "mobile.table", $.mobile.table, {
options: {
mode: "reflow",
classes: $.extend( $.mobile.table.prototype.options.classes, {
reflowTable: "ui-table-reflow",
cellLabels: "ui-table-cell-label"
})
},
_create: function() {
this._super();
// If it's not reflow mode, return here.
if( this.options.mode !== "reflow" ) {
return;
}
if( !this.options.enhanced ) {
this.element.addClass( this.options.classes.reflowTable );
this._updateReflow();
}
},
rebuild: function() {
this._super();
if ( this.options.mode === "reflow" ) {
this._refresh( false );
}
},
_refresh: function( create ) {
this._super( create );
if ( !create && this.options.mode === "reflow" ) {
this._updateReflow( );
}
},
_updateReflow: function() {
var table = this,
opts = this.options;
// get headers in reverse order so that top-level headers are appended last
$( table.allHeaders.get().reverse() ).each( function() {
var cells = $( this ).jqmData( "cells" ),
colstart = $.mobile.getAttribute( this, "colstart", true ),
hierarchyClass = cells.not( this ).filter( "thead th" ).length && " ui-table-cell-label-top",
text = $( this ).text(),
iteration, filter;
if ( text !== "" ) {
if( hierarchyClass ) {
iteration = parseInt( this.getAttribute( "colspan" ), 10 );
filter = "";
if ( iteration ){
filter = "td:nth-child("+ iteration +"n + " + ( colstart ) +")";
}
table._addLabels( cells.filter( filter ), opts.classes.cellLabels + hierarchyClass, text );
} else {
table._addLabels( cells, opts.classes.cellLabels, text );
}
}
});
},
_addLabels: function( cells, label, text ) {
// .not fixes #6006
cells.not( ":has(b." + label + ")" ).prepend( "<b class='" + label + "'>" + text + "</b>" );
}
});
})( jQuery );
/* ====================================== COLLAPSIBLE =====================*/
(function( $, undefined ) {
var rInitialLetter = /([A-Z])/g;
$.widget( "mobile.collapsible", {
options: {
enhanced: false,
expandCueText: null,
collapseCueText: null,
collapsed: true,
heading: "h1,h2,h3,h4,h5,h6,legend",
icon: null,
collapsedIcon: null,
expandedIcon: null,
iconpos: null,
theme: null,
contentTheme: null,
inset: null,
corners: null,
mini: null
},
_create: function() {
var elem = this.element,
ui = {
accordion: elem
.closest( ":jqmData(role='collapsible-set')" +
( $.mobile.collapsibleset ? ", :mobile-collapsibleset" : "" ) )
.addClass( "ui-collapsible-set" )
};
$.extend( this, {
_ui: ui
});
if ( this.options.enhanced ) {
ui.heading = $( ".ui-collapsible-heading", this.element[ 0 ] );
ui.content = ui.heading.next();
ui.anchor = $( "a", ui.heading[ 0 ] ).first();
ui.status = ui.anchor.children( ".ui-collapsible-heading-status" );
} else {
this._enhance( elem, ui );
}
this._on( ui.heading, {
"tap": function() {
ui.heading.find( "a" ).first().addClass( $.mobile.activeBtnClass );
},
"click": function( event ) {
this._handleExpandCollapse( !ui.heading.hasClass( "ui-collapsible-heading-collapsed" ) );
event.preventDefault();
event.stopPropagation();
}
});
},
// Adjust the keys inside options for inherited values
_getOptions: function( options ) {
var key,
accordion = this._ui.accordion,
accordionWidget = this._ui.accordionWidget;
// Copy options
options = $.extend( {}, options );
if ( accordion.length && !accordionWidget ) {
this._ui.accordionWidget =
accordionWidget = accordion.data( "mobile-collapsibleset" );
}
for ( key in options ) {
// Retrieve the option value first from the options object passed in and, if
// null, from the parent accordion or, if that's null too, or if there's no
// parent accordion, then from the defaults.
options[ key ] =
( options[ key ] != null ) ? options[ key ] :
( accordionWidget ) ? accordionWidget.options[ key ] :
accordion.length ? $.mobile.getAttribute( accordion[ 0 ],
key.replace( rInitialLetter, "-$1" ).toLowerCase(), true ):
null;
if ( null == options[ key ] ) {
options[ key ] = $.mobile.collapsible.defaults[ key ];
}
}
return options;
},
_themeClassFromOption: function( prefix, value ) {
return ( value ? ( value === "none" ? "" : prefix + value ) : "" );
},
_enhance: function( elem, ui ) {
var iconclass,
opts = this._getOptions( this.options ),
contentThemeClass = this._themeClassFromOption( "ui-body-", opts.contentTheme );
elem.addClass( "ui-collapsible " +
( opts.inset ? "ui-collapsible-inset " : "" ) +
( opts.inset && opts.corners ? "ui-corner-all " : "" ) +
( contentThemeClass ? "ui-collapsible-themed-content " : "" ) );
ui.originalHeading = elem.children( this.options.heading ).first(),
ui.content = elem
.wrapInner( "<div " +
"class='ui-collapsible-content " +
contentThemeClass + "'></div>" )
.children( ".ui-collapsible-content" ),
ui.heading = ui.originalHeading;
// Replace collapsibleHeading if it's a legend
if ( ui.heading.is( "legend" ) ) {
ui.heading = $( "<div role='heading'>"+ ui.heading.html() +"</div>" );
ui.placeholder = $( "<div><!-- placeholder for legend --></div>" ).insertBefore( ui.originalHeading );
ui.originalHeading.remove();
}
iconclass = ( opts.icon === false ? "ui-collapsible-hide-icon " : "" ) +
( opts.collapsed ? ( opts.collapsedIcon ? "ui-icon-" + opts.collapsedIcon : "" ) :
( opts.expandedIcon ? "ui-icon-" + opts.expandedIcon : "" ));
ui.status = $( "<span class='ui-collapsible-heading-status'></span>" );
ui.anchor = ui.heading
.detach()
//modify markup & attributes
.addClass( "ui-collapsible-heading" )
.append( ui.status )
.wrapInner( "<a href='#' class='ui-collapsible-heading-toggle'></a>" )
.find( "a" )
.first()
.addClass( "ui-btn " +
( iconclass ? iconclass + " " : "" ) +
( iconclass ? ( "ui-btn-icon-" +
( opts.iconpos === "right" ? "right" : "left" ) ) +
" " : "" ) +
this._themeClassFromOption( "ui-btn-", opts.theme ) + " " +
( opts.mini ? "ui-mini " : "" ) );
//drop heading in before content
ui.heading.insertBefore( ui.content );
this._handleExpandCollapse( this.options.collapsed );
return ui;
},
refresh: function() {
var key, options = {};
for ( key in $.mobile.collapsible.defaults ) {
options[ key ] = this.options[ key ];
}
this._setOptions( options );
},
_setOptions: function( options ) {
var isCollapsed, newTheme, oldTheme,
elem = this.element,
currentOpts = this.options,
ui = this._ui,
anchor = ui.anchor,
status = ui.status,
opts = this._getOptions( options );
// First and foremost we need to make sure the collapsible is in the proper
// state, in case somebody decided to change the collapsed option at the
// same time as another option
if ( options.collapsed !== undefined ) {
this._handleExpandCollapse( options.collapsed );
}
isCollapsed = elem.hasClass( "ui-collapsible-collapsed" );
// Only options referring to the current state need to be applied right away
// It is enough to store options covering the alternate in this.options.
if ( isCollapsed ) {
if ( opts.expandCueText !== undefined ) {
status.text( opts.expandCueText );
}
if ( opts.collapsedIcon !== undefined ) {
if ( currentOpts.collapsedIcon ) {
anchor.removeClass( "ui-icon-" + currentOpts.collapsedIcon );
}
if ( opts.collapsedIcon ) {
anchor.addClass( "ui-icon-" + opts.collapsedIcon );
}
}
} else {
if ( opts.collapseCueText !== undefined ) {
status.text( opts.collapseCueText );
}
if ( opts.expandedIcon !== undefined ) {
if ( currentOpts.expandedIcon ) {
anchor.removeClass( "ui-icon-" + currentOpts.expandedIcon );
}
if ( opts.expandedIcon ) {
anchor.addClass( "ui-icon-" + opts.expandedIcon );
}
}
}
if ( opts.iconpos !== undefined ) {
anchor.removeClass( "ui-btn-icon-" + ( currentOpts.iconPos === "right" ? "right" : "left" ) );
anchor.addClass( "ui-btn-icon-" + ( opts.iconPos === "right" ? "right" : "left" ) );
}
if ( opts.theme !== undefined ) {
oldTheme = this._themeClassFromOption( "ui-btn-", currentOpts.theme );
newTheme = this._themeClassFromOption( "ui-btn-", opts.theme );
anchor.removeClass( oldTheme ).addClass( newTheme );
}
if ( opts.contentTheme !== undefined ) {
oldTheme = this._themeClassFromOption( "ui-body-", currentOpts.theme );
newTheme = this._themeClassFromOption( "ui-body-", opts.theme );
ui.content.removeClass( oldTheme ).addClass( newTheme );
}
// It is important to apply "inset" before corners, because the new value of
// "inset" can affect whether we display corners or not. Note that setting
// the "inset" option to false does not cause a change in the value of
// this.options.corners - it merely causes a change in the interpretation of
// the value of the "corners" option.
if ( opts.inset !== undefined ) {
elem.toggleClass( "ui-collapsible-inset", opts.inset );
currentOpts.inset = opts.inset;
if ( !opts.inset ) {
opts.corners = false;
}
}
if ( opts.corners !== undefined ) {
elem.toggleClass( "ui-corner-all", currentOpts.inset && opts.corners );
}
if ( opts.mini !== undefined ) {
anchor.toggleClass( "ui-mini", opts.mini );
}
this._super( options );
},
_handleExpandCollapse: function( isCollapse ) {
var opts = this._getOptions( this.options ),
ui = this._ui;
ui.status.text( isCollapse ? opts.expandCueText : opts.collapseCueText );
ui.heading
.toggleClass( "ui-collapsible-heading-collapsed", isCollapse )
.find( "a" ).first()
.toggleClass( "ui-icon-" + opts.expandedIcon, !isCollapse )
// logic or cause same icon for expanded/collapsed state would remove the ui-icon-class
.toggleClass( "ui-icon-" + opts.collapsedIcon, ( isCollapse || opts.expandedIcon === opts.collapsedIcon ) )
.removeClass( $.mobile.activeBtnClass );
this.element.toggleClass( "ui-collapsible-collapsed", isCollapse );
ui.content
.toggleClass( "ui-collapsible-content-collapsed", isCollapse )
.attr( "aria-hidden", isCollapse )
.trigger( "updatelayout" );
this.options.collapsed = isCollapse;
this._trigger( isCollapse ? "collapse" : "expand" );
},
expand: function() {
this._handleExpandCollapse( false );
},
collapse: function() {
this._handleExpandCollapse( true );
},
_destroy: function() {
var ui = this._ui,
opts = this.options;
if ( opts.enhanced ) {
return;
}
if ( ui.placeholder ) {
ui.originalHeading.insertBefore( ui.placeholder );
ui.placeholder.remove();
ui.heading.remove();
} else {
ui.status.remove();
ui.heading
.removeClass( "ui-collapsible-heading ui-collapsible-heading-collapsed" )
.children()
.contents()
.unwrap();
}
ui.anchor.contents().unwrap();
ui.content.contents().unwrap();
this.element
.removeClass( "ui-collapsible ui-collapsible-collapsed " +
"ui-collapsible-themed-content ui-collapsible-inset ui-corner-all" );
}
});
// Defaults to be used by all instances of collapsible if per-instance values
// are unset or if nothing is specified by way of inheritance from an accordion.
// Note that this hash does not contain options "collapsed" or "heading",
// because those are not inheritable.
$.mobile.collapsible.defaults = {
expandCueText: " click to expand contents",
collapseCueText: " click to collapse contents",
collapsedIcon: "plus",
expandedIcon: "minus",
iconpos: "left",
inset: true,
corners: true,
mini: false
};
})( jQuery );
/* ============================= COLLAPSIBLE_SET =========================*/
(function( $, undefined ) {
var childCollapsiblesSelector = ":mobile-collapsible, " + $.mobile.collapsible.initSelector;
$.widget( "mobile.collapsibleset", $.extend( {
// The initSelector is deprecated as of 1.4.0. In 1.5.0 we will use
// :jqmData(role='collapsibleset') which will allow us to get rid of the line
// below altogether, because the autoinit will generate such an initSelector
initSelector: ":jqmData(role='collapsible-set'),:jqmData(role='collapsibleset')",
options: $.extend( {
enhanced: false,
type: null
}, $.mobile.collapsible.defaults ),
_isSetAndClose: function ( parent, allClosed ) {
if (allClosed) {
return parent.children().length === parent.children(".ui-collapsible-collapsed").length;
}
return parent.is( ":mobile-collapsibleset, :jqmData(role='collapsible-set')" );
},
_handleCollapsibleExpand: function( event ) {
var closestCollapsible = $( event.target ).closest( ".ui-collapsible" ),
parentElement = closestCollapsible.parent();
if ( this._isSetAndClose( parentElement ) ) {
closestCollapsible
.siblings( ".ui-collapsible:not(.ui-collapsible-collapsed)" )
.collapsible( "collapse" );
parentElement.toggleClass("ui-collapsible-set-all-closed", this._isSetAndClose( parentElement, true) );
}
},
_handleCollapsibleCollapse: function ( event ) {
var closestCollapsible = $( event.target ).closest( ".ui-collapsible" ),
parentElement = closestCollapsible.parent();
if ( this._isSetAndClose( parentElement ) ) {
parentElement.toggleClass("ui-collapsible-set-all-closed", this._isSetAndClose( parentElement, true) );
}
},
_create: function() {
var elem = this.element,
opts = this.options;
$.extend( this, {
_classes: ""
});
if ( !opts.enhanced ) {
elem.addClass( "ui-collapsible-set " +
this._themeClassFromOption( "ui-group-theme-", opts.theme ) + " " +
( opts.corners && opts.inset ? "ui-corner-all " : "" ) );
// tabs
if (opts.type) {
elem.addClass( "ui-collapsible-tabs" );
}
this.element.find( $.mobile.collapsible.initSelector ).collapsible();
}
this._on( elem, {
collapsibleexpand: "_handleCollapsibleExpand",
collapsiblecollapse: "_handleCollapsibleCollapse"
} );
},
_themeClassFromOption: function( prefix, value ) {
return ( value ? ( value === "none" ? "" : prefix + value ) : "" );
},
_init: function() {
this._refresh( true );
// Because the corners are handled by the collapsible itself and the default state is collapsed
// That was causing https://github.com/jquery/jquery-mobile/issues/4116
this.element
.children( childCollapsiblesSelector )
.filter( ":jqmData(collapsed='false')" )
.collapsible( "expand" );
},
_setOptions: function( options ) {
var ret,
elem = this.element,
themeClass = this._themeClassFromOption( "ui-group-theme-", options.theme );
if ( themeClass ) {
elem
.removeClass( this._themeClassFromOption( "ui-group-theme-", this.options.theme ) )
.addClass( themeClass );
}
if ( options.corners !== undefined ) {
elem.toggleClass( "ui-corner-all", options.corners );
}
ret = this._super( options );
this.element.children( ":mobile-collapsible" ).collapsible( "refresh" );
return ret;
},
_destroy: function() {
var el = this.element;
this._removeFirstLastClasses( el.children( childCollapsiblesSelector ) );
el
.removeClass( "ui-collapsible-set ui-corner-all " +
this._themeClassFromOption( "ui-group-theme", this.options.theme ) )
.children( ":mobile-collapsible" )
.collapsible( "destroy" );
},
_refresh: function( create ) {
var collapsiblesInSet = this.element.children( childCollapsiblesSelector );
this.element.find( $.mobile.collapsible.initSelector ).not( ".ui-collapsible" ).collapsible();
this._addFirstLastClasses( collapsiblesInSet, this._getVisibles( collapsiblesInSet, create ), create );
},
refresh: function() {
this._refresh( false );
}
}, $.mobile.behaviors.addFirstLastClasses ) );
})( jQuery );
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
/*
* jQuery UI Touch Punch 0.2.2
*
* Copyright 2011, Dave Furfero
* Dual licensed under the MIT or GPL Version 2 licenses.
*
* Depends:
* jquery.ui.widget.js
* jquery.ui.mouse.js
*/
(function(b){b.support.touch="ontouchend" in document;if(!b.support.touch){return;}var c=b.ui.mouse.prototype,e=c._mouseInit,a;function d(g,h){if(g.originalEvent.touches.length>1){return;}g.preventDefault();var i=g.originalEvent.changedTouches[0],f=document.createEvent("MouseEvents");f.initMouseEvent(h,true,true,window,1,i.screenX,i.screenY,i.clientX,i.clientY,false,false,false,false,0,null);g.target.dispatchEvent(f);}c._touchStart=function(g){var f=this;if(a||!f._mouseCapture(g.originalEvent.changedTouches[0])){return;}a=true;f._touchMoved=false;d(g,"mouseover");d(g,"mousemove");d(g,"mousedown");};c._touchMove=function(f){if(!a){return;}this._touchMoved=true;d(f,"mousemove");};c._touchEnd=function(f){if(!a){return;}d(f,"mouseup");d(f,"mouseout");if(!this._touchMoved){d(f,"click");}a=false;};c._mouseInit=function(){var f=this;f.element.bind("touchstart",b.proxy(f,"_touchStart")).bind("touchmove",b.proxy(f,"_touchMove")).bind("touchend",b.proxy(f,"_touchEnd"));e.call(f);};})(jQuery);
\ No newline at end of file
/* jQuery Tiny Pub/Sub - v0.7 - 10/27/2011
* http://benalman.com/
* Copyright (c) 2011 "Cowboy" Ben Alman; Licensed MIT, GPL */
(function($) {
var o = $({});
$.subscribe = function() {
o.on.apply(o, arguments);
};
$.unsubscribe = function() {
o.off.apply(o, arguments);
};
$.publish = function() {
o.trigger.apply(o, arguments);
};
}(jQuery));
/* ===========================================================================
* Copyright 2013 Nexedi SA and Contributors
*
* This file is part of DREAM.
*
* DREAM is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DREAM is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with DREAM. If not, see <http://www.gnu.org/licenses/>.
* =========================================================================== */
/*jslint indent: 2, maxlen: 80, nomen: true */
(function (scope, $, jsPlumb, console) {
"use strict";
function capacity_utilisation_graph_widget(input_data, output_data) {
var available_capacity_by_station = {},
capacity_usage_by_station = {};
$("#capacity_graphs").empty();
// Compute availability by station
$.each(input_data.nodes, function(idx, obj){
var available_capacity = [];
if (obj.intervalCapacity !== undefined) {
$.each(obj.intervalCapacity, function(i, capacity){
available_capacity.push([i, capacity]);
});
available_capacity_by_station[obj.id] = available_capacity;
}
});
// Compute used capacity by station
$.each(output_data.elementList.sort(
function(a,b) {return a.id < b.id ? -1 : 1}),
function (idx, obj) {
if (obj.results !== undefined && obj.results.capacityUsed !== undefined) {
var capacity_usage = [];
$.each(obj.results.capacityUsed, function(i, step){
var period = 0, usage = 0;
$.each(step, function(k, v){
if (k === 'period') {
period = v;
}
});
$.each(step, function(k, v){
if (k !== 'utilization' && k !== 'period'){
usage += v;
}
});
capacity_usage.push([period, usage])
});
capacity_usage_by_station[obj.id] = capacity_usage;
}
});
for (var station_id in available_capacity_by_station) {
var series = [{
label: "Capacity",
data: available_capacity_by_station[station_id],
color: "green",
}, {
label: "Utilisation",
data: capacity_usage_by_station[station_id],
color: "red",
}];
var options = {
series: {
lines: {
show: true,
fill: true
}
}
};
var h2 = $("<h2>").html(input_data.nodes[station_id].name || station_id);
var graph = $("<div class='capacity_graph'></div>");
$("#capacity_graphs").append(h2).append(graph);
$.plot(graph, series, options);
}
};
scope.Dream = function (configuration) {
var that = jsonPlumb(),
priv = {};
that.initGeneralProperties = function () {
var general_properties = {};
$.each(configuration["Dream-Configuration"].property_list, function (
idx, element) {
general_properties[element.id] = element._default;
});
that.setGeneralProperties(general_properties);
};
priv.displayTool = function () {
var render_element = $("#tools-container");
$.each(configuration, function(key, val) {
var name = val["name"] || key.split('-')[1];
if (key !== 'Dream-Configuration') {
render_element.append('<div id="' + key + '" class="tool ' + key + '">' +
name + "<ul/></div>");
}
});
};
priv.initDialog = function () {
$("#dialog-form").dialog({
autoOpen: false
});
};
priv.prepareDialogForElement = function (title, element_id) {
// code to allow changing values on connections. For now we assume
// that it is throughput. But we will need more generic code
//var throughput = $( "#throughput" ),
// allFields = $( [] ).add( throughput );
$(function () {
$("input[type=submit]")
.button()
.click(function (event) {
event.preventDefault();
});
});
// Render fields for that particular element
var fieldset = $("#dialog-fieldset");
var node_dict = that.getData()["nodes"];
var node_id = that.getNodeId(element_id);
$("#dialog-fieldset").children().remove();
var element_type = node_dict[node_id]._class.replace('.', '-');
var property_list = configuration[element_type].property_list || [];
fieldset.append(
'<label>ID</label><input type="text" name="id" id="id" value="' +
node_id + '" class="text ui-widget-content ui-corner-all"/>');
var element_name = node_dict[node_id]['name'] || node_id;
fieldset.append(
'<label>Name</label><input type="text" name="name" id="name" value="' +
element_name + '" class="text ui-widget-content ui-corner-all"/>');
var previous_data = node_dict[node_id] || {};
var previous_value;
var renderField = function (property_list, previous_data, prefix) {
if (prefix === undefined) {
prefix = "";
}
$.each(property_list, function (key, property) {
if (property._class === "Dream.Property") {
if (!property.non_editable){
fieldset.append($("<label>").text(property.name || property.id));
var input = $("<input type='text'>")
if (property.choice) {
input = $("<select/>");
input.append("<option/>");
$.each(property.choice, function(idx, option) {
input.append($("<option/>").val(option[1]).text(option[0]));
});
}
input.attr({
'name': prefix + property.id,
'title': (property.description || ''),
'id': prefix + property.id,
'class': 'text ui-widget-content ui-corner-all',
})
previous_value = previous_data[property.id];
input.val(previous_value);
fieldset.append(input);
}
} else if (property._class === "Dream.PropertyList") {
var next_prefix = prefix + property.id + "-";
var next_previous_data = previous_data[property.id] || {};
renderField(property.property_list, next_previous_data,
next_prefix);
}
});
};
renderField(property_list, previous_data);
$("#dialog-form").dialog({
autoOpen: false,
width: 350,
modal: true,
title: node_dict[node_id]._class + " " + title || "",
buttons: {
Cancel: function () {
$(this).dialog("close");
},
Delete: function () {
if (confirm("Are you sure you want to delete " + node_id +
" ?")) {
that.removeElement(node_id);
}
$(this).dialog("close");
},
Validate: function () {
var new_id = $("#id").val();
if (new_id !== node_id && new_id in node_dict) {
alert('This ID is already used.');
return;
}
var data = {}, prefixed_property_id, property_element;
var updateDataPropertyList = function (property_list, data,
prefix) {
if (prefix === undefined) {
prefix = "";
}
$.each(property_list, function (key, property) {
if (property._class === "Dream.Property") {
prefixed_property_id = prefix + property.id;
property_element = $("#" + prefixed_property_id);
data[property.id] = property_element.val();
if (property.type === "number" && data[property.id] !== "") {
data[property.id] = parseFloat(data[property.id])
}
} else if (property._class === "Dream.PropertyList") {
var next_prefix = prefix + property.id + "-";
data[property.id] = {};
updateDataPropertyList(property.property_list, data[
property.id], next_prefix);
}
});
};
updateDataPropertyList(property_list, data);
that.updateElementData(node_id, {
data: data,
name: $("#name").val() || node_id,
id: $("#id").val() || node_id
});
$(this).dialog("close");
}
},
close: function () {
//allFields.val( "" ).removeClass( "ui-state-error" );
}
});
};
priv.super_newElement = that.newElement;
that.newElement = function (element) {
var element_type = element._class.replace('.', '-');
element.element_id = that.generateElementId();
if (!element.id) {
element.id = that.generateNodeId(element_type, configuration[element_type]);
}
priv.super_newElement(element, configuration[element_type]);
$("#" + element.element_id).on('dblclick', function () {
$("#dialog-form").dialog("destroy");
priv.prepareDialogForElement(element.id, element.element_id);
$("#dialog-form").dialog("open");
});
// Store default values
var data = {}, property_list = configuration[element_type][
"property_list"
] || [];
var updateDefaultData = function (data, property_list) {
$.each(property_list, function (idx, value) {
if (value) {
if (element[value.id]) {
data[value.id] = element[value.id];
} else if (value._class === "Dream.Property") {
data[value.id] = value._default;
} else if (value._class === "Dream.PropertyList") {
data[value.id] = {};
var next_data = data[value.id];
var next_property_list = value.property_list || [];
updateDefaultData(next_data, next_property_list);
}
}
});
};
updateDefaultData(data, property_list);
var update_dict = {data: data}
if (element.name) {
update_dict["name"] = element.name;
}
that.updateElementData(element.id, update_dict);
};
priv.super_start = that.start;
that.start = function () {
// XXX Migrate this part now!
priv.super_start();
priv.displayTool();
priv.initDialog();
that.initGeneralProperties();
that.prepareDialogForGeneralProperties();
};
that.readGeneralPropertiesDialog = function () {
// handle Dream.General properties
var prefix = "General-",
properties = {}, prefixed_property_id;
$.each(configuration['Dream-Configuration']['property_list'],
function (idx, property) {
if (property._class === "Dream.Property") {
prefixed_property_id = prefix + property.id;
properties[property.id] = $("#" + prefixed_property_id).val();
if (property.type === "number" && properties[property.id] !== "") {
properties[property.id] = parseFloat(properties[property.id])
}
}
});
that.setGeneralProperties(properties);
}
that.displayResult = function (idx, result) {
// the list of available widgets, in the same order that in html
var available_widget_list = [
'station_utilisation_graph',
'capacity_utilisation_graph',
'exit_stat',
'queue_stat',
'job_schedule_spreadsheet',
'job_gantt',
'debug_json',
];
// The active tab is the one that is selected or the first one that is
// enabled
var active_tab;
if ($("#reports").data("ui-tabs")) {
active_tab = $("#reports").tabs("option", "active");
} else {
for (var i in available_widget_list) {
if (configuration['Dream-Configuration'].gui[available_widget_list[i]]) {
active_tab = i;
break;
}
}
}
$('li.result').removeClass('active');
$($('li.result')[idx]).addClass('active');
if ($("#reports").data("ui-tabs")) {
$("#reports").tabs("destroy");
}
for (var i in available_widget_list) {
var widget_name = available_widget_list[i];
if (configuration['Dream-Configuration'].gui[widget_name]) {
$("li > a[href='#" + widget_name + "']").parent().show();
} else {
$("li > a[href='#" + widget_name + "']").parent().hide();
}
}
// hack: make the tabs full width
$("#reports li").width((100/$("#reports li:visible").length) - 1 +'%');
$("#reports li a").width('100%').css({'text-align': 'left'});
$("#reports").show().tabs({ active: active_tab });
}
return that;
};
}(window, jQuery, jsPlumb, console));
/* ===========================================================================
* Copyright 2013 Nexedi SA and Contributors
*
* This file is part of DREAM.
*
* DREAM is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DREAM is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with DREAM. If not, see <http://www.gnu.org/licenses/>.
* =========================================================================== */
(function ($) {
"use strict";
jsPlumb.bind("ready", function () {
var dream_instance, jio;
dream_instance = Dream(configuration);
dream_instance.start();
$(".tool").draggable({
containment: '#main',
opacity: 0.7,
helper: "clone",
cursorAt: {
top: 0,
left: 0
},
stop: function (event) {
var box_top, box_left, _class;
var offset = $("#main").offset();
box_top = event.clientY - offset.top + "px";
box_left = event.clientX - offset.left + "px";
var relative_position = dream_instance.convertToRelativePosition(
box_left, box_top);
_class = event.target.id.replace('-', '.'); // XXX - vs .
dream_instance.newElement({
coordinate: {
top: relative_position[1],
left: relative_position[0]
},
_class: _class
});
}
});
var loadData = function (data) {
dream_instance.clearAll();
$('#reports').hide();
$('#result_zone').hide();
$('#shift_spreadsheet').hide();
$("#wip_part_spreadsheet").hide();
$('#capacity_by_project_spreadsheet').hide();
$('#capacity_by_station_spreadsheet').hide();
if (configuration['Dream-Configuration'].gui.shift_spreadsheet){
$("#shift_spreadsheet").show();
}
if (configuration['Dream-Configuration'].gui.capacity_by_project_spreadsheet){
$("#capacity_by_project_spreadsheet").show();
}
if (configuration['Dream-Configuration'].gui.capacity_by_station_spreadsheet){
$("#capacity_by_station_spreadsheet").show();
}
try {
// // spreadsheets
// var shift_spreadsheet_data = data.shift_spreadsheet;
// if (shift_spreadsheet_data !== undefined) {
// var spreadsheet = $('#shift_spreadsheet');
// spreadsheet.handsontable('populateFromArray', 0, 0, shift_spreadsheet_data);
// }
var wip_part_spreadsheet_data = data.wip_part_spreadsheet;
if (wip_part_spreadsheet_data !== undefined) {
var spreadsheet = $('#wip_part_spreadsheet');
spreadsheet.handsontable('populateFromArray', 0, 0, wip_part_spreadsheet_data);
}
var capacity_by_project_spreadsheet_data = data.capacity_by_project_spreadsheet;
if (capacity_by_project_spreadsheet_data !== undefined) {
var spreadsheet = $('#capacity_by_project_spreadsheet');
spreadsheet.handsontable('populateFromArray', 0, 0, capacity_by_project_spreadsheet_data);
}
var capacity_by_station_spreadsheet_data = data.capacity_by_station_spreadsheet;
if (capacity_by_station_spreadsheet_data !== undefined) {
var spreadsheet = $('#capacity_by_station_spreadsheet');
var hot = spreadsheet.handsontable('getInstance');
hot.updateSettings({
minCols: Math.min(capacity_by_station_spreadsheet_data.length, 3) })
hot.populateFromArray(0, 0, capacity_by_station_spreadsheet_data);
}
var preference = data.preference !== undefined ?
data.preference : {};
dream_instance.setPreferences(preference);
// Add all elements
var coordinates = preference['coordinates'];
$.each(data.nodes, function (key, value) {
if (coordinates === undefined || coordinates[key] === undefined) {
value['coordinate'] = {
'top': 0.0,
'left': 0.0
};
} else {
value['coordinate'] = coordinates[key];
}
value['id'] = key;
dream_instance.newElement(value);
if (value.data) { // backward compatibility
dream_instance.updateElementData(key, {
data: value.data
});
}
});
$.each(data.edges, function (key, value) {
dream_instance.addEdge(key, value);
});
dream_instance.updateGeneralProperties(data.general);
dream_instance.prepareDialogForGeneralProperties();
if ($.isEmptyObject(coordinates)) {
dream_instance.positionGraph();
} else {
dream_instance.redraw();
}
} catch (e) {
alert('Loading data failed.');
console.error(e);
}
};
// Check if there is already data when we first load the page, if yes, then build graph from it
jio.get({
_id: "dream_demo"
}, function (err, response) {
if (response !== undefined && response.data !== undefined) {
var load = function () {
loadData(response.data);
}
jsPlumb.doWhileSuspended(load);
}
// once the data is read, we can subscribe to every changes
$.subscribe("Dream.Gui.onDataChange", function (event, data) {
jio.put({
_id: "dream_demo",
data: data
}, function (err, response) {});
});
});
// // Enable "Run Simulation" button
// $("#run_simulation").button().click(
// function (e) {
// $("#loading_spinner").show();
// $("#run_simulation").button('disable');
// dream_instance.runSimulation(
// function (data) {
// $("#loading_spinner").hide();
// $("#run_simulation").button('enable');
// $("#reports").show();
// $("#result_zone").show();
// $('#result_list').empty();
// $('#error').empty();
// if (data['success']) {
//
$.each(data.data, function (idx, result) {
$('#result_list').append('<li class="result"></li>');
$('#result_list').children().last().text(idx + ' : ' + result['score'] + ' ' + result['key']).click(
function (e) {
dream_instance.displayResult(idx, result)
}
);
});
dream_instance.displayResult(0, data.data[0]);
// } else {
// $("#reports").hide();
// $("#error").text(data["error"]).show().effect('shake', 50);
// console.error(data['error'])
// }
// });
// e.preventDefault();
// return false;
// });
// Enable "Layout Graph" button
$("#layout_graph").button().click(
function (e) {
dream_instance.positionGraph();
});
// Enable "Clear All" button
$("#clear_all").button().click(
function (e) {
if (confirm("Are you sure you want to clear all ?")) {
dream_instance.clearAll();
e.preventDefault();
}
return false;
});
// Enable "Zoom +" button
$("#zoom_in").button().click(
function (e) {
dream_instance.zoom_in();
});
// Enable "Zoom -" button
$("#zoom_out").button().click(
function (e) {
dream_instance.zoom_out();
});
// // Enable "Import" button
// $("#import").button().click(
// function (e) {
// $('#import_file').click();
// });
// $("#import_file").change(function () {
// var form = $(this).parent('form')[0];
// var form_data = new FormData(form);
// $.ajax('../postJSONFile', {
// type: 'POST',
// contentType: false,
// processData: false,
// data: form_data,
// dataType: 'json',
// error: function () {
// console.error('error');
// },
// success: function (data, textStatus, jqXHR) {
// form.reset();
loadData(data);
// }
// });
// return false;
// });
// Redraw if the graph area or the window is resized
$('#main').resizable().resize(function () {
dream_instance.redraw();
});
$(window).resize(function () {
dream_instance.redraw();
});
$("#job_schedule_spreadsheet").hide();
$("#shift_spreadsheet").hide();
$("#capacity_by_project_spreadsheet").hide();
$("#capacity_by_station_spreadsheet").hide();
}
});
});
})(jQuery);
/* ===========================================================================
* Copyright 2013 Nexedi SA and Contributors
*
* This file is part of DREAM.
*
* DREAM is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DREAM is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with DREAM. If not, see <http://www.gnu.org/licenses/>.
* =========================================================================== */
(function (scope, $, jsPlumb, console) {
"use strict";
scope.jsonPlumb = function () {
var that = {}, priv = {};
that.getNodeId = function (element_id) {
var node_id;
$.each(priv.node_container, function (k, v) {
if (v['element_id'] === element_id) {
node_id = k;
return false;
}
});
return node_id;
};
that.getElementId = function (node_id) {
return priv.node_container[node_id].element_id;
};
that.generateNodeId = function (element_type, option) {
var n = 1;
while (((option['short_id'] || element_type) + n) in priv.node_container) {
n += 1;
}
return (option['short_id'] || element_type) + n;
};
that.generateElementId = function () {
var n = 1;
while ($('#DreamNode_' + n).length > 0) {
n += 1;
}
return 'DreamNode_' + n;
};
priv.initJsPlumb = function () {
jsPlumb.setRenderMode(jsPlumb.SVG);
var color = "#00f";
jsPlumb.importDefaults({
HoverPaintStyle: {
strokeStyle: "#1e8151",
lineWidth: 2
},
Endpoint: ["Dot", {
radius: 2
}],
ConnectionOverlays: [
["Arrow", {
location: 1,
id: "arrow",
length: 14,
foldback: 0.8
}]
],
Container: "main"
});
// listen for clicks on connections, and offer to change values on click.
jsPlumb.bind("click", function (conn) {
jsPlumb.detach(conn);
});
jsPlumb.bind("beforeDetach", function (conn) {
return confirm("Delete connection?");
});
jsPlumb.bind("connectionDrag", function (connection) {});
jsPlumb.bind("connectionDragStop", function (connection) {});
// split in 2 methods ? one for events one for manip
that.updateConnectionData = function (connection, remove, edge_data) {
if (remove) {
delete(priv.edge_container[connection.id]);
} else {
priv.edge_container[connection.id] = [
that.getNodeId(connection.sourceId),
that.getNodeId(connection.targetId), edge_data || {}
];
}
priv.onDataChange();
};
// bind to connection/connectionDetached events, and update the list of connections on screen.
jsPlumb.bind("connection", function (info, originalEvent) {
that.updateConnectionData(info.connection);
});
jsPlumb.bind("connectionDetached", function (info, originalEvent) {
that.updateConnectionData(info.connection, true);
});
priv.onDataChange();
priv.draggable();
};
priv.initSpreadSheet = function () {
var wip_part_spreadsheet = $('#wip_part_spreadsheet');
var data = [
[
"Order ID",
"Due Date",
"Priority",
"Project Manager",
"Part",
"Part Type",
"Sequence",
"Processing Times",
"Prerequisites Parts"
]
];
wip_part_spreadsheet.handsontable({
data: data,
minSpareRows: 1,
stretchH: 'all',
width: function () {
return $(window).width() -
wip_part_spreadsheet.offset().left +
$(window).scrollLeft();
},
afterChange: function () {
priv.onDataChange();
},
});
var shift_spreadsheet = $('#shift_spreadsheet');
var data = [
[
"Day",
"Machines", // XXX more generic name ?
"Start",
"End"
]
];
shift_spreadsheet.handsontable({
data: data,
minSpareRows: 1,
stretchH: 'all',
width: function () {
return $(window).width() -
shift_spreadsheet.offset().left +
$(window).scrollLeft();
},
afterChange: function () {
priv.onDataChange();
}
});
var capacity_by_project_spreadsheet = $('#capacity_by_project_spreadsheet');
var data = [
[
"Project Name",
"Sequence",
"Capacity Requirements"
]
];
capacity_by_project_spreadsheet.handsontable({
data: data,
minSpareRows: 1,
stretchH: 'all',
width: function () {
return $(window).width() -
capacity_by_project_spreadsheet.offset().left +
$(window).scrollLeft();
},
afterChange: function () {
priv.onDataChange();
}
});
var capacity_by_station_spreadsheet = $('#capacity_by_station_spreadsheet');
var data = [
[
"Day",
"CS1",
"CS2"
]
];
capacity_by_station_spreadsheet.handsontable({
data: data,
minSpareRows: 1,
minSpareCols: 1, // Allow adding columns
stretchH: 'all',
width: function () {
return $(window).width() -
capacity_by_station_spreadsheet.offset().left +
$(window).scrollLeft();
},
afterChange: function () {
priv.onDataChange();
}
});
};
priv.updateElementCoordinate = function (node_id, coordinate) {
var element_id = priv.node_container[node_id].element_id;
var coordinates = priv.preference_container['coordinates'] || {}, element;
if (coordinate === undefined) {
coordinate = {};
element = $("#" + element_id);
var relative_position = that.convertToRelativePosition(
element.css('left'), element.css('top'));
coordinate.top = relative_position[1];
coordinate.left = relative_position[0];
}
coordinates[node_id] = coordinate;
priv.preference_container['coordinates'] = coordinates;
priv.onDataChange();
return coordinate;
};
priv.updateNodeStyle = function (element_id) {
var zoom_level = (priv.preference_container['zoom_level'] || 1.0) * 1.1111;
var element = $("#" + element_id);
$.each(priv.style_attr_list, function (i, j) {
var new_value = $('.dummy_window').css(j).replace('px', '') * zoom_level + 'px';
element.css(j, new_value);
});
};
priv.convertToAbsolutePosition = function (x, y) {
var zoom_level = (priv.preference_container['zoom_level'] || 1.0) * 1.1111;
var canvas_size_x = $('#main').width();
var canvas_size_y = $('#main').height();
var size_x = $('.dummy_window').width() * zoom_level;
var size_y = $('.dummy_window').height() * zoom_level;
var top = Math.floor(y * (canvas_size_y - size_y)) + "px";
var left = Math.floor(x * (canvas_size_x - size_x)) + "px";
return [left, top];
};
that.convertToRelativePosition = function (x, y) {
var zoom_level = (priv.preference_container['zoom_level'] || 1.0) * 1.1111;
var canvas_size_x = $('#main').width();
var canvas_size_y = $('#main').height();
var size_x = $('.dummy_window').width() * zoom_level;
var size_y = $('.dummy_window').height() * zoom_level;
var top = Math.max(Math.min(y.replace('px', '') / (canvas_size_y - size_y), 1), 0);
var left = Math.max(Math.min(x.replace('px', '') / (canvas_size_x - size_x), 1), 0);
return [left, top];
};
priv.draggable = function () {
var stop = function (element) {
priv.updateElementCoordinate(that.getNodeId(element.target.id));
};
jsPlumb.draggable(jsPlumb.getSelector(".window"), {
containment: 'parent',
grid: [10, 10],
stop: stop // FIXME: we should only accept if dropped in #main
});
jsPlumb.makeSource(jsPlumb.getSelector(".window"), {
filter: ".ep",
anchor: "Continuous",
connector: ["StateMachine", {
curviness: 20
}],
connectorStyle: {
strokeStyle: "#5c96bc",
lineWidth: 2,
outlineColor: "transparent",
outlineWidth: 4
}
});
jsPlumb.makeTarget(jsPlumb.getSelector(".window"), {
dropOptions: {
hoverClass: "dragHover"
},
anchor: "Continuous"
});
};
priv.addElementToContainer = function (element) {
// Now update the container of elements
var element_data = {
_class: element._class,
element_id: element.element_id,
};
priv.node_container[element.id] = element_data;
};
priv.onDataChange = function () {
$.publish("Dream.Gui.onDataChange", priv.getData());
};
priv.style_attr_list = ['width', 'height', 'padding-top', 'line-height'];
that.positionGraph = function () {
$.ajax(
'/positionGraph', {
data: JSON.stringify(priv.getData()),
contentType: 'application/json',
type: 'POST',
success: function (data, textStatus, jqXHR) {
$.each(data, function (node, pos) {
var absolute_position = priv.convertToAbsolutePosition(
pos.left, pos.top);
priv.updateElementCoordinate(node, {
top: pos.top,
left: pos.left
});
});
that.redraw();
}
});
};
that.setZoom = function (zoom_level) {
$.each(priv.style_attr_list, function (i, j) {
var new_value = $('.dummy_window').css(j).replace('px', '') * zoom_level + 'px';
$('.window').css(j, new_value);
});
};
that.zoom_in = function () {
var zoom_level = (priv.preference_container['zoom_level'] || 1.0) * 1.1111;
that.setZoom(zoom_level);
priv.preference_container['zoom_level'] = zoom_level;
priv.onDataChange();
that.redraw();
};
that.zoom_out = function () {
var zoom_level = (priv.preference_container['zoom_level'] || 1.0) * 0.9;
that.setZoom(zoom_level);
priv.preference_container['zoom_level'] = zoom_level;
priv.onDataChange();
that.redraw();
};
that.redraw = function () {
var coordinates = priv.preference_container['coordinates'] || {};
$.each(coordinates, function (node_id, v) {
var absolute_position = priv.convertToAbsolutePosition(
v['left'], v['top']);
var element = $('#' + that.getElementId(node_id));
element.css('top', absolute_position[1]);
element.css('left', absolute_position[0]);
jsPlumb.repaint(element);
});
};
priv.getData = function () {
var data = {
"nodes": priv.node_container,
"edges": priv.edge_container,
"preference": priv.preference_container,
"general": priv.general_container
};
var wip_spreadsheet = $('#wip_spreadsheet');
if (wip_spreadsheet.length > 0) {
data['wip_spreadsheet'] = wip_spreadsheet.handsontable('getData');
}
var wip_part_spreadsheet = $('#wip_part_spreadsheet');
if (wip_part_spreadsheet.length > 0) {
data['wip_part_spreadsheet'] = wip_part_spreadsheet.handsontable('getData');
}
var shift_spreadsheet = $('#shift_spreadsheet');
if (shift_spreadsheet.length > 0) {
data['shift_spreadsheet'] = shift_spreadsheet.handsontable('getData');
}
var capacity_by_project_spreadsheet = $('#capacity_by_project_spreadsheet');
if (capacity_by_project_spreadsheet.length > 0) {
data['capacity_by_project_spreadsheet'] = capacity_by_project_spreadsheet.handsontable('getData');
}
var capacity_by_station_spreadsheet = $('#capacity_by_station_spreadsheet');
if (capacity_by_station_spreadsheet.length > 0) {
data['capacity_by_station_spreadsheet'] = capacity_by_station_spreadsheet.handsontable('getData');
}
return data;
};
priv.removeElement = function (node_id) {
var element_id = priv.node_container[node_id].element_id;
jsPlumb.removeAllEndpoints($("#" + element_id));
$("#" + element_id).remove();
delete(priv.node_container[node_id]);
delete(priv.preference_container['coordinates'][node_id]);
$.each(priv.edge_container, function (k, v) {
if (node_id == v[0] || node_id == v[1]) {
delete(priv.edge_container[k]);
}
});
priv.onDataChange();
};
that.updateElementData = function (node_id, data) {
var element_id = priv.node_container[node_id].element_id;
if (data['name']) {
$("#" + element_id).text(data["name"]).append('<div class="ep"></div></div>');
priv.node_container[node_id].name = data['name'];
}
var new_id = data['id'];
delete(data['id']);
$.extend(priv.node_container[node_id], data.data);
if (new_id && new_id !== node_id) {
priv.node_container[new_id] = priv.node_container[node_id];
delete(priv.node_container[node_id]);
$.each(priv.edge_container, function (k, v) {
if (v[0] === node_id) {
v[0] = new_id;
}
if (v[1] === node_id) {
v[1] = new_id;
}
});
priv.preference_container['coordinates'][new_id] = priv.preference_container['coordinates'][node_id];
delete(priv.preference_container['coordinates'][node_id]);
}
priv.onDataChange();
};
that.start = function () {
priv.node_container = {};
priv.edge_container = {};
priv.preference_container = {};
priv.general_container = {};
priv.initJsPlumb();
priv.initSpreadSheet();
};
that.removeElement = function (node_id) {
priv.removeElement(node_id);
};
that.getData = function () {
return priv.getData();
};
that.clearAll = function () {
$.each(priv.node_container, function (node_id) {
priv.removeElement(node_id);
});
// delete anything if still remains
$("#main").children().remove();
priv.node_container = {};
priv.edge_container = {};
priv.preference_container = {};
priv.general_container = {};
priv.initSpreadSheet();
that.initGeneralProperties();
that.prepareDialogForGeneralProperties();
};
that.addEdge = function (edge_id, edge_data) {
var source_id = edge_data[0],
target_id = edge_data[1],
data = edge_data[2],
overlays = []
if (data && data.title){
overlays = [ ["Label", { cssClass:"l1 component label",
label: data.title,
}] ]
}
var connection = jsPlumb.connect({
source: that.getElementId(source_id),
target: that.getElementId(target_id),
Connector: [ "Bezier", { curviness:75 } ],
overlays:overlays
});
// call again updateConnectionData to set the connection data that
// was not passed to the connection hook
that.updateConnectionData(connection, 0, data)
};
that.setPreferences = function (preferences) {
priv.preference_container = preferences;
var zoom_level = priv.preference_container['zoom_level'] || 1.0;
that.setZoom(zoom_level);
};
that.setGeneralProperties = function (properties) {
priv.general_container = properties;
priv.onDataChange();
};
that.updateGeneralProperties = function (properties) {
$.extend(priv.general_container, properties);
priv.onDataChange();
};
that.newElement = function (element, option) {
element.name = element.name || option.name;
priv.addElementToContainer(element);
var render_element, style_string = "",
coordinate = element.coordinate,
box;
render_element = $("#main");
if (coordinate !== undefined) {
coordinate = priv.updateElementCoordinate(element.id, coordinate);
}
render_element.append('<div class="window ' + element._class.replace('.', '-') + '" id="' +
element.element_id + '" title="' + (element.name || element.id) + '">' + element.id + '<div class="ep"></div></div>');
box = $("#" + element.element_id);
var absolute_position = priv.convertToAbsolutePosition(
coordinate.left, coordinate.top);
box.css("top", absolute_position[1]);
box.css("left", absolute_position[0]);
priv.updateNodeStyle(element.element_id);
priv.draggable();
priv.onDataChange();
};
return that;
};
}(window, jQuery, jsPlumb, console));
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment