This commit is contained in:
2018-09-14 21:27:03 +08:00
parent 4492ce10b4
commit b8695492df
165 changed files with 25343 additions and 0 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+932
View File
@@ -0,0 +1,932 @@
.dialog-select-object-ids {
/** inline edit **/
/**/
/*select ~ .select-id-quick-edit-ok, // only if type = combobx
select ~ .select-id-quick-edit-cancel { // only if type = combobx
top:1px;
}*/
}
.dialog-select-object-ids .true {
color: #06960E;
font-weight: bold;
}
.dialog-select-object-ids .false {
color: #D92626;
font-weight: normal;
}
.dialog-select-object-ids .error {
color: #D92626;
font-weight: normal;
}
.dialog-select-object-ids .highlight {
animation: highlight 2s;
}
.dialog-select-object-ids .grid-main-div {
height: calc(100% - 50px);
}
.dialog-select-object-ids .grid-main-wh-div {
height: calc(100% - 22px);
}
.dialog-select-object-ids .grid-main-wob-div {
height: calc(100% - 38px - 26px);
}
.dialog-select-object-ids .grid-main-wh-div,
.dialog-select-object-ids .grid-main-wob-div {
overflow-x: hidden;
width: 100%;
padding: 0;
overflow-y: scroll;
}
.dialog-select-object-ids .grid-main-wh-div > table,
.dialog-select-object-ids .grid-main-wob-div > table {
width: calc(100% - 5px);
}
@-moz-keyframes spin {
100% {
-moz-transform: rotate(360deg);
}
}
@-webkit-keyframes spin {
100% {
-webkit-transform: rotate(360deg);
}
}
@keyframes spin {
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
.dialog-select-object-ids .objects-folder {
height: 0.8em;
width: 0.8em;
margin: 0.3em;
}
.dialog-select-object-ids .objects-name-coll-table-td {
border-spacing: 0;
padding: 0;
margin: 0;
border: 0;
}
.dialog-select-object-ids .objects-name-coll-icon {
/*position: relative;*/
/*top: 3px;*/
vertical-align: sub;
}
.dialog-select-object-ids .objects-name-coll-title {
border-spacing: 0;
padding: 0;
margin: 0;
border: 0;
display: inline-block;
padding-left: 5px;
vertical-align: middle;
}
.dialog-select-object-ids .objects-inline-edit {
width: 100%;
height: 24px;
border: 0;
padding: 0;
margin: 0;
padding-left: 4px;
}
.dialog-select-object-ids table.objects-list-table td {
border: 1px solid #e0e0e0;
}
.dialog-select-object-ids .objects-list-table {
background: #efefef;
white-space: nowrap;
table-layout: fixed;
border-collapse: collapse;
border-spacing: 0;
padding: 0;
overflow: auto;
font-family: "Segoe UI", Tahoma, Arial, "Courier New" !important;
font-weight: normal;
font-size: 0.82rem !important;
border-top: 0;
width: calc(100% - 10px);
margin: 0 5px 0 1px;
/* for mouse over rahmen */
outline: 5px;
outline-offset: -1px;
}
.dialog-select-object-ids .objects-list-table > tbody > tr > td {
padding-left: 5px;
}
.dialog-select-object-ids .objects-list-table .fancytree-title {
font-weight: normal !important;
}
.dialog-select-object-ids .select-id-quick-edit {
height: 17px;
}
.dialog-select-object-ids .select-id-quick-edit-buttons {
position: absolute;
z-index: 3;
top: 2px;
right: 5px;
}
.dialog-select-object-ids .select-id-quick-edit-buttons.text {
top: 23px;
}
.dialog-select-object-ids .select-id-quick-edit-buttons.text .select-id-quick-edit-ok,
.dialog-select-object-ids .select-id-quick-edit-buttons.text .select-id-quick-edit-cancel {
border: 1px solid gray;
background-color: white;
}
.dialog-select-object-ids .select-id-quick-edit-buttons .select-id-quick-edit-ok,
.dialog-select-object-ids .select-id-quick-edit-buttons .select-id-quick-edit-cancel {
cursor: pointer;
width: 16px;
height: 16px;
border-radius: 0;
display: inline-block;
}
.dialog-select-object-ids .objects-inline-edit {
position: relative;
left: -4px;
padding-left: 4px;
padding-right: 4px;
width: calc(100% - 0px);
z-index: 2;
font-family: "Segoe UI", Tahoma, Arial, "Courier New" !important;
font-size: 0.82rem;
vertical-align: middle;
text-overflow-mode: clip;
}
.dialog-select-object-ids .objects-name-coll-title .objects-inline-edit {
width: calc(100% + 4px - 1);
}
.dialog-select-object-ids input.objects-inline-edit {
width: calc(100% - 2px);
z-index: 2;
}
.dialog-select-object-ids .objects-list-table > colgroup > col:nth-child(8) {
width: 80px !important;
min-width: 80px !important;
}
.dialog-select-object-ids .filter-btn {
width: 18px;
height: 18px;
border: 0;
background: #fff;
}
.dialog-select-object-ids .main-header-table tr {
background: #ffffff;
}
.dialog-select-object-ids .main-header-table td.input {
width: 100%;
}
.dialog-select-object-ids .main-header-table select.filter option {
line-height: 0.5em;
background: #fff;
}
.dialog-select-object-ids .objects-list-running {
position: absolute;
top: 50%;
left: 50%;
width: 5rem;
padding: 12px;
background: rgba(185, 185, 185, 0.5);
text-align: center;
color: white;
font-weight: bold;
border-radius: 5px;
font-size: 10px;
}
.dialog-select-object-ids .ui-state-active.fancytree-active {
color: black !important;
}
.dialog-select-object-ids .ui-state-active.fancytree-active .ui-icon {
background-image: url(../lib/css/themes/jquery-ui/redmond/images/ui-icons_777777_256x240.png) !important;
}
.dialog-select-object-ids *::-webkit-scrollbar-track {
background-color: #ccc;
}
.dialog-select-object-ids *::-webkit-scrollbar {
width: 10px;
background-color: #ccc;
}
.dialog-select-object-ids *::-webkit-scrollbar-thumb {
background-color: #575757;
}
.dialog-select-object-ids .select-button-push,
.dialog-select-object-ids .select-button-edit,
.dialog-select-object-ids .select-button-ok,
.dialog-select-object-ids .select-button-cancel {
width: 26px;
height: 20px;
}
.dialog-select-object-ids .main-toolbar-table {
position: relative;
}
.dialog-select-object-ids .main-toolbar-table .select-id-custom-buttons {
display: inline-block;
}
.dialog-select-object-ids .main-toolbar-table .iob-toolbar-sep {
display: inline-block;
margin-left: 0.5rem;
}
.dialog-select-object-ids .main-toolbar-table .panel-button {
display: inline-block;
line-height: 24px;
height: 24px;
width: 24px;
color: #fff;
position: relative;
overflow: hidden;
z-index: 1;
padding: 0;
border-radius: 50%;
transition: background-color 0.3s;
cursor: pointer;
vertical-align: middle;
}
.dialog-select-object-ids .main-toolbar-table .panel-button:hover {
border: 0;
}
.dialog-select-object-ids .main-toolbar-table .panel-button i {
margin-left: -0.5px;
font-size: 1.1rem;
line-height: 28px;
margin-top: -1px;
}
.dialog-select-object-ids .main-toolbar-table .btn-expert {
margin-right: 3px;
}
.dialog-select-object-ids .main-toolbar-table .btn-history {
float: right;
margin-right: 20px;
}
.dialog-select-object-ids .main-toolbar-table .objects-info {
display: inline-block;
float: right;
padding-right: 1rem;
margin-top: 5px;
}
.dialog-select-object-ids .old-style .main-header-table {
width: 100%;
}
.dialog-select-object-ids .old-style .main-header-table th span {
font-size: 11px;
font-weight: normal;
}
.dialog-select-object-ids .old-style .grid-main-wob-div {
height: calc(100% - 50px);
}
.dialog-select-object-ids .old-style .iob-list-icon {
height: 16px;
}
.dialog-select-object-ids .old-style .clippy-button {
height: 16px;
}
.dialog-select-object-ids .old-style .ui-state-active,
.dialog-select-object-ids .old-style .ui-widget-content .ui-state-active {
background: inherit !important;
}
.dialog-select-object-ids .material .objects-list-running {
height: 5rem;
}
.dialog-select-object-ids .material .filter-btn i {
font-size: 12px;
}
.dialog-select-object-ids .material .td-button-placeholder {
width: 21px;
}
.dialog-select-object-ids .material .custom-obj-btn {
cursor: pointer;
color: #4c4c4c;
background: white;
border: 0;
padding-left: 4px;
margin-right: 1px;
margin-top: 3px;
}
.dialog-select-object-ids .material .custom-obj-btn:hover {
background: #64b5f6;
}
.dialog-select-object-ids .material .custom-obj-btn i {
font-size: 12px;
}
.dialog-select-object-ids .material .iob-list-icon,
.dialog-select-object-ids .material .instance-image {
width: 18px;
height: 18px;
}
.dialog-select-object-ids .material .main-toolbar-table .panel-button {
background-color: #2196f3;
}
.dialog-select-object-ids .main-header-table th {
border-right: 1px solid #b9b9b9;
color: gray;
}
.dialog-select-object-ids .main-header-table .filter {
display: inline-block;
border: 0;
height: 24px;
width: calc(100% - 5px);
padding: 0 0 0 5px;
background: transparent;
color: gray;
font-family: "Segoe UI", Tahoma, Arial, "Courier New" !important;
font-size: 0.82rem !important;
margin-bottom: 0;
}
.dialog-select-object-ids .main-header-table .filter-btn {
display: none;
}
.dialog-select-object-ids .main-header-table .filter-active .filter {
color: black;
width: calc(100% - 24px);
}
.dialog-select-object-ids .main-header-table .filter-active .filter-btn {
padding: 0;
display: inline-block;
width: 19px;
height: 16px;
background: transparent;
border: 0;
margin-top: 3px;
}
.dialog-select-object-ids .main-header-table .filter-active .filter-btn i {
font-size: 12px;
}
.dialog-select-object-ids .clippy-button,
.dialog-select-object-ids .edit-dialog-button {
position: absolute;
top: 1px;
z-index: 1;
margin-top: 1px;
}
.dialog-select-object-ids .clippy-button .tiny,
.dialog-select-object-ids .edit-dialog-button .tiny {
font-size: 10px;
}
.dialog-select-object-ids .clippy-button {
right: 0;
}
.dialog-select-object-ids .edit-dialog-button {
right: 22px;
}
.dialog-select-object-ids .edit-enum .edit-dialog-button {
right: 0;
}
.dialog-select-object-ids .select-value {
display: inline-block;
width: 100%;
padding-left: 5px;
position: relative;
}
@keyframes highlight {
0% {
color: #00f900;
}
80% {
color: green;
}
100% {
color: black;
}
}
.dialog-select-object-ids .highlight {
animation: highlight 2s;
}
.dialog-select-object-ids .select-button-push {
background: white;
border: none;
}
.dialog-select-object-ids .select-button-push i {
font-size: 16px;
margin-left: -1px;
}
#select-id-dialog > span {
float: left;
margin: 0 7px 50px 0;
}
.m #dialog-select-member {
width: calc(100% - 2rem);
height: calc(100% - 2rem) !important;
border: 3px solid #2196f3;
box-sizing: border-box;
}
.m #dialog-select-member td,
.m #dialog-select-member th {
padding: 1px 4px;
}
.m #dialog-select-member .modal-content {
padding: 0.5rem 0.2rem !important;
width: 100% !important;
overflow: hidden;
}
.m #dialog-select-member .modal-content .title {
padding: 3px 10px;
}
.m #dialog-select-member .modal-content .grid-main-wob-div {
height: calc(100% - 103px);
}
.m #dialog-enum-edit {
top: 1rem !important;
height: calc(100% - 2rem);
max-height: calc(100% - 2rem);
}
.m #dialog-enum-edit .dialog-enum-list-col {
height: calc(100% - 81px);
overflow-y: auto;
overflow-x: hidden;
}
.m #dialog-enum-edit .dialog-enum-list-col .dialog-enum-list-id {
margin-left: 10px;
font-size: 10px;
}
.m #dialog-enum-edit .dialog-enum-list-col .iob-list-icon {
height: 24px;
width: 24px;
}
.m #dialog-enum-edit .dialog-enum-list-col .title {
padding-left: 10px;
font-size: 18px;
}
.m #dialog-enum-edit .btn-close {
background-color: #b5b5b5;
}
.m #dialog-enum-edit .name {
margin-left: 10px;
}
body {
font-size: 12px;
margin: 0;
padding: 0;
height: 100%;
font-family: "Segoe UI", Tahoma, Arial, "Courier New" !important;
font-weight: normal;
overflow: hidden;
background: #fff;
}
/* Load material icons */
@font-face {
font-family: 'Material Icons';
font-style: normal;
font-weight: 400;
src: url(../lib/fonts/material.woff2) format('woff2'), url(../lib/fonts/material.woff) format('woff');
}
.material-icons {
font-family: 'Material Icons';
font-weight: normal;
font-style: normal;
font-size: 24px;
line-height: 1;
letter-spacing: normal;
text-transform: none;
display: inline-block;
white-space: nowrap;
word-wrap: normal;
direction: ltr;
-webkit-font-feature-settings: 'liga';
-webkit-font-smoothing: antialiased;
}
#tabs {
padding: 0;
margin: 0;
border: none;
border-radius: 0;
}
#connecting {
left: 0;
top: 0;
width: 100%;
height: 100%;
position: fixed;
background: rgba(0, 0, 0, 0.3);
z-index: 20000;
}
#connecting .connecting-div {
left: 40%;
top: 40%;
width: 20%;
height: 20%;
position: absolute;
}
#connecting .connecting-div .spinner {
animation: rotator 1.4s linear infinite;
}
#connecting .connecting-div .path {
stroke-dasharray: 187;
stroke-dashoffset: 0;
transform-origin: center;
animation: dash 1.4s ease-in-out infinite, colors 5.6s ease-in-out infinite;
}
/* -------------------------- LEDS ------------------------------------ */
.led-all,
.led-green,
.led-yellow,
.led-gray,
.led-red,
.led-orange,
.led-blue {
border-radius: 50%;
box-shadow: #555D0D 0 0 1px 1px, #446f44 0 0 0, inset #e44949 0 0 0;
height: 0.9em;
width: 0.9em;
margin-left: 0.6em;
}
.led-red {
background-color: #FF9999;
}
.led-green {
background-color: #86d686;
}
.led-yellow {
background-color: #A90;
}
.led-orange {
background-color: #F7E43B;
}
.led-blue {
background-color: #4AB;
}
.led-gray {
background-color: #bababa;
}
.user-view #current-user-icon img {
height: 96px;
width: auto;
border-radius: 96px;
}
/****/
.main-admin-buttons {
border-spacing: 4px;
width: auto;
position: relative;
height: 27px;
margin-top: 1px;
padding-left: 0.5rem;
}
.main-admin-buttons #host-adapters {
min-width: 200px;
}
.main-admin-buttons #host-adapters .imgHost {
max-height: 30px;
margin-top: -3px;
padding-right: 1rem;
}
.main-admin-buttons #host-adapters a {
margin-left: 0;
white-space: nowrap;
}
.main-admin-buttons .dropdown-button {
padding-left: 5px;
}
.main-admin-buttons .dropdown-button .imgHost {
max-height: 30px;
padding-top: 3px;
margin-right: 5px;
}
.main-admin-buttons a {
margin-left: 1.5rem;
}
.main-admin-buttons .safari #host-adapters-btn,
.main-admin-buttons .ie #host-adapters-btn {
margin-top: 10px !important;
}
.main-admin-buttons .button-version {
color: #FFF;
position: absolute;
top: 0;
right: 4rem;
}
.main-admin-buttons .button-icon {
position: absolute;
top: 1rem;
right: 1rem;
}
.main-admin-buttons .button-icon img {
width: 32px;
}
@media screen and (min-width: 600px) and (max-width: 700px) {
.main-admin-buttons .button-version {
display: none;
}
}
@media screen and (max-width: 600px) {
.main-admin-buttons .button-icon,
.main-admin-buttons .button-version {
display: none;
}
}
.main-admin-buttons .button-current-user {
padding-left: 1rem;
}
.main-admin-buttons .button-current-user div {
position: relative;
height: 64px;
}
.main-admin-buttons .button-current-user div span {
position: absolute;
top: 0;
left: 2rem;
}
.main-admin-buttons .safari li,
.main-admin-buttons .ie li {
vertical-align: middle;
}
.ram-info-td {
white-space: nowrap;
font-size: 14px;
font-family: "Segoe UI", Tahoma, Arial, "Courier New" !important;
font-weight: normal;
}
.ram-font-weight {
font-weight: 600;
}
.choose-tabs-config-button {
height: 34px;
width: 18px;
background: #fff;
position: relative;
text-align: center;
font-size: 10px;
color: #a0a0a0;
cursor: pointer;
}
.events-grid-div {
height: calc(100% - 24px) !important;
}
table#grid-states {
border-collapse: collapse;
}
table#grid-states {
position: relative;
top: -1px;
}
table#grid-states > tbody > tr {
font-family: "Segoe UI", Tahoma, Arial, "Courier New" !important;
font-weight: normal;
font-size: 0.82rem !important;
border: 1px solid #e0e0e0 !important;
white-space: nowrap;
border: 0;
height: 25px !important;
padding: 0;
padding-left: 5px;
}
table#grid-states > tbody > tr:first-child {
height: 0 !important;
visibility: hidden !important;
}
table#grid-groups {
border-collapse: collapse;
}
table#grid-groups {
position: relative;
top: -1px;
}
table#grid-groups > tbody > tr {
font-family: "Segoe UI", Tahoma, Arial, "Courier New" !important;
font-weight: normal;
font-size: 0.82rem !important;
border: 1px solid #e0e0e0 !important;
white-space: nowrap;
border: 0;
height: 25px !important;
padding: 0;
padding-left: 5px;
}
table#grid-groups > tbody > tr:first-child {
height: 0 !important;
visibility: hidden !important;
}
table#grid-users {
border-collapse: collapse;
}
table#grid-users {
position: relative;
top: -1px;
}
table#grid-users > tbody > tr {
font-family: "Segoe UI", Tahoma, Arial, "Courier New" !important;
font-weight: normal;
font-size: 0.82rem !important;
border: 1px solid #e0e0e0 !important;
white-space: nowrap;
border: 0;
height: 25px !important;
padding: 0;
padding-left: 5px;
}
table#grid-users > tbody > tr:first-child {
height: 0 !important;
visibility: hidden !important;
}
table#grid-enums {
border-collapse: collapse;
}
table#grid-enums {
position: relative;
top: -1px;
}
table#grid-enums > tbody > tr {
font-family: "Segoe UI", Tahoma, Arial, "Courier New" !important;
font-weight: normal;
font-size: 0.82rem !important;
border: 1px solid #e0e0e0 !important;
white-space: nowrap;
border: 0;
height: 25px !important;
padding: 0;
padding-left: 5px;
}
table#grid-enums > tbody > tr:first-child {
height: 0 !important;
visibility: hidden !important;
}
.admin-tab {
height: calc(100% - 47px);
}
.grid-main-div {
height: calc(100% - 50px);
}
#grid-instances-head > tr {
height: 24px;
}
#grid-hosts-head > tr:first-child {
height: 24px;
}
#iob-body .ui-button-text-only,
#iob-body .ui-button-text {
font-size: 0.82rem !important;
font-family: "Segoe UI", Tahoma, Arial, "Courier New" !important;
font-weight: normal;
}
.dialog-icon {
float: right;
}
.dialog-text {
font-size: 1.2rem;
}
#dialog-host-update p {
font-size: 1rem;
}
#dialog-host-update textarea {
font-family: monospace;
width: 100%;
height: 7rem;
resize: none;
}
#dialog-license-main h5 {
background: #64b5f6;
color: #FFF;
padding: 0.5rem;
}
#dialog-license-main .license-text {
margin-bottom: 0;
}
#dialog-license-main .license_text {
width: 100%;
height: calc(100% - 190px);
margin-bottom: 0;
overflow: auto;
}
#dialog-license-main input[type="checkbox"].filled-in:not(:checked) + span:not(.lever):after {
-webkit-animation: colorBlink 3s ease-out infinite;
-moz-animation: colorBlink 3s ease-out infinite;
-o-animation: colorBlink 3s ease-out infinite;
animation: colorBlink 3s ease-out infinite;
}
#dialog-license-main .license-checkbox-box {
color: #ff636e;
}
@-webkit-keyframes colorBlink {
0% {
border-color: #5a5a5a;
}
50% {
border-color: #ff636e;
}
100% {
border-color: #5a5a5a;
}
}
@-moz-keyframes colorBlink {
0% {
border-color: #5a5a5a;
}
50% {
border-color: #ff636e;
}
100% {
border-color: #5a5a5a;
}
}
@-o-keyframes colorBlink {
0% {
border-color: #5a5a5a;
}
50% {
border-color: #ff636e;
}
100% {
border-color: #5a5a5a;
}
}
@keyframes colorBlink {
0% {
border-color: #5a5a5a;
}
50% {
border-color: #ff636e;
}
100% {
border-color: #5a5a5a;
}
}
.modal-overlay {
background: gray;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
#dialog-command .title {
background: #64b5f6;
color: #FFF;
padding: 0.5rem;
}
#dialog-command .textarea .ack {
margin-bottom: 0;
}
#dialog-command textarea {
background: #e9e9e9;
font-family: courier, monospace;
font-size: 11px;
resize: none;
width: 100%;
height: calc(100% - 185px);
margin-bottom: 0;
}
#dialog-command .progress-dont-close {
float: left;
padding-left: 1rem;
padding-top: 1rem;
/*&.disabled {
opacity: 0.5;
pointer-events: none;
}*/
}
#dialog-command .switch {
text-align: right;
}
#dialog-command .command {
font-style: italic;
}
#dialog-command .btn {
margin-right: 1.5rem;
}
#dialog-command .progress-text {
font-size: 14px;
}
#dialog-command .progress-text.error {
color: #ff636e;
}
.button-command {
right: 12rem;
position: absolute;
top: 0;
cursor: pointer;
}
.button-command.error::after {
content: "";
background: #ff636e;
position: absolute;
opacity: 0.5;
top: 1.4rem;
bottom: 1.4rem;
left: 0;
right: 0;
}
.button-command.in-progress {
animation-name: in-progress;
animation-duration: 2s;
animation-iteration-count: infinite;
}
@keyframes in-progress {
0% {
opacity: 1;
}
50% {
opacity: 0.3;
}
100% {
opacity: 1;
}
}
.text-overflow {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.dialog-system-buttons a {
margin: 0.5em;
}
/*# sourceMappingURL=admin.css.map */
File diff suppressed because one or more lines are too long
+10
View File
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 870 B

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 659 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

+14
View File
@@ -0,0 +1,14 @@
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'>
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" xmlns:xlink="http://www.w3.org/1999/xlink" enable-background="new 0 0 512 512">
<g>
<g>
<path d="m256,92.3c-74.2,0-127.8,55.3-136.3,114.7-5.3,39.6 7.5,78.2 34.1,107.4 23.4,25 36.2,58.4 36.2,92.8l-.1,54.2c0,21.9 18.1,39.6 40.5,39.6h52.2c22.4,0 40.5-17.7 40.5-39.6l.1-54.2c0-35.4 11.7-67.8 34.1-90.7 24.5-25 37.3-57.3 37.3-90.7-0.1-74.1-63-133.5-138.6-133.5zm46.8,369.1c0,10.4-8.5,18.8-19.2,18.8h-52.2c-10.7,0-19.2-8.3-19.2-18.8v-24h90.5v24zm39.6-159.5c-26.6,27.1-40.5,64.6-40.5,105.3v9.4h-90.5v-9.4c0-38.6-16-77.1-42.6-106.3-23.4-25-33-57.3-28.8-90.7 7.5-50 54-97 116.1-97 65,0 117.2,51.1 117.2,112.6 0,28.1-10.7,55.2-30.9,76.1z"/>
<rect width="21.3" x="245.3" y="11" height="50"/>
<polygon points="385.1,107.4 400,122.3 436.5,87.2 421.5,72.3 "/>
<rect width="52.2" x="448.8" y="236.2" height="20.9"/>
<rect width="52.2" x="11" y="236.2" height="20.9"/>
<polygon points="90.1,72.2 75.1,87.1 111.6,122.2 126.5,107.3 "/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

+28
View File
@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="12px" height="12px" viewBox="0 0 438.549 438.549" style="enable-background:new 0 0 438.549 438.549;"
xml:space="preserve">
<g>
<path fill="white" d="M409.132,114.573c-19.608-33.596-46.205-60.194-79.798-79.8C295.736,15.166,259.057,5.365,219.271,5.365
c-39.781,0-76.472,9.804-110.063,29.408c-33.596,19.605-60.192,46.204-79.8,79.8C9.803,148.168,0,184.854,0,224.63
c0,47.78,13.94,90.745,41.827,128.906c27.884,38.164,63.906,64.572,108.063,79.227c5.14,0.954,8.945,0.283,11.419-1.996
c2.475-2.282,3.711-5.14,3.711-8.562c0-0.571-0.049-5.708-0.144-15.417c-0.098-9.709-0.144-18.179-0.144-25.406l-6.567,1.136
c-4.187,0.767-9.469,1.092-15.846,1c-6.374-0.089-12.991-0.757-19.842-1.999c-6.854-1.231-13.229-4.086-19.13-8.559
c-5.898-4.473-10.085-10.328-12.56-17.556l-2.855-6.57c-1.903-4.374-4.899-9.233-8.992-14.559
c-4.093-5.331-8.232-8.945-12.419-10.848l-1.999-1.431c-1.332-0.951-2.568-2.098-3.711-3.429c-1.142-1.331-1.997-2.663-2.568-3.997
c-0.572-1.335-0.098-2.43,1.427-3.289c1.525-0.859,4.281-1.276,8.28-1.276l5.708,0.853c3.807,0.763,8.516,3.042,14.133,6.851
c5.614,3.806,10.229,8.754,13.846,14.842c4.38,7.806,9.657,13.754,15.846,17.847c6.184,4.093,12.419,6.136,18.699,6.136
c6.28,0,11.704-0.476,16.274-1.423c4.565-0.952,8.848-2.383,12.847-4.285c1.713-12.758,6.377-22.559,13.988-29.41
c-10.848-1.14-20.601-2.857-29.264-5.14c-8.658-2.286-17.605-5.996-26.835-11.14c-9.235-5.137-16.896-11.516-22.985-19.126
c-6.09-7.614-11.088-17.61-14.987-29.979c-3.901-12.374-5.852-26.648-5.852-42.826c0-23.035,7.52-42.637,22.557-58.817
c-7.044-17.318-6.379-36.732,1.997-58.24c5.52-1.715,13.706-0.428,24.554,3.853c10.85,4.283,18.794,7.952,23.84,10.994
c5.046,3.041,9.089,5.618,12.135,7.708c17.705-4.947,35.976-7.421,54.818-7.421s37.117,2.474,54.823,7.421l10.849-6.849
c7.419-4.57,16.18-8.758,26.262-12.565c10.088-3.805,17.802-4.853,23.134-3.138c8.562,21.509,9.325,40.922,2.279,58.24
c15.036,16.18,22.559,35.787,22.559,58.817c0,16.178-1.958,30.497-5.853,42.966c-3.9,12.471-8.941,22.457-15.125,29.979
c-6.191,7.521-13.901,13.85-23.131,18.986c-9.232,5.14-18.182,8.85-26.84,11.136c-8.662,2.286-18.415,4.004-29.263,5.146
c9.894,8.562,14.842,22.077,14.842,40.539v60.237c0,3.422,1.19,6.279,3.572,8.562c2.379,2.279,6.136,2.95,11.276,1.995
c44.163-14.653,80.185-41.062,108.068-79.226c27.88-38.161,41.825-81.126,41.825-128.906
C438.536,184.851,428.728,148.168,409.132,114.573z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.6 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 961 B

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 353 B

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

+12
View File
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 480 480" style="enable-background:new 0 0 480 480;" xml:space="preserve">
<g>
<path d="M464,264c-4.286-98.483-85.424-176.093-184-176h-80c-98.576-0.093-179.714,77.517-184,176H0v80h48v48h64v-48h256v48h64
v-48h48v-80H464z M200,104h80c89.747-0.102,163.726,70.354,168,160h-16v-24c0-22.091-17.909-40-40-40h-28.48
c2.908-4.832,4.456-10.36,4.48-16c0-17.673-14.327-32-32-32H144c-17.673,0-32,14.327-32,32c0.024,5.64,1.572,11.168,4.48,16H88
c-22.091,0-40,17.909-40,40v24H32C36.274,174.354,110.253,103.898,200,104z M392,216c13.255,0,24,10.745,24,24v24H64v-24
c0-13.255,10.745-24,24-24H392z M128,184c0-8.837,7.163-16,16-16h192c8.837,0,16,7.163,16,16s-7.163,16-16,16H144
C135.163,200,128,192.837,128,184z M96,376H64v-32h32V376z M416,376h-32v-32h32V376z M464,328H16v-48h448V328z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 974 B

+44
View File
@@ -0,0 +1,44 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 480 480" style="enable-background:new 0 0 480 480;" xml:space="preserve">
<g>
<path d="M0,208v48h16v224h448V256h16v-48H0z M208,464H32V256h176V464z M288,464h-64V320h64V464z M368,464h-64V320h64V464z
M448,464h-64V320h64V464z M448,304H224v-48h224V304z M464,240H16v-16h448V240z"/>
</g>
<g>
<path d="M48,336v112h144V336H48z M176,432H64v-80h112V432z"/>
</g>
<g>
<path d="M72,272c-13.255,0-24,10.745-24,24s10.745,24,24,24s24-10.745,24-24S85.255,272,72,272z M72,304c-4.418,0-8-3.582-8-8
s3.582-8,8-8s8,3.582,8,8S76.418,304,72,304z"/>
</g>
<g>
<path d="M168,272c-13.255,0-24,10.745-24,24s10.745,24,24,24s24-10.745,24-24S181.255,272,168,272z M168,304c-4.418,0-8-3.582-8-8
s3.582-8,8-8s8,3.582,8,8S172.418,304,168,304z"/>
</g>
<g>
<rect x="304" y="272" width="64" height="16"/>
</g>
<g>
<rect x="256" y="336" width="16" height="16"/>
</g>
<g>
<rect x="336" y="368" width="16" height="32"/>
</g>
<g>
<rect x="400" y="368" width="16" height="32"/>
</g>
<g>
<path d="M208,0v86.08l-24-48V0H40v38.08L0.88,116.4c-1.988,3.946-0.401,8.756,3.544,10.744C5.534,127.703,6.758,127.996,8,128h472
V0H208z M56,16h112v16H56V16z M20.96,112l32-64h118.08l32,64H20.96z M336,112H224V16h112V112z M464,112H352V16h112V112z"/>
</g>
<g>
<rect x="304" y="80" width="16" height="16"/>
</g>
<g>
<rect x="368" y="80" width="16" height="16"/>
</g>
<g>
<rect x="96" y="368" width="48" height="16"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

+26
View File
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 480.046 480.046" style="enable-background:new 0 0 480.046 480.046;" xml:space="preserve">
<g>
<path d="M328.034,320.046h-24v-88c0-4.418-3.582-8-8-8h-256c-4.418,0-8,3.582-8,8v88h-24c-4.418,0-8,3.582-8,8v128
c0,4.418,3.582,8,8,8h24v16h16v-16h240v16h16v-16h24c4.418,0,8-3.582,8-8v-128C336.034,323.628,332.452,320.046,328.034,320.046z
M80.034,448.046h-64v-112h64V448.046z M240.034,448.046h-144v-64h144V448.046z M240.034,328.046v40h-144v-40c0-4.418-3.582-8-8-8
h-40v-80h240v80h-40C243.615,320.046,240.034,323.628,240.034,328.046z M320.034,448.046h-64v-112h64V448.046z"/>
</g>
<g>
<path d="M479.954,151.166l-16-144c-0.447-4.041-3.854-7.104-7.92-7.12h-112c-4.096-0.025-7.549,3.049-8,7.12l-16,144
c-0.276,2.258,0.422,4.528,1.92,6.24c1.55,1.718,3.767,2.68,6.08,2.64h64v272h-32c-4.418,0-8,3.582-8,8v32c0,4.418,3.582,8,8,8h80
c4.418,0,8-3.582,8-8v-32c0-4.418-3.582-8-8-8h-32v-272h64c2.285,0.017,4.469-0.943,6-2.64
C479.532,155.694,480.23,153.425,479.954,151.166z M432.034,448.046v16h-64v-16H432.034z M336.994,144.046l14.24-128h97.6
l14.24,128H336.994z"/>
</g>
<g>
<path d="M272.034,48.046h-52.72l-45.6-45.68c-3.111-3.137-8.177-3.158-11.314-0.046c-0.016,0.015-0.031,0.031-0.046,0.046
l-45.6,45.68h-52.72c-4.418,0-8,3.582-8,8v128c0,4.418,3.582,8,8,8h208c4.418,0,8-3.582,8-8v-128
C280.034,51.628,276.452,48.046,272.034,48.046z M168.034,19.326l28.72,28.72h-57.44L168.034,19.326z M264.034,176.046h-192v-112
h192V176.046z"/>
</g>
<g>
<path d="M88.034,80.046v80h160v-80H88.034z M232.034,144.046h-128v-48h128V144.046z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

+30
View File
@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 480 480" style="enable-background:new 0 0 480 480;" xml:space="preserve">
<g>
<path d="M464,264V88H16v176H0v80h48v48h64v-48h256v48h64v-48h48v-80H464z M32,104h416v160h-16v-24c0-22.091-17.909-40-40-40
h-12.48c2.908-4.832,4.456-10.36,4.48-16c0-17.673-14.327-32-32-32h-64c-17.673,0-32,14.327-32,32
c0.024,5.64,1.572,11.168,4.48,16h-40.96c2.908-4.832,4.456-10.36,4.48-16c0-17.673-14.327-32-32-32h-64
c-17.673,0-32,14.327-32,32c0.024,5.64,1.572,11.168,4.48,16H88c-22.091,0-40,17.909-40,40v24H32V104z M392,216
c13.255,0,24,10.745,24,24v24H64v-24c0-13.255,10.745-24,24-24H392z M112,184c0-8.837,7.163-16,16-16h64c8.837,0,16,7.163,16,16
s-7.163,16-16,16h-64C119.163,200,112,192.837,112,184z M272,184c0-8.837,7.163-16,16-16h64c8.837,0,16,7.163,16,16
s-7.163,16-16,16h-64C279.163,200,272,192.837,272,184z M96,376H64v-32h32V376z M416,376h-32v-32h32V376z M464,328H16v-48h448V328
z"/>
</g>
<g>
<rect x="48" y="120" width="16" height="16"/>
</g>
<g>
<rect x="416" y="120" width="16" height="16"/>
</g>
<g>
<rect x="80" y="120" width="320" height="16"/>
</g>
<g>
<rect x="48" y="152" width="16" height="40"/>
</g>
<g>
<rect x="416" y="152" width="16" height="40"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

+23
View File
@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 480 480" style="enable-background:new 0 0 480 480;" xml:space="preserve">
<g>
<path d="M224,120v112h224V120H224z M432,216H240v-80h192V216z"/>
</g>
<g>
<path d="M336,152c-13.255,0-24,10.745-24,24s10.745,24,24,24s24-10.745,24-24S349.255,152,336,152z M336,184c-4.418,0-8-3.582-8-8
s3.582-8,8-8s8,3.582,8,8S340.418,184,336,184z"/>
</g>
<g>
<path d="M176,88V48c0-4.418-3.582-8-8-8h-8V16c0-4.418-3.582-8-8-8H40c-4.418,0-8,3.582-8,8v24h-8c-4.418,0-8,3.582-8,8v40H0v384
h208V264h208v208h64V88H176z M48,24h96v16H48V24z M32,56h128v32H32V56z M192,456H16V200h176V456z M192,184H16v-80h176V184z
M464,456h-32V264h32V456z M464,248H208V104h256V248z"/>
</g>
<g>
<rect x="80" y="136" width="48" height="16"/>
</g>
<g>
<path d="M152,216c-13.255,0-24,10.745-24,24s10.745,24,24,24s24-10.745,24-24S165.255,216,152,216z M152,248c-4.418,0-8-3.582-8-8
s3.582-8,8-8s8,3.582,8,8S156.418,248,152,248z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

+29
View File
@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 480 480" style="enable-background:new 0 0 480 480;" xml:space="preserve">
<g>
<path d="M40,432c-13.255,0-24,10.745-24,24s10.745,24,24,24s24-10.745,24-24S53.255,432,40,432z M40,464c-4.418,0-8-3.582-8-8
s3.582-8,8-8s8,3.582,8,8S44.418,464,40,464z"/>
</g>
<g>
<path d="M440,432c-13.255,0-24,10.745-24,24s10.745,24,24,24s24-10.745,24-24S453.255,432,440,432z M440,464c-4.418,0-8-3.582-8-8
s3.582-8,8-8s8,3.582,8,8S444.418,464,440,464z"/>
</g>
<g>
<path d="M416,112v48H64v-48H16v320h48v-48h352v48h48V112H416z M48,416H32V128h16V416z M64,208h24v80H64V208z M64,304h24v32H64V304
z M416,368H64v-16h352V368z M120,304v32h-16v-32H120z M104,288v-80h16v80H104z M152,304v32h-16v-32H152z M136,288v-80h16v80H136z
M184,304v32h-16v-32H184z M168,288v-80h16v80H168z M216,304v32h-16v-32H216z M200,288v-80h16v80H200z M248,304v32h-16v-32H248z
M232,288v-80h16v80H232z M280,304v32h-16v-32H280z M264,288v-80h16v80H264z M312,304v32h-16v-32H312z M296,288v-80h16v80H296z
M344,304v32h-16v-32H344z M328,288v-80h16v80H328z M376,304v32h-16v-32H376z M360,288v-80h16v80H360z M416,336h-24v-32h24V336z
M416,288h-24v-80h24V288z M416,192H64v-16h352V192z M448,416h-16V128h16V416z"/>
</g>
<g>
<path d="M296,50.72c-4.509,0.034-8.917,1.337-12.72,3.76c-10.313-7.681-22.495-12.46-35.28-13.84V0h-16v40.64
c-12.785,1.38-24.967,6.159-35.28,13.84c-3.803-2.423-8.211-3.726-12.72-3.76c-13.255,0-24,10.745-24,24c0,13.255,10.745,24,24,24
s24-10.745,24-24c-0.015-2.723-0.475-5.425-1.36-8c19.855-14.565,46.865-14.565,66.72,0c-0.885,2.575-1.345,5.277-1.36,8
c0,13.255,10.745,24,24,24s24-10.745,24-24C320,61.465,309.255,50.72,296,50.72z M184,82.72c-4.418,0-8-3.582-8-8
c0-4.418,3.582-8,8-8s8,3.582,8,8C192,79.138,188.418,82.72,184,82.72z M296,82.72c-4.418,0-8-3.582-8-8c0-4.418,3.582-8,8-8
s8,3.582,8,8C304,79.138,300.418,82.72,296,82.72z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

+47
View File
@@ -0,0 +1,47 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 480.013 480.013" style="enable-background:new 0 0 480.013 480.013;" xml:space="preserve">
<g>
<path d="M390.999,316.952l-30.296-24.232c-1.113-0.887-1.969-2.055-2.48-3.384l-11.68-54.4
c-2.432-11.02-12.179-18.883-23.464-18.928H156.807c-11.268-0.052-21.036,7.788-23.424,18.8l-12,53.952
c-0.403,1.783-1.399,3.376-2.824,4.52l-29.6,23.68c-5.687,4.552-8.984,11.452-8.952,18.736v80.312
c0.021,6.788,2.93,13.246,8,17.76v30.24c0,8.837,7.163,16,16,16h32c8.837,0,16-7.163,16-16v-24h176v24c0,8.837,7.163,16,16,16h32
c8.837,0,16-7.163,16-16v-30.24c5.07-4.514,7.979-10.972,8-17.76v-80.312C400.024,328.4,396.707,321.496,390.999,316.952z
M218.143,238.328l0-0.008l4.208-6.32h100.728c3.772-0.001,7.032,2.632,7.824,6.32l10.704,49.688H224.703
c5.888-11.098,3.871-24.736-4.976-33.656C215.461,250.064,214.799,243.368,218.143,238.328z M184.079,238.328v-0.008l4.208-6.32
h15.144c-5.88,11.101-3.861,24.736,4.984,33.656c4.258,4.28,4.926,10.962,1.6,16l-4.208,6.32h-15.16
c5.88-11.101,3.861-24.736-4.984-33.656C181.414,250.037,180.753,243.361,184.079,238.328z M149.039,238.264
c0.792-3.655,4.028-6.262,7.768-6.256h12.56c-5.88,11.101-3.861,24.736,4.984,33.656c4.258,4.28,4.926,10.962,1.6,16l-4.208,6.32
h-33.76L149.039,238.264z M136.007,464.008h-32v-24h32V464.008z M376.007,464.008h-32v-24h32V464.008z M384.007,416.008
c0,4.418-3.582,8-8,8h-272c-4.418,0-8-3.582-8-8v-8h288V416.008z M384.007,392.008h-288v-56.312
c-0.006-2.431,1.103-4.73,3.008-6.24l29.6-23.68c0.649-0.556,1.269-1.146,1.856-1.768h218.928c0.432,0.4,0.8,0.8,1.296,1.2
l30.304,24.24c1.9,1.517,3.007,3.816,3.008,6.248V392.008z"/>
</g>
<g>
<path d="M132.007,328.008c-15.464,0-28,12.536-28,28c0,15.464,12.536,28,28,28s28-12.536,28-28
C160.007,340.544,147.471,328.008,132.007,328.008z M132.007,368.008c-6.627,0-12-5.373-12-12c0-6.627,5.373-12,12-12
c6.627,0,12,5.373,12,12C144.007,362.635,138.634,368.008,132.007,368.008z"/>
</g>
<g>
<path d="M348.007,328.008c-15.464,0-28,12.536-28,28c0,15.464,12.536,28,28,28c15.464,0,28-12.536,28-28
C376.007,340.544,363.471,328.008,348.007,328.008z M348.007,368.008c-6.627,0-12-5.373-12-12c0-6.627,5.373-12,12-12
c6.627,0,12,5.373,12,12C360.007,362.635,354.634,368.008,348.007,368.008z"/>
</g>
<g>
<path d="M288.007,328.008h-96c-8.837,0-16,7.163-16,16v24c0,8.837,7.163,16,16,16h96c8.837,0,16-7.163,16-16v-24
C304.007,335.171,296.844,328.008,288.007,328.008z M288.007,368.008h-96v-24h96V368.008z"/>
</g>
<g>
<path d="M475.871,129l-232-128c-2.405-1.327-5.323-1.327-7.728,0l-232,128c-3.87,2.131-5.281,6.996-3.15,10.866
c1.407,2.556,4.095,4.144,7.013,4.142h8v336h48v-296h352v296h48v-336h8c4.418,0.003,8.003-3.576,8.006-7.995
C480.015,133.095,478.427,130.407,475.871,129z M240.007,17.152l200.936,110.856H39.071L240.007,17.152z M448.007,464.008h-16
v-296h-384v296h-16v-320h416V464.008z"/>
</g>
<g>
<path d="M168.007,75.064v44.944h64V43.064L168.007,75.064z M216.007,104.008h-32V84.952l32-16V104.008z"/>
</g>
<g>
<path d="M248.007,43.064v76.944h64V75.064L248.007,43.064z M296.007,104.008h-32V68.952l32,16V104.008z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.2 KiB

+14
View File
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve">
<g>
<path d="M451,317v-30c0-24.813-20.187-45-45-45H226c-5.259,0-10.305,0.915-15,2.58V87.42c17.459-6.192,30-22.865,30-42.42
c0-24.813-20.187-45-45-45H76c-8.284,0-15,6.716-15,15c0,27.71,0,246.385,0,272c0,19.555,12.541,36.228,30,42.42V377
c0,27.519,10.855,53.927,30,73.482V497c0,8.284,6.716,15,15,15c17.33,0,254.846,0,270,0c8.284,0,15-6.716,15-15s-6.716-15-15-15
h-45v-17.991C415.988,435.943,451,379.283,451,317z M226,272h180c8.271,0,15,6.729,15,15v15H211v-15
C211,278.729,217.729,272,226,272z M91,30h105c8.271,0,15,6.729,15,15s-6.729,15-15,15H91V30z M106,302c-8.271,0-15-6.729-15-15
V90h90c0,17.39,0,200.271,0,212H106z M339.994,440.773c-5.463,2.387-8.994,7.783-8.994,13.745V482H151v-37.917
c0-4.267-1.817-8.332-4.996-11.177C130.113,418.684,121,398.307,121,377v-45.1c34.535,0,296.545,0,299.168,0
C414.864,379.493,384.575,421.295,339.994,440.773z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

+1
View File
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
+2
View File
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+73
View File
@@ -0,0 +1,73 @@
var license = {
'en': 'The MIT License (MIT)<br>' +
'<br>' +
'Copyright © 2014-2018 bluefox, 2014 hobbyquaker<br>' +
'<br>' +
'Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:<br>' +
'The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.<br>' +
'THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.<br>',
"de": 'MIT-Lizenz (MIT)<br>' +
'<br>' +
'Copyright © 2014-2018 bluefox, 2014 hobbyquaker<br>' +
'<br>' +
'Hiermit wird unentgeltlich jeder Person, die eine Kopie der Software und der zugehörigen Dokumentationen (die "Software") erhält, die Erlaubnis erteilt, sie uneingeschränkt zu benutzen, inklusive und ohne Ausnahme dem Recht, sie zu verwenden, kopieren, ändern, fusionieren, verlegen, verbreiten, unterlizenzieren und/oder zu verkaufen, und Personen, die diese Software erhalten, diese Rechte zu geben, unter den folgenden Bedingungen:<br>' +
'Der obige Urheberrechtsvermerk und dieser Erlaubnisvermerk sind in allen Kopien oder Teilkopien der Software beizulegen.<br>' +
'DIE SOFTWARE WIRD OHNE JEDE AUSDRÜCKLICHE ODER IMPLIZIERTE GARANTIE BEREITGESTELLT, EINSCHLIESSLICH DER GARANTIE ZUR BENUTZUNG FÜR DEN VORGESEHENEN ODER EINEM BESTIMMTEN ZWECK SOWIE JEGLICHER RECHTSVERLETZUNG, JEDOCH NICHT DARAUF BESCHRÄNKT. IN KEINEM FALL SIND DIE AUTOREN ODER COPYRIGHTINHABER FÜR JEGLICHEN SCHADEN ODER SONSTIGE ANSPRÜCHE HAFTBAR ZU MACHEN, OB INFOLGE DER ERFÜLLUNG EINES VERTRAGES, EINES DELIKTES ODER ANDERS IM ZUSAMMENHANG MIT DER SOFTWARE ODER SONSTIGER VERWENDUNG DER SOFTWARE ENTSTANDEN.',
"ru": 'Лицензия MIT<br>' +
'<br>' +
'Copyright © 2014-2018 bluefox, 2014 hobbyquaker<br>' +
'<br>' +
'Данная лицензия разрешает лицам, получившим копию данного программного обеспечения и сопутствующей документации (в дальнейшем именуемыми «Программное Обеспечение»), безвозмездно использовать Программное Обеспечение без ограничений, включая неограниченное право на использование, копирование, изменение, добавление, публикацию, распространение, сублицензирование и/или продажу копий Программного Обеспечения, также как и лицам, которым предоставляется данное Программное Обеспечение, при соблюдении следующих условий:<br>' +
'Указанное выше уведомление об авторском праве и данные условия должны быть включены во все копии или значимые части данного Программного Обеспечения.<br>' +
'ДАННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ «КАК ЕСТЬ», БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ, ЯВНО ВЫРАЖЕННЫХ ИЛИ ПОДРАЗУМЕВАЕМЫХ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ГАРАНТИЯМИ ТОВАРНОЙ ПРИГОДНОСТИ, СООТВЕТСТВИЯ ПО ЕГО КОНКРЕТНОМУ НАЗНАЧЕНИЮ И ОТСУТСТВИЯ НАРУШЕНИЙ ПРАВ. НИ В КАКОМ СЛУЧАЕ АВТОРЫ ИЛИ ПРАВООБЛАДАТЕЛИ НЕ НЕСУТ ОТВЕТСТВЕННОСТИ ПО ИСКАМ О ВОЗМЕЩЕНИИ УЩЕРБА, УБЫТКОВ ИЛИ ДРУГИХ ТРЕБОВАНИЙ ПО ДЕЙСТВУЮЩИМ КОНТРАКТАМ, ДЕЛИКТАМ ИЛИ ИНОМУ, ВОЗНИКШИМ ИЗ, ИМЕЮЩИМ ПРИЧИНОЙ ИЛИ СВЯЗАННЫМ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ ИЛИ ИСПОЛЬЗОВАНИЕМ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ИЛИ ИНЫМИ ДЕЙСТВИЯМИ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ.',
'it': 'Licenza MIT<br>' +
'<br>' +
'Copyright © 2014-2018 bluefox, 2014 hobbyquaker<br>' +
'<br>' +
'Si concede gratuitamente l\'autorizzazione, a chiunque ottenga una copia di questo software e dei file di documentazione associati (il "Software"), di dare opera al Software senza restrizioni, compresi senza limitazione i diritti di utilizzare, copiare, modificare, unire, pubblicare, distribuire, concedere in sublicenza ovvero vendere copie del Software, e di consentire alle persone a cui il Software è fornito di fare altrettanto, posto che siano rispettate le seguenti condizioni:<br>' +
'l\'avviso di copyright unitamente a questo avviso di licenza devono essere sempre inclusi in tutte le copie o parti sostanziali del Software.<br>' +
'IL SOFTWARE VIENE FORNITO "COSÌ COM\'È" SENZA GARANZIE DI ALCUN TIPO, ESPLICITE O IMPLICITE, COMPRESE, MA NON SOLO, LE GARANZIE DI COMMERCIABILITÀ, IDONEITÀ AD UN PARTICOLARE SCOPO E NON VIOLAZIONE DI DIRITTI ALTRUI. IN NESSUN CASO GLI AUTORI DEL SOFTWARE O I TITOLARI DEL COPYRIGHT POTRANNO ESSERE RITENUTI RESPONSABILI DI RECLAMI, DANNI O ALTRE RESPONSABILITÀ, DERIVANTI DA O COLLEGATI A CONTRATTO, ILLECITO CIVILE O IN ALTRA RELAZIONE CON IL SOFTWARE O CON IL SUO UTILIZZO O CON ALTRE OPERAZIONI DEL SOFTWARE.',
'fr': 'Licence MIT<br>' +
'<br>' +
'Copyright © 2014-2018 bluefox, 2014 hobbyquaker<br>' +
'<br>' +
'Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:<br>' +
'The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.<br>' +
'THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.<br>',
'pt': 'Licença MIT<br>' +
'<br>' +
'Copyright © 2014-2018 bluefox, 2014 hobbyquaker<br>' +
'<br>' +
'Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:<br>' +
'The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.<br>' +
'THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.<br>',
'nl': 'MIT-licentie<br>' +
'<br>' +
'Copyright © 2014-2018 bluefox, 2014 hobbyquaker<br>' +
'<br>' +
'Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:<br>' +
'The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.<br>' +
'THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.<br>',
'es': 'Licencia MIT<br>' +
'<br>' +
'Copyright © 2014-2018 bluefox, 2014 hobbyquaker<br>' +
'<br>' +
'Se concede permiso, de forma gratuita, a cualquier persona que obtenga una copia de este software y de los archivos de documentación asociados (el "Software"), para utilizar el Software sin restricción, incluyendo sin limitación los derechos a usar, copiar, modificar, fusionar, publicar, distribuir, sublicenciar, y/o vender copias del Software, y a permitir a las personas a las que se les proporcione el Software a hacer lo mismo, sujeto a las siguientes condiciones:<br>' +
'El aviso de copyright anterior y este aviso de permiso se incluirán en todas las copias o partes sustanciales del Software.<br>' +
'EL SOFTWARE SE PROPORCIONA "TAL CUAL", SIN GARANTÍA DE NINGÚN TIPO, EXPRESA O IMPLÍCITA, INCLUYENDO PERO NO LIMITADO A GARANTÍAS DE COMERCIALIZACIÓN, IDONEIDAD PARA UN PROPÓSITO PARTICULAR Y NO INFRACCIÓN. EN NINGÚN CASO LOS AUTORES O TITULARES DEL COPYRIGHT SERÁN RESPONSABLES DE NINGUNA RECLAMACIÓN, DAÑOS U OTRAS RESPONSABILIDADES, YA SEA EN UNA ACCIÓN DE CONTRATO, AGRAVIO O CUALQUIER OTRO MOTIVO, QUE SURJA DE O EN CONEXIÓN CON EL SOFTWARE O EL USO U OTRO TIPO DE ACCIONES EN EL SOFTWARE.',
'pl': 'Licencja MIT<br>' +
'<br>' +
'Copyright © 2014-2018 bluefox, 2014 hobbyquaker<br>' +
'<br>' +
'Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:<br>' +
'The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.<br>' +
'THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.<br>',
};
+197
View File
@@ -0,0 +1,197 @@
var addAll2FilterCombobox = false;
function IobListHeader(header, options) {
if (!(this instanceof IobListHeader)) return new IobListHeader(header, options);
if (options === undefined) options = {};
if (options.colWidthOffset === undefined) options.colWidthOffset = 0;
var $headerThs;
var $listTds;
var $header;
$header = typeof header === 'object' ? $(header) : $('#' + header);
if ($header[0].tagName === 'TABLE') $header = $header.find('tr:first');
header = $header[0];
var that = this;
that.selectIdOffset = [];
$header.html('');
this.setList = function (_list) {
var $tds;
if (typeof _list === 'string') {
if (_list[0] !== '#') {
_list = '#' + _list;
}
$tds = $(_list)
} else {
$tds = _list;
}
if (!$tds || !$tds.length) return;
if ($tds[0].tagName !== 'TD' && $tds[0].tagName !== 'TH') {
$tds = $tds.find('>thead>tr:first>th,>thead>tr:first>td');
if (!$tds.length) $tds = _list.find('>tbody>tr:first>th,>tr:first>th,>tbody>tr:first>td, >tr:first>td');
}
$listTds = $tds;
};
if (options.list) {
this.setList(options.list);
}
this.syncHeader = function () {
if (typeof $listTds !== 'object') return;
var syncHeader = function () {
$listTds.each(function (i, o) {
if (i >= $listTds.length - 1) return;
var x = $(o).width();
var offset = that.selectIdOffset[i] || 0;
if (x + offset) {
$($headerThs[i]).width(Math.round(x + offset));
}
});
if ($listTds.length && !that.selectIdOffset.length) {
that.selectIdOffset[0] = 0;
$listTds.each(function (i, o) {
//if (i >= $listTds.length - 1) return;
var x = $($listTds[i]).offset().left;
if (x) {
that.selectIdOffset[i] = x - $($headerThs[i]).offset().left;
}
});
syncHeader();
}
};
syncHeader();
};
var resizeTimer;
$(window).on('resize', function (x, y) {
if (resizeTimer) clearTimeout(resizeTimer);
resizeTimer = setTimeout(that.syncHeader.bind(that), 100);
});
function buildId(id, fis) {
if (!id || (fis && id[0] === '#')) return id;
if (options.prefix && id.substr(0, options.prefix.length) !== options.prefix) {
id = options.prefix + '-' + id;
}
return (fis ? '#' : '') + id;
}
this.doFilter = function () {};
function allOption(name, selectedVal) {
if (addAll2FilterCombobox) {
name = name ? _(name) + ' ('+_('all') + ')' : _('all');
}
return '<option value="" ' + ((selectedVal === '') ? 'selected' : '') + '>' + name + '</option>';
}
that.ids = [];
that.add = function (what, title, _id, selectOptions) {
if (_id === undefined) _id = title;
var id = buildId(_id);
title = _(title);
var txt = '';
switch (what) {
case 'combobox':
txt =
' <select class="list-header-input" id="' + id + '" title="' + title + '"></select>' +
' <button class="list-header-clear" id="' + id + '-clear" role="button" title=""></button>';
break;
case 'edit':
txt =
' <input class="list-header-input" placeholder="' + title + '" id="' + id + '" title="' + title + '">' +
' <button class="list-header-clear" id="' + id + '-clear" role="button" title="' + title + '"></button>';
break;
case 'text':
txt =
'<span class="list-header-text">' + title + '</span>';
break;
}
$header.append('<th>' + txt + '</th>');
var fisId = '#' + id;
var $id = $(fisId);
var elem = that[_id] = {
$filter: $id,
val: $id.val.bind($id),
selectedVal: $id.val() || ''
};
that.ids.push(_id);
if (what === 'combobox') {
elem.options = [];
elem.checkAddOption = function (text, cb, noAll) {
if (this.options.indexOf(text) !== -1) return;
this.options.push(text);
this.options.sort();
var selectedVal = $id.val();
var txt = noAll ? '' : allOption(title, selectedVal);
function addOption(val, name) {
txt += '<option value="' + val + '" ' + ((name === selectedVal) ? 'selected' : '') + '>' + name + '</option>'
}
for (var i = 0, len = this.options.length; i < len; i++) {
var option = this.options[i];
if (cb) {
var v = cb(option, i);
if (typeof v === 'object') {
addOption(v.val, v.name);
} else {
txt += v;
}
} else {
addOption(option, option);
}
}
$id.html(txt);
};
if (selectOptions) {
for (var i = 0; i < selectOptions.length; i++) {
elem.checkAddOption(selectOptions[i].name, function (o, i) {
return selectOptions [i];
}, true);
}
}
}
var $btnClear = $(fisId + '-clear');
$btnClear.on('click', function () {
if ($id.val() !== '') {
$id.val('').trigger('change');
}
});
if (typeof M === 'undefined') {
$btnClear.button({icons: {primary: 'ui-icon-close'}, text: false})
} else {
$btnClear.prepend('<i class="material-icons">close</i>');
}
var eventFilterTimeout;
$id.on('change', function (event) {
if (eventFilterTimeout) clearTimeout(eventFilterTimeout);
elem.selectedVal = $id.val();
eventFilterTimeout = setTimeout(that.doFilter, what !== 'combobox' ? 400 : 0);
//_filterChanged($id);
if (elem.selectedVal) {
$id.parent().addClass('filter-active');
} else {
$id.parent().removeClass('filter-active');
}
}).on('keyup', function (event) {
if (event.which === 13) {
that.doFilter();
} else {
$id.trigger('change');
}
});
$headerThs = $header.find('>th');
return elem;
};
}
+437
View File
@@ -0,0 +1,437 @@
/**
* Create edit table from javascript array.
*
* This function creates a html edit table.
*
* <pre><code>
* <div id="values" style="width: 100%; height: calc(100% - 205px)">
* <button class="table-button-add" style="margin-left: 10px"></button>
* <div style="width: 100%; height: calc(100% - 30px); overflow: auto;">
* <table class="table-values" style="width: 100%;">
* <thead>
* <tr>
* <th data-name="_index" style="30px" data-style="width: 100%; text-align: right">Context</th>
* <th data-name="regex" class="translate" style="width: 30%" data-style="text-align: right">Context</th>
* <th data-name="room" class="translate" data-type="select">Room</th>
* <th data-name="aaa" class="translate" data-options="1/A;2/B;3/C;4" data-type="select">Room</th>
* <th data-name="enabled" class="translate" data-type="checkbox">Enabled</th>
* <th data-buttons="delete up down" style="width: 32px"></th>
* </tr>
* </thead>
* </table>
* </div>
* </div>
* </pre></code>
*
* @param {string} divId name of the html element (or empty).
* @param {string} values data array
* @param {object} options settings
* <pre><code>
* {
* onChange: this function will be called if something changed. function (attr, index) {}
* onReady: called, when the table is ready (may be to modify some elements of it),
* maxRaw: maximal number of rows
* }
* </pre></code>
* @return {object} array with values
*/
function values2table(divId, values, options) {
if (typeof divId === 'object') {
options = values;
values = divId;
divId = '';
}
var maxRaw = (options && options.maxRaw) || null;
var onChange = (options && options.onChange) || null;
var onReady = (options && options.onReady) || null;
values = values || [];
var names = [];
var $div;
if (!divId) {
$div = $('body');
} else {
$div = $('#' + divId);
}
var $add = $div.find('.table-button-add');
$add.data('raw', values.length);
if (maxRaw) {
$add.data('maxRaw', maxRaw);
}
if (!$add.data('inited')) {
$add.data('inited', true);
// var addText = $add.text();
$add.on('click', function () {
if (!$add.data('maxRaw') || ($add.data('raw') < $add.data('maxRaw'))) {
var $table = $div.find('.table-values');
var values = $table.data('values');
var names = $table.data('names');
var maxRaw = $table.data('maxRaw');
var obj = {};
for (var i = 0; i < names.length; i++) {
if (!names[i]) continue;
obj[names[i].name] = names[i].def;
}
values.push(obj);
onChange && onChange();
setTimeout(function () {
values2table(divId, values, onChange, onReady, maxRaw);
}, 100);
$add.data('raw', $add.data('raw') + 1);
} else {
confirmMessage(_('maxTableRaw') + ': ' + $add.data('maxRaw'), _('maxTableRawInfo'), 'alert', ['Ok']);
}
});
}
if (values) {
var buttons = [];
var $table = $div.find('.table-values');
$table.data('values', values);
// load rooms
if (!$table.data('rooms') && $table.find('th[data-name="room"]').length) {
getEnums('rooms', function (err, list) {
var result = {};
var trRooms = _('nonerooms');
if (trRooms !== 'nonerooms') {
result[_('none')] = trRooms;
} else {
result[_('none')] = '';
}
var nnames = [];
for (var n in list) {
if (list.hasOwnProperty(n)) {
nnames.push(n);
}
}
nnames.sort(function (a, b) {
a = a.toLowerCase();
b = b.toLowerCase();
if (a > b) return 1;
if (a < b) return -1;
return 0;
});
for (var l = 0; l < nnames.length; l++) {
result[nnames[l]] = list[nnames[l]].common.name || l;
}
$table.data('rooms', result);
values2table(divId, values, onChange, onReady, maxRaw);
});
return;
}
// load functions
if (!$table.data('functions') && $table.find('th[data-name="func"]').length) {
getEnums('functions', function (err, list) {
var result = {};
var trFuncs = _('nonefunctions');
if (trFuncs !== 'nonefunctions') {
result[_('none')] = trFuncs;
} else {
result[_('none')] = '';
}
var nnames = [];
for (var n in list) {
if (list.hasOwnProperty(n)) {
nnames.push(n);
}
}
nnames.sort(function (a, b) {
a = a.toLowerCase();
b = b.toLowerCase();
if (a > b) return 1;
if (a < b) return -1;
return 0;
});
for (var l = 0; l < nnames.length; l++) {
result[nnames[l]] = list[nnames[l]].common.name || l;
}
$table.data('functions', result);
values2table(divId, values, onChange, onReady, maxRaw);
});
return;
}
$table.find('th').each(function () {
var name = $(this).data('name');
if (name) {
var obj = {
name: name,
type: $(this).data('type') || 'text',
def: $(this).data('default'),
'class': ($(this).attr('class') || '').replace('translate', ''),
style: $(this).data('style'),
readOnly: $(this).data('readOnly'),
tdstyle: $(this).data('tdstyle')
};
if (obj.type === 'checkbox') {
if (obj.def === 'false') obj.def = false;
if (obj.def === 'true') obj.def = true;
obj.def = !!obj.def;
} else if (obj.type === 'select' || obj.type === 'select multiple') {
var vals = ($(this).data('options') || '').split(';');
obj.options = {};
for (var v = 0; v < vals.length; v++) {
var parts = vals[v].split('/');
obj.options[parts[0]] = _(parts[1] || parts[0]);
if (v === 0) obj.def = (obj.def === undefined) ? parts[0] : obj.def;
}
} else {
obj.def = obj.def || '';
}
names.push(obj);
} else {
names.push(null);
}
name = $(this).data('buttons');
if (name) {
buttons.push({
btn: name.split(' '),
'class': ($(this).attr('class') || '').replace('translate', ''),
style: $(this).data('style'),
tdstyle: $(this).data('tdstyle')
});
} else {
buttons.push(null);
}
});
$table.data('names', names);
var text = '';
for (var v = 0; v < values.length; v++) {
var idName = values[v] && values[v].id;
if (!idName && values[v]) {
if (names[0] === '_index') {
idName = values[v][names[1]];
} else {
idName = values[v][names[0]];
}
}
text += '<tr data-id="' + idName + '" data-index="' + v + '">';
for (var i = 0; i < names.length; i++) {
text += '<td';
var line = '';
var style = '';
var tdstyle = '';
if (names[i]) {
if (names[i]['class']) {
text += ' class="' + names[i]['class'] + '" ';
}
if (names[i].name !== '_index') {
tdstyle = names[i].tdstyle || '';
if (tdstyle && tdstyle[0] !== ';') tdstyle = ';' + tdstyle;
}
if (names[i].name === '_index') {
style = (names[i].style ? names[i].style : 'text-align: right;');
line += (v + 1);
} else if (names[i].type === 'checkbox') {
line += '<input style="' + (names[i].style || '') + '" class="values-input" type="checkbox" data-index="' + v + '" data-name="' + names[i].name + '" ' + (values[v][names[i].name] ? 'checked' : '') + '" data-old-value="' + (values[v][names[i].name] === undefined ? '' : values[v][names[i].name]) + '"/>';
} else if (names[i].type.substring(0, 6) === 'select') {
line += (names[i].type.substring(7, 16) === 'multiple' ? '<select multiple style="' : '<select style="') + (names[i].style ? names[i].style : 'width: 100%') + '" class="values-input" data-index="' + v + '" data-name="' + names[i].name + '">';
var options;
if (names[i].name === 'room') {
options = $table.data('rooms');
} else if (names[i].name === 'func') {
options = $table.data('functions');
if (names[i].type === 'select multiple') delete options[_('none')];
} else {
options = names[i].options;
}
var val = (values[v][names[i].name] === undefined ? '' : values[v][names[i].name]);
if (typeof val !== 'object') val = [val];
for (var p in options) {
line += '<option value="' + p + '" ' + (val.indexOf(p) !== -1 ? ' selected' : '') + '>' + options[p] + '</option>';
}
line += '</select>';
} else {
line += '<input class="values-input" style="' + (names[i].style ? names[i].style : 'width: 100%') + '" type="' + names[i].type + '" data-index="' + v + '" data-name="' + names[i].name + '"/>';
}
}
if (buttons[i]) {
style = 'text-align: center; ' + (buttons[i].style || '') + (buttons[i].tdstyle || '');
for (var b = 0; b < buttons[i].btn.length; b++) {
if ((!v && buttons[i].btn[b] === 'up') || v === values.length - 1 && buttons[i].btn[b] === 'down') {
line += '<a class="btn-floating disabled" data-command="' + buttons[i].btn[b] + '" class="values-buttons"><i class="material-icons"></i></a>';
continue;
}
line += '<a class="btn-floating" data-index="' + v + '" data-command="' + buttons[i].btn[b] + '" class="values-buttons"><i class="material-icons"></i></a>';
}
if (buttons[i]['class']) {
text += ' class="' + buttons[i]['class'] + '" ';
}
}
if (style.length || tdstyle.length) {
text += ' style="' + style + tdstyle + '">' + line + '</td>';
} else {
text += '>' + line + '</td>';
}
}
text += '</tr>';
}
var $lines = $table.find('.table-lines');
if (!$lines.length) {
$table.append('<tbody class="table-lines"></tbody>');
$lines = $table.find('.table-lines');
}
$lines.html(text);
$lines.find('.values-input').each(function () {
var $this = $(this);
var type = $this.attr('type');
var name = $this.data('name');
var id = $this.data('index');
$this.data('old-value', values[id][name]);
if (type === 'checkbox') {
$this.prop('checked', values[id][name]);
} else {
$this.val(values[id][name]);
}
});
$lines.find('a[data-command]').each(function () {
var command = $(this).data('command');
if (command === 'delete') {
$(this).on('click', function () {
var id = $(this).data('index');
var elem = values[id];
values.splice(id, 1);
onChange && onChange();
setTimeout(function () {
if (typeof tableEvents === 'function') {
tableEvents(id, elem, 'delete');
}
values2table(divId, values, onChange, onReady, maxRaw);
}, 100);
if ($add.data('maxRaw')) {
$add.data('raw', $add.data('raw') - 1);
}
})
.addClass('red')
.find('.material-icons')
.html('delete');
} else if (command === 'up') {
$(this).on('click', function () {
var id = $(this).data('index');
var elem = values[id];
values.splice(id, 1);
values.splice(id - 1, 0, elem);
onChange && onChange();
setTimeout(function () {
values2table(id, values, onChange, onReady, maxRaw);
}, 100);
}).find('i').html('arrow_upward');
} else if (command === 'down') {
$(this).on('click', function () {
var id = $(this).data('index');
var elem = values[id];
values.splice(id, 1);
values.splice(id + 1, 0, elem);
onChange && onChange();
setTimeout(function () {
values2table(id, values, onChange, onReady, maxRaw);
}, 100);
}).find('i').html('arrow_downward');
} else if (command === 'pair') {
$(this).on('click', function () {
if (typeof tableEvents === 'function') {
var id = $(this).data('index');
var elem = values[id];
tableEvents(id, elem, 'pair');
}
}).attr('title', _('pair')).find('i').html('insert_link');
} else if (command === 'unpair') {
$(this).on('click', function () {
if (typeof tableEvents === 'function') {
var id = $(this).data('index');
var elem = values[id];
tableEvents(id, elem, 'unpair');
}
}).attr('title', _('unpair')).find('i').html('not_interested');
}
});
$lines.find('.values-input').on('change.adaptersettings', function () {
var index = $(this).data('index');
var name = $(this).data('name');
if ($(this).attr('type') === 'checkbox') {
if ($(this).prop('checked').toString() !== $(this).data('old-value') && onChange) onChange(name, index);
values[index][name] = $(this).prop('checked');
} else {
if ($(this).val() !== $(this).data('old-value') && onChange) onChange(name, index);
values[index][name] = $(this).val();
}
}).on('keyup', function () {
$(this).trigger('change.adaptersettings');
});
}
if (typeof onReady === 'function') onReady();
}
/**
* Extract the values from table.
*
* This function extracts the values from edit table, that was generated with values2table function.
*
* @param {string} divId name of the html element (or nothing).
* @return {object} array with values
*/
function table2values(divId) {
var $div;
if (!divId) {
$div = $('body');
} else {
$div = $('#' + divId);
}
var names = [];
$div.find('.table-values th').each(function () {
var name = $(this).data('name');
if (name) {
names.push(name);
} else {
names.push('___ignore___');
}
});
var values = [];
var j = 0;
$div.find('.table-lines tr').each(function () {
values[j] = {};
$(this).find('td').each(function () {
var $input = $(this).find('input');
if ($input.length) {
var name = $input.data('name');
if ($input.attr('type') === 'checkbox') {
values[j][name] = $input.prop('checked');
} else {
values[j][name] = $input.val();
}
}
var $select = $(this).find('select');
if ($select.length) {
var name = $select.data('name');
values[j][name] = $select.val() || '';
}
});
j++;
});
return values;
}
+124
View File
@@ -0,0 +1,124 @@
'use strict';
var systemLang = 'en';
var systemDictionary = {};
function translateWord(text, lang, dictionary) {
if (!text) return '';
lang = lang || systemLang;
dictionary = dictionary || systemDictionary;
text = text.toString();
if (dictionary[text]) {
var newText = dictionary[text][lang];
if (newText) {
return newText;
} else if (lang !== 'en') {
newText = dictionary[text].en;
if (newText) {
return newText;
}
}
} else if (typeof text === 'string' && !text.match(/_tooltip$/)) {
console.log('"' + text + '": {"en": "' + text + '", "de": "' + text + '", "ru": "' + text + '", "pt": "' + text + '", "nl": "' + text + '", "fr": "' + text + '", "es": "' + text + '", "pl": "' + text + '", "it": "' + text + '"},');
} else if (typeof text !== 'string') {
console.warn('Trying to translate non-text:' + text);
}
return text;
}
function translateAll(selector, lang, dictionary) {
lang = lang || systemLang;
dictionary = dictionary || systemDictionary;
if (!selector) {
selector = 'body';
}
var $selector = $(selector);
// translate <div class="translate">textToTranslate</div>
$selector.find('.translate').each(function (idx) {
var text = $(this).attr('data-lang');
if (!text) {
text = $(this).html();
$(this).attr('data-lang', text);
}
var transText = translateWord(text, lang, dictionary);
if (transText) {
$(this).html(transText);
}
});
// translate <input type="button" class="translateV" value="textToTranslate">
$selector.find('.translateV').each(function (idx) {
var text = $(this).attr('data-lang-value');
if (!text) {
text = $(this).attr('value');
$(this).attr('data-lang-value', text);
}
var transText = translateWord(text, lang, dictionary);
if (transText) {
$(this).attr('value', transText);
}
});
$selector.find('.translateT').each(function (idx) {
//<span class="ui-button-text translateT" title="TextToTranslate">Save</span>
var text = $(this).attr('data-lang-title');
if (!text) {
text = $(this).attr('title');
$(this).attr('data-lang-title', text);
}
var transText = translateWord(text, lang, dictionary);
if (transText) {
$(this).attr('title', transText);
}
});
$selector.find('.translateP').each(function (idx) {
//<span class="ui-button-text translateP" placeholder="TextToTranslate">Save</span>
var text = $(this).attr('data-lang-placeholder');
if (!text) {
text = $(this).attr('placeholder');
$(this).attr('data-lang-placeholder', text);
}
var transText = translateWord(text, lang, dictionary);
if (transText) {
$(this).attr('placeholder', transText);
}
});
}
function translateName(name) {
if (name && typeof name === 'object') {
return name[systemLang] || name.en;
} else {
return name;
}
}
// make possible _('words to translate')
var _ = function (text, arg1, arg2, arg3) {
text = translateWord(text);
var pos = text.indexOf('%s');
if (pos !== -1) {
text = text.replace('%s', arg1);
} else {
return text;
}
pos = text.indexOf('%s');
if (pos !== -1) {
text = text.replace('%s', arg2);
} else {
return text;
}
pos = text.indexOf('%s');
if (pos !== -1) {
text = text.replace('%s', arg3);
}
return text;
};
+834
View File
@@ -0,0 +1,834 @@
(function ($) {
'use strict';
if ($.fn.treeTable) return;
function nodeExpand() {
var id = this.id;
var $table = this.row.parent().parent(); // table > tbody > tr
var options = $table.data('options');
if (options.name) {
options.expanded = options.expanded || [];
if (options.expanded.indexOf(id) === -1) {
options.expanded.push(id);
if (typeof Storage !== 'undefined') {
window.localStorage.setItem(options.name + '-treetable', JSON.stringify(options.expanded));
}
}
}
var parentNode = $table.treetable('node', id);
}
function nodeCollapse() {
var id = this.id;
var $table = this.row.parent().parent(); // table > tbody > tr
var options = $table.data('options');
if (options.name && options.expanded) {
var pos = options.expanded.indexOf(id);
if (pos !== -1) {
options.expanded.splice(pos, 1);
if (typeof Storage !== 'undefined') {
window.localStorage.setItem(options.name + '-treetable', JSON.stringify(options.expanded));
}
}
}
var parentNode = $table.treetable('node', id);
}
function filter($table, word) {
if (word) {
word = word.toLowerCase();
var options = $table.data('options');
$table.find('tr').each(function () {
if ($(this).hasClass('tree-table-main-header')) return;
if (!$(this).data('tt-branch') && $(this).find('td:first-child').text().indexOf(word) === -1) {
$(this).addClass('filtered-out');
} else {
$(this).removeClass('filtered-out');
}
});
var branch = '';
var isOneVisible = false;
// hide branches without children
$table.find('tr').each(function () {
if ($(this).data('tt-branch')) {
if (branch) {
if (!isOneVisible) {
$table.find('tr[data-tt-id="' + branch + '"]').addClass('filtered-out');
} else {
$table.find('tr[data-tt-id="' + branch + '"]').removeClass('filtered-out');
}
}
isOneVisible = false;
branch = $(this).data('tt-id');
} else if (branch) {
if (!$(this).hasClass('filtered-out')) isOneVisible = true;
}
});
if (branch) {
if (!isOneVisible) {
$table.find('tr[data-tt-id="' + branch + '"]').addClass('filtered-out');
} else {
$table.find('tr[data-tt-id="' + branch + '"]').removeClass('filtered-out');
}
}
} else {
$table.find('tr').removeClass('filtered-out');
}
}
function processMoveTasks(options, tasks, callback) {
if (!tasks || !tasks.length) {
callback && callback();
return;
}
var task = tasks.shift();
options.moveId && options.moveId(task.oldId, task.newId, function (err) {
setTimeout(function () {
processMoveTasks(options, tasks, callback);
}, 50);
});
}
function buildList(options, noButtons) {
var table = noButtons ? '' : '<div class="treetablelist-buttons"><button class="treetable-list-btn-ok"></button><button class="treetable-list-btn-cancel"></button></div>';
table += '<ul class="treetable-list">';
var rows = options.rows;
for (var i = 0; i < rows.length; i++) {
var parents = 0;
var current = rows[i];
while (current.parent) {
var found = false;
for (var j = 0; j < rows.length; j++) {
if (rows[j].id === current.parent) {
current = rows[j];
found = true;
break;
}
}
if (!found) break;
parents++;
}
var title = rows[i].title;
if (typeof title === 'object') {
title = title[systemLang] || title.en;
}
var isNotFolder = rows[i].instance === undefined ? 0 : 1;
table += '<li data-id="' + rows[i].id + '" class="' + (!isNotFolder ? 'treetable-list-folder' : 'treetable-list-item') + '" style="margin-left: ' + (parents * 19) + 'px; width: calc(100% - ' + (parents * 15 + 2 + isNotFolder * 7) + 'px);' +
(rows[i].id === 'script.js.global' ? 'color: rgb(0, 128, 0);' : '') + '">' +
(!isNotFolder ? '<span class="fancytree-expander"></span>' : '') + '<span class="fancytree-icon"></span>' + title + '</li>';
}
table += '</ul>';
var $dlg = $(this);
var $table = $(table);
$dlg.find('.treetablelist-buttons').remove();
$dlg.find('.treetable-list').remove();
$dlg.find('.tree-table-buttons').remove();
$dlg.find('.tree-table-main').remove();
$dlg.prepend($table);
var $buttons = $($table).find('.treetablelist-buttons');
var $list = $($table).find('.treetable-list');
$list.sortable({
cancel: '.treetable-list-folder',
axis: 'y'
}).data('options', options);
var that = this;
$buttons.find('.treetable-list-btn-ok').button({
icons: {primary: 'ui-icon-check'},
text: false
})
.css({width: 24, height: 24})
.on('click', function () {
// analyse new structure
var currentFolder = '';
var tasks = [];
$list.find('li').each(function () {
var id = $(this).data('id');
if ($(this).hasClass('treetable-list-folder')) {
currentFolder = id;
} else {
var parts = id.split('.');
var name = parts.pop();
if (parts.join('.') !== currentFolder) {
tasks.push({oldId: id, newId: currentFolder + '.' + name});
}
}
});
processMoveTasks(options, tasks, function () {
buildTable.call(that, options);
});
});
$buttons.find('.treetable-list-btn-cancel').button({
icons: {primary: 'ui-icon-cancel'},
text: false
})
.css({width: 24, height: 24})
.on('click', function () {
buildTable.call(that, options);
});
}
function getIconFromObj(obj, imgPath, classes) {
var icon = '';
var alt = '';
var isCommon = obj && obj.common;
if (isCommon) {
if (isCommon.icon) {
if (!isCommon.icon.match(/^data:image\//)) {
if (isCommon.icon.indexOf('.') !== -1) {
var instance;
if (obj.type === 'instance') {
icon = '/adapter/' + obj.common.name + '/' + obj.common.icon;
} else if (obj._id.match(/^system\.adapter\./)) {
instance = obj._id.split('.', 3);
if (obj.common.icon[0] === '/') {
instance[2] += obj.common.icon;
} else {
instance[2] += '/' + obj.common.icon;
}
icon = '/adapter/' + instance[2];
} else {
instance = obj._id.split('.', 2);
if (obj.common.icon[0] === '/') {
instance[0] += obj.common.icon;
} else {
instance[0] += '/' + obj.common.icon;
}
icon = '/adapter/' + instance[0];
}
} else {
return '<i class="material-icons ' + (classes || 'treetable-icon') + '">' + isCommon.icon + '</i>';
}
} else {
icon = isCommon.icon;
}
alt = obj.type;
} else {
imgPath = imgPath || 'lib/css/fancytree/';
if (obj.type === 'device') {
icon = imgPath + 'device.png';
alt = 'device';
} else if (obj.type === 'channel') {
icon = imgPath + 'channel.png';
alt = 'channel';
} else if (obj.type === 'state') {
icon = imgPath + 'state.png';
alt = 'state';
}
}
}
if (icon) return '<img class="' + (classes || 'treetable-icon') + '" src="' + icon + '" alt="' + alt + '" />';
return '';
}
// https://stackoverflow.com/questions/35969656/how-can-i-generate-the-opposite-color-according-to-current-color
/*function invertColor(hex) {
if (hex.indexOf('#') === 0) {
hex = hex.slice(1);
}
// convert 3-digit hex to 6-digits.
if (hex.length === 3) {
hex = hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2];
}
if (hex.length !== 6) {
return false;
}
var r = parseInt(hex.slice(0, 2), 16),
g = parseInt(hex.slice(2, 4), 16),
b = parseInt(hex.slice(4, 6), 16);
// http://stackoverflow.com/a/3943023/112731
return (r * 0.299 + g * 0.587 + b * 0.114) <= 186;
}*/
function getUsersGroups(objects, groups) {
var usersGroups = {};
for (var g = 0; g < groups.length; g++) {
if (objects[groups[g]] && objects[groups[g]].common && objects[groups[g]].common.members) {
var users = objects[groups[g]].common.members;
for (var u = 0; u < users.length; u++) {
usersGroups[users[u]] = usersGroups[users[u]] || [];
var name = objects[groups[g]].common.name;
if (name && typeof name === 'object') {
name = name[systemLang] || 'en';
}
usersGroups[users[u]].push({id: groups[g], name: name || id.replace('system.group.', '')});
}
}
}
return usersGroups;
}
function buildTable(options) {
var table = '';
// detect materialize
var buttonTag = window.M && window.M.toast ? 'a' : 'button';
if (options.panelButtons) {
table += '<div class="row tree-table-buttons m">';
for (var z = 0; z < options.panelButtons.length; z++) {
table += '<' + buttonTag + ' class="btn-floating waves-effect waves-light blue btn-custom-' + z + '" title="' + (options.panelButtons[z].title || '') + '" ' + (options.panelButtons[z].id ? 'id="' + options.panelButtons[z].id + '"' : '') + '>';
// detect materialize
if (window.M && window.M.toast) {
table += '<i class="material-icons">' + (options.panelButtons[z].icon || '') + '</i>';
}
table += '</' + buttonTag + '>';
}
if (options.moveId) {
table += '<' + buttonTag + ' class="btn-floating waves-effect waves-light blue treetable-sort" title="' + _('reorder') + '">';
// detect materialize
if (window.M && window.M.toast) {
table += '<i class="material-icons">import_export</i>';
}
table += '</' + buttonTag + '>';
}
table += '</div>';
}
// build header
table += '<div class="row tree-table-body"><table class="tree-table-main">';
table += ' <thead>';
table += ' <tr class="tree-table-main-header">';
for (var ch = 0; ch < options.columns.length; ch++) {
if (options.columns[ch] === 'name') {
table += ' <th' + (options.widths && options.widths[ch] ? ' class="treetable-th-name" style="width: ' + options.widths[ch] + '"' : '') + '>';
table += ' <input placeholder="' + _('name') + '" class="filter_name treetable-filter" />';
table += ' <button data-id="filter_name" role="button" class="filter-clear"></button>';
table += ' </th>';
} else {
table += ' <th' + (options.widths && options.widths[ch] ? ' style="width: ' + options.widths[ch] + '"' : '') + '>' + _(options.columns[ch]) + '</th>';
}
}
if (options.buttons) {
table += ' <th' + (options.buttonsWidth ? ' style="width: ' + options.buttonsWidth + '"' : '') + '></th>';
}
table += ' </tr>';
table += '</thead>';
// build body
table += '<tbody>';
// <tr data-tt-id="system.adapter.0" data-tt-branch='true'>
var rows = [];
var rootEx = options.root ? new RegExp('^' + options.root.replace(/\./g, '\\.') + '\\.') : null;
var instances = options.columns.indexOf('instance') !== -1 ? [] : null;
for (var id in options.objects) {
if (!options.objects.hasOwnProperty(id)) continue;
var m;
if (instances && options.objects[id].type === 'instance' &&
(m = id.match(/^system\.adapter\.javascript\.(\d+)$/))) {
instances.push(m[1]);
}
if (rootEx && !rootEx.test(id)) continue;
var common = options.objects[id].common;
var obj = {
id: id,
parent: null,
_class: 'treetable-' + options.objects[id].type
};
if (options.objects[id].type === 'channel') {
obj.folder = true;
}
for (var cb = 0; cb < options.columns.length; cb++) {
if (options.columns[cb] === 'instance') {
if (options.objects[id].type === 'script') {
obj.instance = common ? common.engine.split('.').pop() : 0;
}
} else if (common && options.columns[cb] !== 'id') {
var val = common[options.columns[cb]];
if (val !== undefined) {
obj[options.columns[cb]] = val;
}
}
}
if (options.members) {
obj.members = common.members;
}
if (options.colors) {
obj.color = common.color;
}
rows.push(obj);
}
// sort
rows.sort(function (a, b) {
if (a.id > b.id) return 1;
if (a.id < b.id) return -1;
return 0;
});
// find parents and extend members
for (var pp = 0; pp < rows.length; pp++) {
// find parent:
var parts = rows[pp].id.split('.');
var title = parts.pop();
var parent = parts.join('.');
rows[pp].title = title;
for (var p = 0; p < rows.length; p++) {
if (rows[p].id === parent) {
rows[pp].parent = parent;
rows[p].children = rows[p].children || [];
rows[p].children.push(pp);
break;
}
}
if (parts.length === 1) {
rows[pp]._class += ' treetable-root'
}
}
for (var ppp = 0; ppp < rows.length; ppp++) {
rows[ppp].realChildren = rows[ppp].children ? !!rows[ppp].children.length : false;
}
if (options.groups) {
var users = getUsersGroups(options.objects, options.groups);
for (var g = rows.length - 1; g >= 0; g--) {
rows[g].groups = users[rows[g].id] || [];
}
}
if (options.members) {
for (var k = rows.length - 1; k >= 0; k--) {
// extend members
if (rows[k].members) {
rows[k].children = rows[k].children || [];
var members = Object.assign([], rows[k].members);
members.sort();
for (var mm = 0; mm < members.length; mm++) {
obj = {
id: members[mm],
title: members[mm],
parent: rows[k].id,
_class: 'treetable-member'
};
rows[k].children.push(members[mm]);
if (options.objects[obj.id]) {
var ccommon = options.objects[obj.id].common;
if (ccommon) {
for (var ccb = 0; ccb < options.columns.length; ccb++) {
var attr = options.columns[ccb];
if (attr === 'members' || attr === 'id' || attr === 'title' || attr === 'icon') continue;
var vval = ccommon[options.columns[ccb]];
if (vval !== undefined) {
obj[attr] = vval;
}
}
if (options.colors) {
obj.color = common.color;
}
}
}
rows.splice(k + 1, 0, obj);
}
delete rows[k].members;
}
}
}
var instSelect = '';
for (var i = 0; i < rows.length; i++) {
// title
table += '<tr data-tt-id="' + rows[i].id + '"' + (!!rows[i].children ? ' data-tt-branch="true"' : '') + (rows[i].parent ? ' data-tt-parent-id="' + rows[i].parent + '"' : '') + ' class="';
if (rows[i]._class) {
table += rows[i]._class + ' ';
}
if (options.draggable) {
table += options.draggable + ' ';
}
if (rows[i].children && rows[i].children.length) {
table += 'not-empty';
} else {
table += 'is-empty';
}
table += '">';
for (var c = 0; c < options.columns.length; c++) {
var aattr = options.columns[c];
var style = '';
var _class = (options.classes && options.classes[c]) || '';
if (aattr === 'groups') {
_class += ' m';
}
if (!c && rows[i].hasOwnProperty('children')) {
_class += ' treetable-folder fancytree-exp-c fancytree-has-children fancytree-ico-cf';
if (rows[i].id === 'script.js.global') {
style += ' color: rgb(0, 128, 0);'; // green
} else {
style += ' color: rgb(0, 0, 128);'
}
table += '<td style="' + style + '" class="' + _class + '">';
if (rows[i].children && rows[i].children.length) {
table += '<span class="treetable-counter">' + rows[i].children.length + '</span>';
}
} else {
table += '<td style="' + style + '" class="' + _class + '">';
}
if (!c && options.colors && rows[i].color) {
table += '<div style="background: ' + rows[i].color + '" class="treetable-color"></div>';
}
if (!c && options.icons) {
table += getIconFromObj(options.objects[rows[i].id], options.imgPath) || '<div class="treetable-icon-empty">&nbsp;</div>';
}
if (aattr === 'enabled') {
table += '<input data-attr="' + aattr + '" data-id="' + rows[i].id + '" class="treetable-input" type="checkbox" ' + (rows[i][aattr] ? 'checked' : '') + ' ' + (options.readOnly && options.readOnly[c] !== false ? 'disabled' : '') + '>';
} else
if (aattr === 'groups') {
for (var gg = 0; gg < rows[i].groups.length; gg++) {
var gId = rows[i].groups[gg].id;
table += '<div class="chip">' + getIconFromObj(options.objects[gId], null, '') + rows[i].groups[gg].name + '</div>'; //<i class="close material-icons" data-group="' + rows[i].groups[gg].id + '" data-user="' + rows[i].id + '">close</i></div>';
}
} else
// edit instance
if (aattr === 'instance') {
if (rows[i].instance !== undefined && instances.length > 1) {
instSelect = '<select class="treetable-instance" data-id="' + rows[i].id + '">';
for (var ii = 0; ii < instances.length; ii++) {
instSelect += '<option value="' + instances[ii] + '" ' + (instances[ii] === rows[i].instance ? 'selected' : '') + '>' + instances[ii] + '</option>';
}
instSelect += '</select>';
table += instSelect;
} else {
table += '<span>' + (rows[i].instance === undefined ? '' : rows[i].instance) + '</span>';
}
} else if (aattr === 'icon') {
table += getIconFromObj(options.objects[rows[i].id], options.imgPath);
} else {
var vall = rows[i][aattr] || '';
if (vall && typeof vall === 'object' && vall.en) {
vall = vall[systemLang] || vall.en;
}
table += '<span>' + vall + '</span>';
}
table += '</td>';
}
// add buttons
if (options.buttons) {
table += '<td class="treetable-buttons" style="' + (options.buttonsStyle || '') + '">';
var text = '';
for (var jj = 0; jj < options.buttons.length; jj++) {
if (options.buttons[jj].match && !options.buttons[jj].match(rows[i].id, rows[i].parent)) {
text += '<div class="treetable-button-empty">&nbsp;</div>';
} else {
text += '<' + buttonTag + ' data-id="' + rows[i].id + '" class="select-button-' + jj + ' select-button-custom td-button" style="margin-right: 3px;'+ '" data-parent="' + rows[i].parent + '" data-children="' + !!rows[i].realChildren + '" title="' + (options.buttons[jj].title || '') + '">';
// detect materialize
if (window.M && window.M.toast) {
text += '<i class="material-icons">' + (options.buttons[jj].icon || '') + '</i>';
}
text += '</' + buttonTag + '>';
}
}
table += text + '</td>';
}
table += '</tr>';
}
table += '</body>';
var $dlg = $(this);
var $table = $(table);
$dlg.find('span:first-child').remove();
$dlg.find('.treetablelist-buttons').remove();
$dlg.find('.treetable-list').remove();
$dlg.find('.tree-table-buttons').remove();
$dlg.find('.tree-table-main').remove();
$dlg.prepend($table);
options.rows = rows;
var $treeTable = $($table[1]).find('>table');
var $buttons = $($table[0]);
$treeTable.data('options', options);
$treeTable.treetable({
expandable: true,
clickableNodeNames: true,
expanderTemplate: '',
indenterTemplate: '<span class="fancytree-expander"></span><span class="fancytree-icon"></span>',
onNodeExpand: nodeExpand,
onNodeCollapse: nodeCollapse,
stringCollapse: _('collapse'),
stringExpand: _('expand')
});
var $tbody = $treeTable.find('tbody');
$tbody.on('click', 'tr', function() {
$('.selected').not(this).removeClass('selected');
$(this).addClass('selected');
var $table = $(this).parent().parent();
var options = $table.data('options');
var id = $(this).data('tt-id');
options.onChange && options.onChange($(this).data('tt-id'), options.oldId);
options.oldId = id;
});
if (options.buttons) {
for (var b = 0; b < options.buttons.length; b++) {
var $btn = $tbody.find('.select-button-' + b).button(options.buttons[b]).on('click', function () {
var cb = $(this).data('callback');
if (cb) {
cb.call($(this), $(this).data('id'), $(this).data('children'), $(this).data('parent'));
}
}).data('callback', options.buttons[b].click).attr('title', options.buttons[b].title || '');
if ($btn.length === 0) continue;
if (options.buttons[b].width) $btn.css({width: options.buttons[b].width});
if (options.buttons[b].height) $btn.css({height: options.buttons[b].height});
/*if (options.buttons[b].match) {
$btn.each(function () {
options.buttons[b].match.call($(this), $(this).data('id'));
});
}*/
}
}
if (options.panelButtons) {
for (var zz = 0; zz < options.panelButtons.length; zz++) {
var $zz = $buttons.find('.btn-custom-' + zz);
$zz
.on('click', options.panelButtons[zz].click)
.attr('title', options.panelButtons[zz].title || '');
// detect materialize
if (!window.M || !window.M.toast) {
$zz
.button(options.panelButtons[zz])
.css({width: 24, height: 24})
}
}
}
$treeTable.find('.filter_name').on('change', function () {
var timer = $(this).data('timer');
if (timer) {
clearTimeout(timer);
}
var $this = $(this);
$this.data('timer', setTimeout(function () {
$this.data('timer', null);
var val = $table.find('.filter_name').val();
if (val) {
$this.addClass('input-not-empty');
} else {
$this.removeClass('input-not-empty');
}
filter($($table[1]), $table.find('.filter_name').val());
}));
}).on('keyup', function () {
$(this).trigger('change');
});
$treeTable.find('.filter-clear')
.button({icons: {primary: 'ui-icon-close'}, text: false})
.on('click', function () {
var name = $(this).data('id');
$table.find('.' + name).val('').trigger('change');
});
var that = this;
$buttons.find('.treetable-sort')
.button({icons: {primary: 'ui-icon-arrowthick-2-n-s'}, text: false})
.css({width: 24, height: 24})
.on('click', function () {
buildList.call(that, options);
});
if (options.onEdit) {
$treeTable.find('.treetable-instance').on('change', function () {
options.onEdit($(this).data('id'), 'instance', $(this).val());
});
$treeTable.find('.treetable-input').on('change', function (e) {
e.stopPropagation();
var val;
if ($(this).attr('type') === 'checkbox') {
val = $(this).prop('checked');
} else {
val = $(this).val();
}
var id = $(this).data('id');
if (options.onEdit) {
if (options.onEdit(id, $(this).data('attr'), val) === false) {
// todo support more types
$(this).prop('checked', true);
}
}
}).on('keyup', function () {
$(this).trigger('change');
});
} else {
$treeTable.find('.treetable-instance').prop('disabled', true)
}
if (typeof options.onReady === 'function') {
options.onReady($treeTable);
}
}
function reInit() {
var $table = $(this).find('.tree-table-main');
// remember selected
var id = $table.find('.selected').data('tt-id');
var expanded = $table.find('.expanded');
var exIDs = [];
expanded.each(function (el) {
exIDs.push($(this).data('tt-id'));
});
var nameFilter = $table.find('.filter_name').val();
var options = $table.data('options');
buildTable.call(this, options);
$table = $(this).find('.tree-table-main');
for (var e = 0; e < exIDs.length; e++) {
try {
$table.treetable('expandNode', exIDs[e]);
} catch (e) {
}
}
if (id) {
var node = $table.treetable('node', id);
node && $table.treetable('reveal', id);
node && node.row && node.row.addClass('selected');
}
if (nameFilter) $table.find('.filter_name').val(nameFilter).trigger('change');
}
var methods = {
init: function (options) {
options.imgPath = options.imgPath || 'lib/css/fancytree/';
for (var i = 0; i < this.length; i++) {
buildTable.call(this[i], options);
if (typeof Storage !== 'undefined') {
var exIDs = window.localStorage.getItem(options.name + '-treetable');
if (exIDs) {
exIDs = JSON.parse(exIDs);
var $table = $(this[i]).find('.tree-table-main');
for (var e = 0; e < exIDs.length; e++) {
try {
$table.treetable('expandNode', exIDs[e]);
} catch (e) {
}
}
}
}
}
return this;
},
destroy: function () {
for (var i = 0; i < this.length; i++) {
var $table = $(this[i]).find('.tree-table-main');
if ($table.length && $table.data('options')) {
$table.data('options', null);
$(this[i]).html('');
}
}
},
expand: function (id) {
for (var i = 0; i < this.length; i++) {
var $table = $(this[i]).find('.tree-table-main');
try {
if (id) {
$table.treetable('expandNode', id);
} else {
$table.treetable('expandAll', id);
}
} catch (e) {
}
}
},
collapse: function (id) {
for (var i = 0; i < this.length; i++) {
var $table = $(this[i]).find('.tree-table-main');
try {
if (id) {
$table.treetable('collapseNode', id);
} else {
$table.treetable('collapseAll');
}
} catch (e) {
}
}
},
show: function (currentId, filter, onSuccess) {
if (typeof filter === 'function') {
onSuccess = filter;
filter = undefined;
}
if (typeof currentId === 'function') {
onSuccess = currentId;
currentId = undefined;
}
for (var i = 0; i < this.length; i++) {
var $table = $(this[i]).find('.tree-table-main');
$table.find('.selected').removeClass('selected');
try {
$table.treetable('reveal', currentId);
} catch (e) {
}
var node = $table.treetable('node', currentId);
node && node.row.addClass('selected');
}
onSuccess && onSuccess();
return this;
},
reinit: function () {
for (var i = 0; i < this.length; i++) {
reInit.call(this[i]);
}
return this;
},
'object': function (id, obj) {
for (var i = 0; i < this.length; i++) {
var $table = $(this[i]).find('.tree-table-main');
if ($table.updateTimer) {
clearTimeout($table.updateTimer);
}
var options = $table.data('options');
if (options && options.root && !id.match('^' + options.root.replace(/\./g, '\\.') + '\\.')) continue;
var elem = this[i];
// do not update too often. de-bounce it
(function (_elem, _$table) {
_$table.updateTimer = setTimeout(function () {
reInit.call(_elem);
}, 300);
})(elem, $table);
}
return this;
}
};
$.fn.treeTable = function (method) {
if (methods[method]) {
return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
} else if (typeof method === 'object' || !method) {
return methods.init.apply(this, arguments);
} else {
$.error('Method "' + method + '" not found in jQuery.treeTable');
}
};
})(jQuery);
+15
View File
@@ -0,0 +1,15 @@
#cron-input {
margin-bottom: 10px;
}
.cron-preview-every {
padding-bottom: 10px;
}
.cron-tab-page {
padding-top: 0em !important;
padding-left: 0em !important;
padding-right: 0em !important;
padding-bottom: 0em !important;
}
.cron-tabs {
background: white;
}
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

+456
View File
@@ -0,0 +1,456 @@
.dialog-select-object-ids {
/** inline edit **/
/**/
/*select ~ .select-id-quick-edit-ok, // only if type = combobx
select ~ .select-id-quick-edit-cancel { // only if type = combobx
top:1px;
}*/
}
.dialog-select-object-ids .true {
color: #06960E;
font-weight: bold;
}
.dialog-select-object-ids .false {
color: #D92626;
font-weight: normal;
}
.dialog-select-object-ids .error {
color: #D92626;
font-weight: normal;
}
.dialog-select-object-ids .highlight {
animation: highlight 2s;
}
.dialog-select-object-ids .grid-main-div {
height: calc(100% - 50px);
}
.dialog-select-object-ids .grid-main-wh-div {
height: calc(100% - 22px);
}
.dialog-select-object-ids .grid-main-wob-div {
height: calc(100% - 38px - 26px);
}
.dialog-select-object-ids .grid-main-wh-div,
.dialog-select-object-ids .grid-main-wob-div {
overflow-x: hidden;
width: 100%;
padding: 0;
overflow-y: scroll;
}
.dialog-select-object-ids .grid-main-wh-div > table,
.dialog-select-object-ids .grid-main-wob-div > table {
width: calc(100% - 5px);
}
@-moz-keyframes spin {
100% {
-moz-transform: rotate(360deg);
}
}
@-webkit-keyframes spin {
100% {
-webkit-transform: rotate(360deg);
}
}
@keyframes spin {
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
.dialog-select-object-ids .objects-folder {
height: 0.8em;
width: 0.8em;
margin: 0.3em;
}
.dialog-select-object-ids .objects-name-coll-table-td {
border-spacing: 0;
padding: 0;
margin: 0;
border: 0;
}
.dialog-select-object-ids .objects-name-coll-icon {
/*position: relative;*/
/*top: 3px;*/
vertical-align: sub;
}
.dialog-select-object-ids .objects-name-coll-title {
border-spacing: 0;
padding: 0;
margin: 0;
border: 0;
display: inline-block;
padding-left: 5px;
vertical-align: middle;
}
.dialog-select-object-ids .objects-inline-edit {
width: 100%;
height: 24px;
border: 0;
padding: 0;
margin: 0;
padding-left: 4px;
}
.dialog-select-object-ids table.objects-list-table td {
border: 1px solid #e0e0e0;
}
.dialog-select-object-ids .objects-list-table {
background: #efefef;
white-space: nowrap;
table-layout: fixed;
border-collapse: collapse;
border-spacing: 0;
padding: 0;
overflow: auto;
font-family: "Segoe UI", Tahoma, Arial, "Courier New" !important;
font-weight: normal;
font-size: 0.82rem !important;
border-top: 0;
width: calc(100% - 10px);
margin: 0 5px 0 1px;
/* for mouse over rahmen */
outline: 5px;
outline-offset: -1px;
}
.dialog-select-object-ids .objects-list-table > tbody > tr > td {
padding-left: 5px;
}
.dialog-select-object-ids .objects-list-table .fancytree-title {
font-weight: normal !important;
}
.dialog-select-object-ids .select-id-quick-edit {
height: 17px;
}
.dialog-select-object-ids .select-id-quick-edit-buttons {
position: absolute;
z-index: 3;
top: 2px;
right: 5px;
}
.dialog-select-object-ids .select-id-quick-edit-buttons.text {
top: 23px;
}
.dialog-select-object-ids .select-id-quick-edit-buttons.text .select-id-quick-edit-ok,
.dialog-select-object-ids .select-id-quick-edit-buttons.text .select-id-quick-edit-cancel {
border: 1px solid gray;
background-color: white;
}
.dialog-select-object-ids .select-id-quick-edit-buttons .select-id-quick-edit-ok,
.dialog-select-object-ids .select-id-quick-edit-buttons .select-id-quick-edit-cancel {
cursor: pointer;
width: 16px;
height: 16px;
border-radius: 0;
display: inline-block;
}
.dialog-select-object-ids .objects-inline-edit {
position: relative;
left: -4px;
padding-left: 4px;
padding-right: 4px;
width: calc(100% - 0px);
z-index: 2;
font-family: "Segoe UI", Tahoma, Arial, "Courier New" !important;
font-size: 0.82rem;
vertical-align: middle;
text-overflow-mode: clip;
}
.dialog-select-object-ids .objects-name-coll-title .objects-inline-edit {
width: calc(100% + 4px - 1);
}
.dialog-select-object-ids input.objects-inline-edit {
width: calc(100% - 2px);
z-index: 2;
}
.dialog-select-object-ids .objects-list-table > colgroup > col:nth-child(8) {
width: 80px !important;
min-width: 80px !important;
}
.dialog-select-object-ids .filter-btn {
width: 18px;
height: 18px;
border: 0;
background: #fff;
}
.dialog-select-object-ids .main-header-table tr {
background: #ffffff;
}
.dialog-select-object-ids .main-header-table td.input {
width: 100%;
}
.dialog-select-object-ids .main-header-table select.filter option {
line-height: 0.5em;
background: #fff;
}
.dialog-select-object-ids .objects-list-running {
position: absolute;
top: 50%;
left: 50%;
width: 5rem;
padding: 12px;
background: rgba(185, 185, 185, 0.5);
text-align: center;
color: white;
font-weight: bold;
border-radius: 5px;
font-size: 10px;
}
.dialog-select-object-ids .ui-state-active.fancytree-active {
color: black !important;
}
.dialog-select-object-ids .ui-state-active.fancytree-active .ui-icon {
background-image: url(../lib/css/themes/jquery-ui/redmond/images/ui-icons_777777_256x240.png) !important;
}
.dialog-select-object-ids *::-webkit-scrollbar-track {
background-color: #ccc;
}
.dialog-select-object-ids *::-webkit-scrollbar {
width: 10px;
background-color: #ccc;
}
.dialog-select-object-ids *::-webkit-scrollbar-thumb {
background-color: #575757;
}
.dialog-select-object-ids .select-button-push,
.dialog-select-object-ids .select-button-edit,
.dialog-select-object-ids .select-button-ok,
.dialog-select-object-ids .select-button-cancel {
width: 26px;
height: 20px;
}
.dialog-select-object-ids .main-toolbar-table {
position: relative;
}
.dialog-select-object-ids .main-toolbar-table .select-id-custom-buttons {
display: inline-block;
}
.dialog-select-object-ids .main-toolbar-table .iob-toolbar-sep {
display: inline-block;
margin-left: 0.5rem;
}
.dialog-select-object-ids .main-toolbar-table .panel-button {
display: inline-block;
line-height: 24px;
height: 24px;
width: 24px;
color: #fff;
position: relative;
overflow: hidden;
z-index: 1;
padding: 0;
border-radius: 50%;
transition: background-color 0.3s;
cursor: pointer;
vertical-align: middle;
}
.dialog-select-object-ids .main-toolbar-table .panel-button:hover {
border: 0;
}
.dialog-select-object-ids .main-toolbar-table .panel-button i {
margin-left: -0.5px;
font-size: 1.1rem;
line-height: 28px;
margin-top: -1px;
}
.dialog-select-object-ids .main-toolbar-table .btn-expert {
margin-right: 3px;
}
.dialog-select-object-ids .main-toolbar-table .btn-history {
float: right;
margin-right: 20px;
}
.dialog-select-object-ids .main-toolbar-table .objects-info {
display: inline-block;
float: right;
padding-right: 1rem;
margin-top: 5px;
}
.dialog-select-object-ids .old-style .main-header-table {
width: 100%;
}
.dialog-select-object-ids .old-style .main-header-table th span {
font-size: 11px;
font-weight: normal;
}
.dialog-select-object-ids .old-style .grid-main-wob-div {
height: calc(100% - 50px);
}
.dialog-select-object-ids .old-style .iob-list-icon {
height: 16px;
}
.dialog-select-object-ids .old-style .clippy-button {
height: 16px;
}
.dialog-select-object-ids .old-style .ui-state-active,
.dialog-select-object-ids .old-style .ui-widget-content .ui-state-active {
background: inherit !important;
}
.dialog-select-object-ids .material .objects-list-running {
height: 5rem;
}
.dialog-select-object-ids .material .filter-btn i {
font-size: 12px;
}
.dialog-select-object-ids .material .td-button-placeholder {
width: 21px;
}
.dialog-select-object-ids .material .custom-obj-btn {
cursor: pointer;
color: #4c4c4c;
background: white;
border: 0;
padding-left: 4px;
margin-right: 1px;
margin-top: 3px;
}
.dialog-select-object-ids .material .custom-obj-btn:hover {
background: #64b5f6;
}
.dialog-select-object-ids .material .custom-obj-btn i {
font-size: 12px;
}
.dialog-select-object-ids .material .iob-list-icon,
.dialog-select-object-ids .material .instance-image {
width: 18px;
height: 18px;
}
.dialog-select-object-ids .material .main-toolbar-table .panel-button {
background-color: #2196f3;
}
.dialog-select-object-ids .main-header-table th {
border-right: 1px solid #b9b9b9;
color: gray;
}
.dialog-select-object-ids .main-header-table .filter {
display: inline-block;
border: 0;
height: 24px;
width: calc(100% - 5px);
padding: 0 0 0 5px;
background: transparent;
color: gray;
font-family: "Segoe UI", Tahoma, Arial, "Courier New" !important;
font-size: 0.82rem !important;
margin-bottom: 0;
}
.dialog-select-object-ids .main-header-table .filter-btn {
display: none;
}
.dialog-select-object-ids .main-header-table .filter-active .filter {
color: black;
width: calc(100% - 24px);
}
.dialog-select-object-ids .main-header-table .filter-active .filter-btn {
padding: 0;
display: inline-block;
width: 19px;
height: 16px;
background: transparent;
border: 0;
margin-top: 3px;
}
.dialog-select-object-ids .main-header-table .filter-active .filter-btn i {
font-size: 12px;
}
.dialog-select-object-ids .clippy-button,
.dialog-select-object-ids .edit-dialog-button {
position: absolute;
top: 1px;
z-index: 1;
margin-top: 1px;
}
.dialog-select-object-ids .clippy-button .tiny,
.dialog-select-object-ids .edit-dialog-button .tiny {
font-size: 10px;
}
.dialog-select-object-ids .clippy-button {
right: 0;
}
.dialog-select-object-ids .edit-dialog-button {
right: 22px;
}
.dialog-select-object-ids .edit-enum .edit-dialog-button {
right: 0;
}
.dialog-select-object-ids .select-value {
display: inline-block;
width: 100%;
padding-left: 5px;
position: relative;
}
@keyframes highlight {
0% {
color: #00f900;
}
80% {
color: green;
}
100% {
color: black;
}
}
.dialog-select-object-ids .highlight {
animation: highlight 2s;
}
.dialog-select-object-ids .select-button-push {
background: white;
border: none;
}
.dialog-select-object-ids .select-button-push i {
font-size: 16px;
margin-left: -1px;
}
#select-id-dialog > span {
float: left;
margin: 0 7px 50px 0;
}
.m #dialog-select-member {
width: calc(100% - 2rem);
height: calc(100% - 2rem) !important;
border: 3px solid #2196f3;
box-sizing: border-box;
}
.m #dialog-select-member td,
.m #dialog-select-member th {
padding: 1px 4px;
}
.m #dialog-select-member .modal-content {
padding: 0.5rem 0.2rem !important;
width: 100% !important;
overflow: hidden;
}
.m #dialog-select-member .modal-content .title {
padding: 3px 10px;
}
.m #dialog-select-member .modal-content .grid-main-wob-div {
height: calc(100% - 103px);
}
.m #dialog-enum-edit {
top: 1rem !important;
height: calc(100% - 2rem);
max-height: calc(100% - 2rem);
}
.m #dialog-enum-edit .dialog-enum-list-col {
height: calc(100% - 81px);
overflow-y: auto;
overflow-x: hidden;
}
.m #dialog-enum-edit .dialog-enum-list-col .dialog-enum-list-id {
margin-left: 10px;
font-size: 10px;
}
.m #dialog-enum-edit .dialog-enum-list-col .iob-list-icon {
height: 24px;
width: 24px;
}
.m #dialog-enum-edit .dialog-enum-list-col .title {
padding-left: 10px;
font-size: 18px;
}
.m #dialog-enum-edit .btn-close {
background-color: #b5b5b5;
}
.m #dialog-enum-edit .name {
margin-left: 10px;
}
/*# sourceMappingURL=selectID.css.map */
File diff suppressed because one or more lines are too long
+13
View File
@@ -0,0 +1,13 @@
<?xml version="1.0"?>
<bindings
xmlns="http://www.mozilla.org/xbl"
xmlns:xbl="http://www.mozilla.org/xbl"
xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<binding id="ellipsis">
<content>
<xul:window><!-- xul:window tag required for FF2 -->
<xul:description crop="end" xbl:inherits="value=xbl:text"><children/></xul:description>
</xul:window>
</content>
</binding>
</bindings>
+162
View File
@@ -0,0 +1,162 @@
/*Grid*/
.ui-jqgrid {position: relative;}
.ui-jqgrid .ui-jqgrid-view {position: relative;left:0; top: 0; padding: 0; font-size:11px;}
/* caption*/
.ui-jqgrid .ui-jqgrid-titlebar {padding: .3em .2em .2em .3em; position: relative; border-left: 0 none;border-right: 0 none; border-top: 0 none;}
.ui-jqgrid .ui-jqgrid-title { float: left; margin: .1em 0 .2em; }
.ui-jqgrid .ui-jqgrid-titlebar-close { position: absolute;top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height:18px; cursor:pointer;}
.ui-jqgrid .ui-jqgrid-titlebar-close span { display: block; margin: 1px; }
.ui-jqgrid .ui-jqgrid-titlebar-close:hover { padding: 0; }
/* header*/
.ui-jqgrid .ui-jqgrid-hdiv {position: relative; margin: 0;padding: 0; overflow-x: hidden; border-left: 0 none !important; border-top : 0 none !important; border-right : 0 none !important;}
.ui-jqgrid .ui-jqgrid-hbox {float: left; padding-right: 20px;}
.ui-jqgrid .ui-jqgrid-htable {table-layout:fixed;margin:0;}
.ui-jqgrid .ui-jqgrid-htable th {height:22px;padding: 0 2px 0 2px;}
.ui-jqgrid .ui-jqgrid-htable th div {overflow: hidden; position:relative; height:17px;}
.ui-th-column, .ui-jqgrid .ui-jqgrid-htable th.ui-th-column {overflow: hidden;white-space: nowrap;text-align:center;border-top : 0 none;border-bottom : 0 none;}
.ui-th-ltr, .ui-jqgrid .ui-jqgrid-htable th.ui-th-ltr {border-left : 0 none;}
.ui-th-rtl, .ui-jqgrid .ui-jqgrid-htable th.ui-th-rtl {border-right : 0 none;}
.ui-first-th-ltr {border-right: 1px solid; }
.ui-first-th-rtl {border-left: 1px solid; }
.ui-jqgrid .ui-th-div-ie {white-space: nowrap; zoom :1; height:17px;}
.ui-jqgrid .ui-jqgrid-resize {height:20px !important;position: relative; cursor :e-resize;display: inline;overflow: hidden;}
.ui-jqgrid .ui-grid-ico-sort {overflow:hidden;position:absolute;display:inline; cursor: pointer !important;}
.ui-jqgrid .ui-icon-asc {margin-top:-3px; height:12px;}
.ui-jqgrid .ui-icon-desc {margin-top:3px;height:12px;}
.ui-jqgrid .ui-i-asc {margin-top:0;height:16px;}
.ui-jqgrid .ui-i-desc {margin-top:0;margin-left:13px;height:16px;}
.ui-jqgrid .ui-jqgrid-sortable {cursor:pointer;}
.ui-jqgrid tr.ui-search-toolbar th { border-top-width: 1px !important; border-top-color: inherit !important; border-top-style: ridge !important }
tr.ui-search-toolbar input {margin: 1px 0 0 0}
tr.ui-search-toolbar select {margin: 1px 0 0 0}
/* body */
.ui-jqgrid .ui-jqgrid-bdiv {position: relative; margin: 0; padding:0; overflow: auto; text-align:left;}
.ui-jqgrid .ui-jqgrid-btable {table-layout:fixed; margin:0; outline-style: none; }
.ui-jqgrid tr.jqgrow { outline-style: none; }
.ui-jqgrid tr.jqgroup { outline-style: none; }
.ui-jqgrid tr.jqgrow td {font-weight: normal; overflow: hidden; white-space: pre; height: 22px;padding: 0 2px 0 2px;border-bottom-width: 1px; border-bottom-color: inherit; border-bottom-style: solid;}
.ui-jqgrid tr.jqgfirstrow td {padding: 0 2px 0 2px;border-right-width: 1px; border-right-style: solid;}
.ui-jqgrid tr.jqgroup td {font-weight: normal; overflow: hidden; white-space: pre; height: 22px;padding: 0 2px 0 2px;border-bottom-width: 1px; border-bottom-color: inherit; border-bottom-style: solid;}
.ui-jqgrid tr.jqfoot td {font-weight: bold; overflow: hidden; white-space: pre; height: 22px;padding: 0 2px 0 2px;border-bottom-width: 1px; border-bottom-color: inherit; border-bottom-style: solid;}
.ui-jqgrid tr.ui-row-ltr td {text-align:left;border-right-width: 1px; border-right-color: inherit; border-right-style: solid;}
.ui-jqgrid tr.ui-row-rtl td {text-align:right;border-left-width: 1px; border-left-color: inherit; border-left-style: solid;}
.ui-jqgrid td.jqgrid-rownum { padding: 0 2px 0 2px; margin: 0; border: 0 none;}
.ui-jqgrid .ui-jqgrid-resize-mark { width:2px; left:0; background-color:#777; cursor: e-resize; cursor: col-resize; position:absolute; top:0; height:100px; overflow:hidden; display:none; border:0 none; z-index: 99999;}
/* footer */
.ui-jqgrid .ui-jqgrid-sdiv {position: relative; margin: 0;padding: 0; overflow: hidden; border-left: 0 none !important; border-top : 0 none !important; border-right : 0 none !important;}
.ui-jqgrid .ui-jqgrid-ftable {table-layout:fixed; margin-bottom:0;}
.ui-jqgrid tr.footrow td {font-weight: bold; overflow: hidden; white-space:nowrap; height: 21px;padding: 0 2px 0 2px;border-top-width: 1px; border-top-color: inherit; border-top-style: solid;}
.ui-jqgrid tr.footrow-ltr td {text-align:left;border-right-width: 1px; border-right-color: inherit; border-right-style: solid;}
.ui-jqgrid tr.footrow-rtl td {text-align:right;border-left-width: 1px; border-left-color: inherit; border-left-style: solid;}
/* Pager*/
.ui-jqgrid .ui-jqgrid-pager { border-left: 0 none !important;border-right: 0 none !important; border-bottom: 0 none !important; margin: 0 !important; padding: 0 !important; position: relative; height: 25px;white-space: nowrap;overflow: hidden;font-size:11px;}
.ui-jqgrid .ui-pager-control {position: relative;}
.ui-jqgrid .ui-pg-table {position: relative; padding-bottom:2px; width:auto; margin: 0;}
.ui-jqgrid .ui-pg-table td {font-weight:normal; vertical-align:middle; padding:1px;}
.ui-jqgrid .ui-pg-button { height:19px !important;}
.ui-jqgrid .ui-pg-button span { display: block; margin: 1px; float:left;}
.ui-jqgrid .ui-pg-button:hover { padding: 0; }
.ui-jqgrid .ui-state-disabled:hover {padding:1px;}
.ui-jqgrid .ui-pg-input { height:13px;font-size:.8em; margin: 0;}
.ui-jqgrid .ui-pg-selbox {font-size:.8em; line-height:18px; display:block; height:18px; margin: 0;}
.ui-jqgrid .ui-separator {height: 18px; border-left: 1px solid #ccc ; border-right: 1px solid #ccc ; margin: 1px; float: right;}
.ui-jqgrid .ui-paging-info {font-weight: normal;height:19px; margin-top:3px;margin-right:4px;}
.ui-jqgrid .ui-jqgrid-pager .ui-pg-div {padding:1px 0;float:left;position:relative;}
.ui-jqgrid .ui-jqgrid-pager .ui-pg-button { cursor:pointer; }
.ui-jqgrid .ui-jqgrid-pager .ui-pg-div span.ui-icon {float:left;margin:0 2px;}
.ui-jqgrid td input, .ui-jqgrid td select .ui-jqgrid td textarea { margin: 0;}
.ui-jqgrid td textarea {width:auto;height:auto;}
.ui-jqgrid .ui-jqgrid-toppager {border-left: 0 none !important;border-right: 0 none !important; border-top: 0 none !important; margin: 0 !important; padding: 0 !important; position: relative; height: 25px !important;white-space: nowrap;overflow: hidden;}
.ui-jqgrid .ui-jqgrid-toppager .ui-pg-div {padding:1px 0;float:left;position:relative;}
.ui-jqgrid .ui-jqgrid-toppager .ui-pg-button { cursor:pointer; }
.ui-jqgrid .ui-jqgrid-toppager .ui-pg-div span.ui-icon {float:left;margin:0 2px;}
/*subgrid*/
.ui-jqgrid .ui-jqgrid-btable .ui-sgcollapsed span {display: block;}
.ui-jqgrid .ui-subgrid {margin:0;padding:0; width:100%;}
.ui-jqgrid .ui-subgrid table {table-layout: fixed;}
.ui-jqgrid .ui-subgrid tr.ui-subtblcell td {height:18px;border-right-width: 1px; border-right-color: inherit; border-right-style: solid;border-bottom-width: 1px; border-bottom-color: inherit; border-bottom-style: solid;}
.ui-jqgrid .ui-subgrid td.subgrid-data {border-top: 0 none !important;}
.ui-jqgrid .ui-subgrid td.subgrid-cell {border-width: 0 0 1px 0;}
.ui-jqgrid .ui-th-subgrid {height:20px;}
/* loading */
.ui-jqgrid .loading {position: absolute; top: 45%;left: 45%;width: auto;z-index:101;padding: 6px; margin: 5px;text-align: center;font-weight: bold;display: none;border-width: 2px !important; font-size:11px;}
.ui-jqgrid .jqgrid-overlay {display:none;z-index:100;}
* html .jqgrid-overlay {width: expression(this.parentNode.offsetWidth+'px');height: expression(this.parentNode.offsetHeight+'px');}
* .jqgrid-overlay iframe {position:absolute;top:0;left:0;z-index:-1;width: expression(this.parentNode.offsetWidth+'px');height: expression(this.parentNode.offsetHeight+'px');}
/* end loading div */
/* toolbar */
.ui-jqgrid .ui-userdata {border-left: 0 none; border-right: 0 none; height : 21px;overflow: hidden; }
/*Modal Window */
.ui-jqdialog { display: none; width: 300px; position: absolute; padding: .2em; font-size:11px; overflow:visible;}
.ui-jqdialog .ui-jqdialog-titlebar { padding: .3em .2em; position: relative; }
.ui-jqdialog .ui-jqdialog-title { margin: .1em 0 .2em; }
.ui-jqdialog .ui-jqdialog-titlebar-close { position: absolute; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; cursor:pointer;}
.ui-jqdialog .ui-jqdialog-titlebar-close span { display: block; margin: 1px; }
.ui-jqdialog .ui-jqdialog-titlebar-close:hover, .ui-jqdialog .ui-jqdialog-titlebar-close:focus { padding: 0; }
.ui-jqdialog-content, .ui-jqdialog .ui-jqdialog-content { border: 0; padding: .3em .2em; background: none; height:auto;}
.ui-jqdialog .ui-jqconfirm {padding: .4em 1em; border-width:3px;position:absolute;bottom:10px;right:10px;overflow:visible;display:none;height:80px;width:220px;text-align:center;}
.ui-jqdialog>.ui-resizable-se { bottom: -3px; right: -3px}
.ui-jqgrid>.ui-resizable-se { bottom: -3px; right: -3px }
/* end Modal window*/
/* Form edit */
.ui-jqdialog-content .FormGrid {margin: 0;}
.ui-jqdialog-content .EditTable { width: 100%; margin-bottom:0;}
.ui-jqdialog-content .DelTable { width: 100%; margin-bottom:0;}
.EditTable td input, .EditTable td select, .EditTable td textarea {margin: 0;}
.EditTable td textarea { width:auto; height:auto;}
.ui-jqdialog-content td.EditButton {text-align: right;border-top: 0 none;border-left: 0 none;border-right: 0 none; padding-bottom:5px; padding-top:5px;}
.ui-jqdialog-content td.navButton {text-align: center; border-left: 0 none;border-top: 0 none;border-right: 0 none; padding-bottom:5px; padding-top:5px;}
.ui-jqdialog-content input.FormElement {padding:.3em}
.ui-jqdialog-content select.FormElement {padding:.3em}
.ui-jqdialog-content .data-line {padding-top:.1em;border: 0 none;}
.ui-jqdialog-content .CaptionTD {vertical-align: middle;border: 0 none; padding: 2px;white-space: nowrap;}
.ui-jqdialog-content .DataTD {padding: 2px; border: 0 none; vertical-align: top;}
.ui-jqdialog-content .form-view-data {white-space:pre}
.fm-button { display: inline-block; margin:0 4px 0 0; padding: .4em .5em; text-decoration:none !important; cursor:pointer; position: relative; text-align: center; zoom: 1; }
.fm-button-icon-left { padding-left: 1.9em; }
.fm-button-icon-right { padding-right: 1.9em; }
.fm-button-icon-left .ui-icon { right: auto; left: .2em; margin-left: 0; position: absolute; top: 50%; margin-top: -8px; }
.fm-button-icon-right .ui-icon { left: auto; right: .2em; margin-left: 0; position: absolute; top: 50%; margin-top: -8px;}
#nData, #pData { float: left; margin:3px;padding: 0; width: 15px; }
/* End Eorm edit */
/*.ui-jqgrid .edit-cell {}*/
.ui-jqgrid .selected-row, div.ui-jqgrid .selected-row td {font-style : normal;border-left: 0 none;}
/* inline edit actions button*/
.ui-inline-del.ui-state-hover span, .ui-inline-edit.ui-state-hover span,
.ui-inline-save.ui-state-hover span, .ui-inline-cancel.ui-state-hover span {
margin: -1px;
}
/* Tree Grid */
.ui-jqgrid .tree-wrap {float: left; position: relative;height: 18px;white-space: nowrap;overflow: hidden;}
.ui-jqgrid .tree-minus {position: absolute; height: 18px; width: 18px; overflow: hidden;}
.ui-jqgrid .tree-plus {position: absolute; height: 18px; width: 18px; overflow: hidden;}
.ui-jqgrid .tree-leaf {position: absolute; height: 18px; width: 18px;overflow: hidden;}
.ui-jqgrid .treeclick {cursor: pointer;}
/* moda dialog */
* iframe.jqm {position:absolute;top:0;left:0;z-index:-1;width: expression(this.parentNode.offsetWidth+'px');height: expression(this.parentNode.offsetHeight+'px');}
.ui-jqgrid-dnd tr td {border-right-width: 1px; border-right-color: inherit; border-right-style: solid; height:20px}
/* RTL Support */
.ui-jqgrid .ui-jqgrid-title-rtl {float:right;margin: .1em 0 .2em; }
.ui-jqgrid .ui-jqgrid-hbox-rtl {float: right; padding-left: 20px;}
.ui-jqgrid .ui-jqgrid-resize-ltr {float: right;margin: -2px -2px -2px 0;}
.ui-jqgrid .ui-jqgrid-resize-rtl {float: left;margin: -2px 0 -1px -3px;}
.ui-jqgrid .ui-sort-rtl {left:0;}
.ui-jqgrid .tree-wrap-ltr {float: left;}
.ui-jqgrid .tree-wrap-rtl {float: right;}
.ui-jqgrid .ui-ellipsis {text-overflow:ellipsis;}
/* Toolbar Search Menu */
.ui-search-menu { position: absolute; padding: 2px 5px;}
.ui-jqgrid .ui-search-table { padding: 0px 0px; border: 0px none; height:20px; width:100%;}
.ui-jqgrid .ui-search-table .ui-search-oper { width:20px; }
a.g-menu-item, a.soptclass, a.clearsearchclass { cursor: pointer; }
.ui-jqgrid .ui-search-table .ui-search-input>input,
.ui-jqgrid .ui-search-table .ui-search-input>select
{
display: block;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
@@ -0,0 +1,10 @@
.ui-timepicker-div .ui-widget-header { margin-bottom: 8px; }
.ui-timepicker-div dl { text-align: left; }
.ui-timepicker-div dl dt { height: 25px; margin-bottom: -25px; }
.ui-timepicker-div dl dd { margin: 0 10px 10px 65px; }
.ui-timepicker-div td { font-size: 90%; }
.ui-tpicker-grid-label { background: none; border: none; margin: 0; padding: 0; }
.ui-timepicker-rtl{ direction: rtl; }
.ui-timepicker-rtl dl { text-align: right; }
.ui-timepicker-rtl dl dd { margin: 0 65px 10px 10px; }
+23
View File
@@ -0,0 +1,23 @@
.ui-multiselect { padding:2px 0 2px 4px; text-align:left }
.ui-multiselect span.ui-icon { float:right }
.ui-multiselect-single .ui-multiselect-checkboxes input { position:absolute !important; top: auto !important; left:-9999px; }
.ui-multiselect-single .ui-multiselect-checkboxes label { padding:5px !important }
.ui-multiselect-header { margin-bottom:3px; padding:3px 0 3px 4px }
.ui-multiselect-header ul { font-size:0.9em }
.ui-multiselect-header ul li { float:left; padding:0 10px 0 0 }
.ui-multiselect-header a { text-decoration:none }
.ui-multiselect-header a:hover { text-decoration:underline }
.ui-multiselect-header span.ui-icon { float:left }
.ui-multiselect-header li.ui-multiselect-close { float:right; text-align:right; padding-right:0 }
.ui-multiselect-menu { display:none; padding:3px; position:absolute; z-index:10000; text-align: left }
.ui-multiselect-checkboxes { position:relative /* fixes bug in IE6/7 */; overflow-y:scroll }
.ui-multiselect-checkboxes label { cursor:default; display:block; border:1px solid transparent; padding:3px 1px }
.ui-multiselect-checkboxes label input { position:relative; top:1px }
.ui-multiselect-checkboxes li { clear:both; font-size:0.9em; padding-right:3px }
.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label { text-align:center; font-weight:bold; border-bottom:1px solid }
.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label a { display:block; padding:3px; margin:1px 0; text-decoration:none }
/* remove label borders in IE6 because IE6 does not support transparency */
* html .ui-multiselect-checkboxes label { border:none }
@@ -0,0 +1,3 @@
.ui-multiselect-hasfilter ul { position:relative; top:2px }
.ui-multiselect-filter { float:left; margin-right:10px; font-size:11px }
.ui-multiselect-filter input { width:100px; font-size:10px; margin-left:5px; height:15px; padding:2px; border:1px solid #292929; -webkit-appearance:textfield; -webkit-box-sizing:content-box; }
+263
View File
@@ -0,0 +1,263 @@
table.treetable {
border: 1px solid #888;
border-collapse: collapse;
font-size: 0.82rem;
line-height: 1.5rem;
margin: 0.6em 0 1.8em 0;
width: 100%;
font-family: "Segoe UI", Tahoma, Arial, "Courier New", serif;
font-weight: normal;
position: relative;
}
table.treetable caption {
font-size: 0.82rem;
font-weight: bold;
margin-bottom: 0.2em;
}
table.treetable thead {
background: #fff;
font-size: 0.9em;
}
table.treetable > tbody > tr > td {
border: 1px solid #e0e0e0 !important;
border-top: 0 !important;
/*xxx*/
white-space: nowrap;
position: relative;
}
table.treetable thead tr th {
border: 1px solid #b8b5b5;
font-weight: normal;
padding: 0.1em 1em 0.1em 1em;
text-align: left;
}
table.treetable tbody tr td {
cursor: default;
padding: 0em 0.5em;
}
table.treetable span.indenter,
table.treetable .treetable-list span.indenter {
background-position: center left;
background-repeat: no-repeat;
padding: 0.2em 0 0.2em 1.5em;
}
table.treetable span.file {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAADoSURBVBgZBcExblNBGAbA2ceegTRBuIKOgiihSZNTcC5LUHAihNJR0kGKCDcYJY6D3/77MdOinTvzAgCw8ysThIvn/VojIyMjIyPP+bS1sUQIV2s95pBDDvmbP/mdkft83tpYguZq5Jh/OeaYh+yzy8hTHvNlaxNNczm+la9OTlar1UdA/+C2A4trRCnD3jS8BB1obq2Gk6GU6QbQAS4BUaYSQAf4bhhKKTFdAzrAOwAxEUAH+KEM01SY3gM6wBsEAQB0gJ+maZoC3gI6iPYaAIBJsiRmHU0AALOeFC3aK2cWAACUXe7+AwO0lc9eTHYTAAAAAElFTkSuQmCC);
}
table.treetable span.folder {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAGrSURBVDjLxZO7ihRBFIa/6u0ZW7GHBUV0UQQTZzd3QdhMQxOfwMRXEANBMNQX0MzAzFAwEzHwARbNFDdwEd31Mj3X7a6uOr9BtzNjYjKBJ6nicP7v3KqcJFaxhBVtZUAK8OHlld2st7Xl3DJPVONP+zEUV4HqL5UDYHr5xvuQAjgl/Qs7TzvOOVAjxjlC+ePSwe6DfbVegLVuT4r14eTr6zvA8xSAoBLzx6pvj4l+DZIezuVkG9fY2H7YRQIMZIBwycmzH1/s3F8AapfIPNF3kQk7+kw9PWBy+IZOdg5Ug3mkAATy/t0usovzGeCUWTjCz0B+Sj0ekfdvkZ3abBv+U4GaCtJ1iEm6ANQJ6fEzrG/engcKw/wXQvEKxSEKQxRGKE7Izt+DSiwBJMUSm71rguMYhQKrBygOIRStf4TiFFRBvbRGKiQLWP29yRSHKBTtfdBmHs0BUpgvtgF4yRFR+NUKi0XZcYjCeCG2smkzLAHkbRBmP0/Uk26O5YnUActBp1GsAI+S5nRJJJal5K1aAMrq0d6Tm9uI6zjyf75dAe6tx/SsWeD//o2/Ab6IH3/h25pOAAAAAElFTkSuQmCC);
}
table.treetable tr.collapsed span.indenter a,
table.treetable .treetable-list span.indenter a {
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAAQCAYAAADNo/U5AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTnU1rJkAAACEElEQVQ4T42S72sScRzH/cuKop64EUgjtD2Q9ctGP1gsKGq0hXtSUhTRg4hRD7JROrZIEVbXYtPbMvWueXrmz+aWtum8UHf+2Om77/cuFaOgD7y4J6/Xl7vPfXV05LwNlHLKhlJmuvv8GdHYFa9hO2qFKtOhckN2oFlfRrtVgFLl0cjPoJK9j920FdnILWQEK8o7drRqi1pII9RcXdrNL2i362hDgaLsoZB9gVRgFF9XxyH6bvw96sWiGu2kniPhPQ1x6RIizNX/iarIJZ8iujKMyNKFf0eKvKB+436TR0uR8D32BGFmGDxzFhxzUYvolqjckt8Q2Yl6xYGaRBYj06iEXOwxhHfHwXtOgnObexE9uSPXpFeoSy9RL7shVz5iU7jdF6XYEahRTXISXqtytTCDUv4h4QGKW/cQ91sQdA+Ccw2Bd5l+R+kJNIi8V3wG6ccjVaYU0neQF6YQWxlB0DWI0LwB3NyQFuWjl7uiKn+7q/59SicKuPT4NK/HmlMPgTH1ouKGDdux6W6QXZ9EPHgdwUUTvI7D8M0eAWs/qkU5brQrUjbDk0hwN5HwX0Hcew5Bj4FEh8DOHsSq/YAWZUIWVd4KTyHJTSDxeRwJ9jyS7BlyE8wIeY71RRvsmLZ20WdEdNkI4QOBnNQh/N4I/9uBvtdTgz+HXEoLobLOnELAPYC1hRPwzZlTBINm6HS/ACb+az/hqY6BAAAAAElFTkSuQmCC');
}
table.treetable tr.expanded span.indenter a {
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAAQCAYAAADNo/U5AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTnU1rJkAAABX0lEQVQ4T3WSvUvDUBTF85c5CDr4saiDdQmdVBBxEArqplsXV/+AuthstYMQJ/N0aeNgmkHT2MEEh37gkBhQr5ybvtcXQi8cAi/ndzn3cg1UEtcJ+grqNAov1Hfi5Rr6NfrsnRObUTBnyQ0RJZRFV2x+dU/pN70riNLWDASEB+iPflhhd5d854TScbMAfbhHZUiCgaiSZx9zZ7wBhtBsLuQ72znUqbE5G19z9DexV4bkbC92hVz7gOPwnPElL0dBGFwC6ArIszfIvTXZBDOELap4gCSAGN+JU4DkyuPeIUXuPs/LkAQQA+q0V+m5VWGDNEfdKo0mwynUPysA2Bgg19ri2WCG+mJnBqGTDkjoqbnCMWEOxSYLEBopSAK4hgdrkURjiSGY38Uay7SDHEJeHcDwgB4bC+S1lxVQgLBGHUDmeVBwv04DMT0lXAA6SOnx9HcF6IUjxRIcyyz/VGUY/w2QXGJSXNpXAAAAAElFTkSuQmCC');
}
table.treetable tr.branch {
background-color: #f9f9f9;
}
table.treetable tr.selected {
background-color: #3875d7;
/* color: #fff; */
}
table.treetable tr span.indenter a {
outline: none;
/* Expander shows outline after upgrading to 3.0 (#141) */
}
table.treetable tr.accept {
background-color: #a3bce4;
color: #fff;
}
table.treetable tr.collapsed.accept td span.indenter a {
background-image: url(data:image/x-png;base64,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);
}
table.treetable tr.expanded.accept td span.indenter a {
background-image: url(data:image/x-png;base64,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);
}
table.treetable tbody tr td {
border: 1px solid #EDEDED;
}
table.treetable tbody span.fancytree-node,
table.treetable table.fancytree-ext-table tbody span.fancytree-node:hover {
border: none;
background: 0 0;
}
table.treetable tbody tr:hover {
background-color: #E5F3FB;
outline: #70C0E7 solid 1px;
}
table.treetable tbody tr.focused span.title {
outline: #000 dotted 1px;
}
table.treetable tbody tr.active:hover,
table.treetable tbody tr.selected:hover {
background-color: #CBE8F6;
outline: #26A0DA solid 1px;
}
table.treetable tbody tr.active {
background-color: #F7F7F7;
outline: #DEDEDE solid 1px;
}
table.treetable tbody tr.selected {
background-color: #CBE8F6;
outline: #26A0DA solid 1px;
}
table.treetable table.treetable.fancytree-treefocus tbody tr.fancytree-active {
background-color: #CBE8F6;
outline: #26A0DA solid 1px;
}
table.treetable table.treetable.fancytree-treefocus tbody tr.fancytree-selected {
background-color: #CBE8F6;
}
table.treetable span.indenter,
table.treetable .treetable-list span.indenter {
display: inline-block;
margin: 0;
padding: 0;
text-align: right;
/* Disable text selection of nodes (for better D&D UX) */
user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-o-user-select: none;
-webkit-user-select: none;
/* Force content-box box model for indenter (Bootstrap compatibility) */
-webkit-box-sizing: content-box;
-moz-box-sizing: content-box;
box-sizing: content-box;
width: 19px;
}
table.treetable span.indenter a,
table.treetable .treetable-list span.indenter a {
background-position: left center;
background-repeat: no-repeat;
display: inline-block;
text-decoration: none;
width: 19px;
}
table.treetable .filtered-out {
display: none !important;
}
table.treetable .treetable-counter {
color: gray;
font-size: 0.8em;
position: absolute;
right: 2px;
top: 1px;
}
table.treetable .treetable-filter {
width: calc(100% - 24px);
padding: 0 5px 0 0;
font-size: 12px;
border: 0;
line-height: 1.5em;
}
table.treetable .treetable-th-name {
padding: 0.1em 0.1em;
}
table.treetable .filter-clear {
width: 18px;
height: 18px;
border: 0;
background: #fff;
}
table.treetable .branch.collapsed span.fancytree-expander {
background-position: 0 -80px;
}
table.treetable .branch.expanded span.fancytree-expander {
background-position: -32px -80px;
}
table.treetable .branch.is-empty span.fancytree-expander {
opacity: 0;
}
table.treetable .leaf span.fancytree-expander {
background: none;
}
table.treetable .treetable-buttons {
text-align: center;
}
table.treetable .fancytree-icon {
margin-right: 5px;
}
table.treetable .treetable-enum {
font-weight: normal;
}
table.treetable .treetable-enum span.fancytree-icon {
background-position: -32px -16px;
}
table.treetable .treetable-enum.treetable-root {
font-weight: bold;
}
table.treetable .treetable-member {
font-style: italic;
}
table.treetable .treetable-member span.fancytree-icon {
/*background-image: url(fancytree/state.png);
background-size: 100%;
height: 24px;
width: 24px;*/
display: none;
}
table.treetable .treetable-channel span.fancytree-icon {
background-position: -32px -16px;
}
table.treetable .treetable-icon {
width: 22px;
height: auto;
}
table.treetable .treetable-icon-empty {
width: 22px;
height: 22px;
display: inline-block;
}
table.treetable .treetable-center {
text-align: center;
}
table.treetable .treetable-button-empty {
width: 20px;
display: inline-block;
}
table.treetable .treetable-color {
position: absolute;
bottom: 0;
left: 0;
width: calc(100% - 45px);
height: 5px;
z-index: 0;
opacity: 0.7;
margin-left: 45px;
}
.tree-table-body {
overflow: auto;
height: calc(100% - 40px);
}
.treetable-list {
padding: 0;
font-size: 0.82rem;
}
.treetable-list .treetable-list-item {
list-style-type: none;
cursor: ns-resize;
line-height: 1.5rem;
border: 1px solid #e0e0e0;
background: #efefef;
padding-left: 5px;
}
.treetable-list .treetable-list-folder {
list-style-type: none;
font-weight: bold;
line-height: 1.5rem;
cursor: not-allowed;
color: #000080;
border: 1px solid #e0e0e0;
background: white;
}
.treetable-list .treetable-list-folder span.fancytree-icon {
background-position: -32px -16px;
}
.treetable-list span.fancytree-expander {
background-position: -32px -80px;
}
/*# sourceMappingURL=jquery.treetable.theme.css.map */
File diff suppressed because one or more lines are too long
+8
View File
File diff suppressed because one or more lines are too long
+2
View File
@@ -0,0 +1,2 @@
.ol-box{box-sizing:border-box;border-radius:2px;border:2px solid #00f}.ol-mouse-position{top:8px;right:8px;position:absolute}.ol-scale-line{background:rgba(0,60,136,.3);border-radius:4px;bottom:8px;left:8px;padding:2px;position:absolute}.ol-scale-line-inner{border:1px solid #eee;border-top:none;color:#eee;font-size:10px;text-align:center;margin:1px;will-change:contents,width}.ol-overlay-container{will-change:left,right,top,bottom}.ol-unsupported{display:none}.ol-unselectable,.ol-viewport{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.ol-selectable{-webkit-touch-callout:default;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.ol-grabbing{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.ol-grab{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.ol-control{position:absolute;background-color:rgba(255,255,255,.4);border-radius:4px;padding:2px}.ol-control:hover{background-color:rgba(255,255,255,.6)}.ol-zoom{top:.5em;left:.5em}.ol-rotate{top:.5em;right:.5em;transition:opacity .25s linear,visibility 0s linear}.ol-rotate.ol-hidden{opacity:0;visibility:hidden;transition:opacity .25s linear,visibility 0s linear .25s}.ol-zoom-extent{top:4.643em;left:.5em}.ol-full-screen{right:.5em;top:.5em}@media print{.ol-control{display:none}}.ol-control button{display:block;margin:1px;padding:0;color:#fff;font-size:1.14em;font-weight:700;text-decoration:none;text-align:center;height:1.375em;width:1.375em;line-height:.4em;background-color:rgba(0,60,136,.5);border:none;border-radius:2px}.ol-control button::-moz-focus-inner{border:none;padding:0}.ol-zoom-extent button{line-height:1.4em}.ol-compass{display:block;font-weight:400;font-size:1.2em;will-change:transform}.ol-touch .ol-control button{font-size:1.5em}.ol-touch .ol-zoom-extent{top:5.5em}.ol-control button:focus,.ol-control button:hover{text-decoration:none;background-color:rgba(0,60,136,.7)}.ol-zoom .ol-zoom-in{border-radius:2px 2px 0 0}.ol-zoom .ol-zoom-out{border-radius:0 0 2px 2px}.ol-attribution{text-align:right;bottom:.5em;right:.5em;max-width:calc(100% - 1.3em)}.ol-attribution ul{margin:0;padding:0 .5em;font-size:.7rem;line-height:1.375em;color:#000;text-shadow:0 0 2px #fff}.ol-attribution li{display:inline;list-style:none;line-height:inherit}.ol-attribution li:not(:last-child):after{content:" "}.ol-attribution img{max-height:2em;max-width:inherit;vertical-align:middle}.ol-attribution button,.ol-attribution ul{display:inline-block}.ol-attribution.ol-collapsed ul{display:none}.ol-attribution:not(.ol-collapsed){background:rgba(255,255,255,.8)}.ol-attribution.ol-uncollapsible{bottom:0;right:0;border-radius:4px 0 0;height:1.1em;line-height:1em}.ol-attribution.ol-uncollapsible img{margin-top:-.2em;max-height:1.6em}.ol-attribution.ol-uncollapsible button{display:none}.ol-zoomslider{top:4.5em;left:.5em;height:200px}.ol-zoomslider button{position:relative;height:10px}.ol-touch .ol-zoomslider{top:5.5em}.ol-overviewmap{left:.5em;bottom:.5em}.ol-overviewmap.ol-uncollapsible{bottom:0;left:0;border-radius:0 4px 0 0}.ol-overviewmap .ol-overviewmap-map,.ol-overviewmap button{display:inline-block}.ol-overviewmap .ol-overviewmap-map{border:1px solid #7b98bc;height:150px;margin:2px;width:150px}.ol-overviewmap:not(.ol-collapsed) button{bottom:1px;left:2px;position:absolute}.ol-overviewmap.ol-collapsed .ol-overviewmap-map,.ol-overviewmap.ol-uncollapsible button{display:none}.ol-overviewmap:not(.ol-collapsed){background:rgba(255,255,255,.8)}.ol-overviewmap-box{border:2px dotted rgba(0,60,136,.7)}.ol-overviewmap .ol-overviewmap-box:hover{cursor:move}
/*# sourceMappingURL=ol.css.map */
Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 315 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 315 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Some files were not shown because too many files have changed in this diff Show More