mirror of
https://github.com/hyperion-project/hyperion.ng.git
synced 2023-10-10 13:36:59 +02:00
Update UI JS Libraries (#1441)
* Update Gijgo to 1.9.13 * Update DOMPurify 2.3.6 * Update Marked 4.0.12 * Update metismenu 3.0.7 * Issue Update Priority, if first LED changes for COLOR update (to reflect color correctly in UI) * Add Yeelight W3 MultiColor * Update to jquery 3.6.0
This commit is contained in:
parent
f9a5772aa5
commit
3e8c6f3b25
@ -921,6 +921,7 @@ all code is your original work. `</legalese>`
|
||||
|
||||
## Marked
|
||||
|
||||
Copyright (c) 2018+, MarkedJS (https://github.com/markedjs/)
|
||||
Copyright (c) 2011-2018, Christopher Jeffrey (https://github.com/chjj/)
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
@ -961,7 +962,7 @@ metismenu
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2014-2018 Osman Nuri Okumuş
|
||||
Copyright (c) 2014-2021 Osman Nuri Okumuş
|
||||
|
||||
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
|
||||
|
@ -22,7 +22,7 @@
|
||||
performTranslation();
|
||||
|
||||
var si = window.sysInfo.hyperion;
|
||||
var libs = { "Bootstrap 3": "https://getbootstrap.com/", "JQuery": "https://jquery.com/", "Bootstrap Colorpicker": "https://itsjavi.com/bootstrap-colorpicker/", "Bootstrap Toggle": "https://www.bootstraptoggle.com/", "Bootstrap Select": "https://developer.snapappointments.com/bootstrap-select/", "JSON-Editor": "https://www.jeremydorn.com/json-editor", "jQuery.i18n": "https://github.com/wikimedia/jquery.i18n", "metisMenu": "https://mm.onokumus.com/index.html", "download.js": "https://github.com/rndme/download", "gijgo": "https://gijgo.com/" };
|
||||
var libs = { "Bootstrap 3": "https://getbootstrap.com/", "JQuery": "https://jquery.com/", "Bootstrap Colorpicker": "https://itsjavi.com/bootstrap-colorpicker/", "Bootstrap Toggle": "https://www.bootstraptoggle.com/", "Bootstrap Select": "https://developer.snapappointments.com/bootstrap-select/", "JSON-Editor": "https://www.jeremydorn.com/json-editor", "jQuery.i18n": "https://github.com/wikimedia/jquery.i18n", "metisMenu": "https://mm.onokumus.com/index.html", "download.js": "https://github.com/rndme/download", "Gijgo": "https://gijgo.com/", "DOMPurify" : "https://github.com/cure53/DOMPurify", "Marked": "https://github.com/markedjs/marked"};
|
||||
var libh = "";
|
||||
var lang = [];
|
||||
var dcount = 0;
|
||||
|
@ -1,7 +1,7 @@
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h3 class="page-header"><i class="fa fa-cogs fa-fw"></i><span data-i18n="main_menu_effectsconfigurator_token">Effects Configurator</span></h3>
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h3 class="page-header"><i class="fa fa-cogs fa-fw"></i><span data-i18n="main_menu_effectsconfigurator_token">Effects Configurator</span></h3>
|
||||
|
||||
<div class="panel panel-default" style="border:0px;">
|
||||
<div class="panel-heading panel-instance" style="border-radius:3px; border-bottom:0px;">
|
||||
@ -15,50 +15,51 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="intro_effc">
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-6">
|
||||
<div class="panel panel-default" >
|
||||
<div class="panel-heading">
|
||||
<label for="effectslist" data-i18n="effectsconfigurator_label_chooseeff">Choose Base-Effect:</label>
|
||||
<select id="effectslist" class="form-control" style="color:black;width:auto;margin-left:10px;display:inline-block" />
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div id="eff_desc"></div>
|
||||
<table style="margin-bottom:8px" id="effc_nametable">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="ltd"><label for="name-input" data-i18n="effectsconfigurator_label_effectname">Effect name:</label></td>
|
||||
<td class="itd"><input class="form-control" type="text" id="name-input" /></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<div id="editor_container" />
|
||||
</div>
|
||||
<div class="panel-footer" id="eff_footer">
|
||||
<button class="btn btn-warning" id='btn_start_test' data-i18n="effectsconfigurator_button_starttest">Start Effecttest</button>
|
||||
<button class="btn btn-warning" id='btn_stop_test' data-i18n="effectsconfigurator_button_stoptest">Stop Effecttest</button>
|
||||
<button class="btn btn-danger" id='btn_cont_test' data-i18n="effectsconfigurator_button_conttest">Toggle continuous testing</button>
|
||||
<button class="btn btn-primary" id='btn_write' data-i18n="effectsconfigurator_button_saveeffect">Save Effect</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-6">
|
||||
<div class="panel panel-default" >
|
||||
<div class="panel-heading">
|
||||
<label for="effectsdellist" data-i18n="effectsconfigurator_editdeleff"></label>
|
||||
<select id="effectsdellist" class="form-control" style="color:black;width:auto;margin-left:10px;display:inline-block" />
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<button class="btn btn-primary" id='btn_delete' data-i18n="effectsconfigurator_button_deleffect">Delete Effect</button>
|
||||
<button class="btn btn-primary" id='btn_edit' data-i18n="effectsconfigurator_button_editeffect"></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="intro_effc">
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-6">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<label for="effectslist" data-i18n="effectsconfigurator_label_chooseeff">Choose Base-Effect:</label>
|
||||
<select id="effectslist" class="form-control" style="color:black;width:auto;margin-left:10px;display:inline-block"></select>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div id="eff_desc"></div>
|
||||
<table style="margin-bottom:8px" id="effc_nametable">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="ltd"><label for="name-input" data-i18n="effectsconfigurator_label_effectname">Effect name:</label></td>
|
||||
<td class="itd"><input class="form-control" type="text" id="name-input"></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<div id="editor_container"></div>
|
||||
</div>
|
||||
<div class="panel-footer" id="eff_footer">
|
||||
<button class="btn btn-warning" id='btn_start_test' data-i18n="effectsconfigurator_button_starttest">Start Effecttest</button>
|
||||
<button class="btn btn-warning" id='btn_stop_test' data-i18n="effectsconfigurator_button_stoptest">Stop Effecttest</button>
|
||||
<button class="btn btn-danger" id='btn_cont_test' data-i18n="effectsconfigurator_button_conttest">Toggle continuous testing</button>
|
||||
<button class="btn btn-primary" id='btn_write' data-i18n="effectsconfigurator_button_saveeffect">Save Effect</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-6">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<label for="effectsdellist" data-i18n="effectsconfigurator_editdeleff"></label>
|
||||
<select id="effectsdellist" class="form-control" style="color:black;width:auto;margin-left:10px;display:inline-block"></select>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<button class="btn btn-primary" id='btn_delete' data-i18n="effectsconfigurator_button_deleffect">Delete Effect</button>
|
||||
<button class="btn btn-primary" id='btn_edit' data-i18n="effectsconfigurator_button_editeffect"></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="/js/content_effectsconfigurator.js"></script>
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
<h3 class="page-header"><i class="fa fa-download fa-fw"></i><span data-i18n="main_menu_update_token">Update</span></h3>
|
||||
<div class="introd">
|
||||
<h4 data-i18n="update_label_intro">Overview about all available Hyperion versions. On top you could update or downgrade your version of Hyperion whenever you want. Sorted from newest to oldest</h4>
|
||||
<h4> At the moment the install buttons are not working. Development is still ongoing here. </h4>
|
||||
<h4> At the moment the respective install button is disabled. Development is still ongoing here. </h4>
|
||||
<hr />
|
||||
</div>
|
||||
<h4 id="update_currver"></h4>
|
||||
@ -49,12 +49,12 @@ $(document).ready( function(error) {
|
||||
danger = 'default';
|
||||
type = 'Stable';
|
||||
}
|
||||
|
||||
|
||||
matches++;
|
||||
$('#versionlist').append('<div class="col-lg-6"><div class="panel panel-'+ danger +'"><div class="panel-heading"><i class="fa fa-television fa-fw"></i>Hyperion V'+window.gitHubVersionList[key].tag_name+'</div><div class="panel-body"><p><span style="font-weight:bold;">'+$.i18n('update_label_type') + '</span> ' + type + '</p><p><span id="desc" style="font-weight:bold;">'+$.i18n('update_label_description')+'</span> '+DOMPurify.sanitize(marked(window.gitHubVersionList[key].body))+'</p><hr><a class="btn btn-primary" href="'+ window.gitHubVersionList[key].html_url +'" target="_blank"><i class="fa fa-list fa-fw"></i><span style="font-weight:bold;">'+$.i18n('update_button_changelog')+'</span></a><button type="button" class="btn btn-warning pull-right" ' + (window.gitHubVersionList[key].tag_name == window.currentVersion ? "disabled":"") + '><i class="fa fa-download fa-fw"></i>'+$.i18n('update_button_install')+'</button></div></div></div>');
|
||||
$('#versionlist').append('<div class="col-lg-6"><div class="panel panel-'+ danger +'"><div class="panel-heading"><i class="fa fa-television fa-fw"></i>Hyperion V'+window.gitHubVersionList[key].tag_name+'</div><div class="panel-body"><p><span style="font-weight:bold;">'+$.i18n('update_label_type') + '</span> ' + type + '</p><p><span id="desc" style="font-weight:bold;">'+$.i18n('update_label_description')+'</span> '+DOMPurify.sanitize(marked.parse(window.gitHubVersionList[key].body))+'</p><hr><a class="btn btn-primary" href="'+ window.gitHubVersionList[key].html_url +'" target="_blank"><i class="fa fa-list fa-fw"></i><span style="font-weight:bold;">'+$.i18n('update_button_changelog')+'</span></a><button type="button" class="btn btn-warning pull-right" ' + (window.gitHubVersionList[key].tag_name == window.currentVersion ? "disabled":"disabled") + '><i class="fa fa-download fa-fw"></i>'+$.i18n('update_button_install')+'</button></div></div></div>');
|
||||
}
|
||||
$('#update_currver').append($.i18n('update_versreminder', currentVersion));
|
||||
|
||||
|
||||
if (matches == 0)
|
||||
$('#versionlist').append($.i18n('update_no_updates_for_branch'));
|
||||
}
|
||||
|
1
assets/webconfig/css/gijgo/core.min.css
vendored
Normal file
1
assets/webconfig/css/gijgo/core.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
assets/webconfig/css/gijgo/dialog.min.css
vendored
Normal file
1
assets/webconfig/css/gijgo/dialog.min.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
.gj-draggable{cursor:move}.gj-resizable-handle{position:absolute;font-size:.1px;display:block;-ms-touch-action:none;touch-action:none;z-index:1203}.gj-dialog-bootstrap [data-role=title],.gj-dialog-bootstrap4 [data-role=title]{display:inline}.gj-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.gj-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.gj-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.gj-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.gj-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.gj-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.gj-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.gj-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.gj-dialog-footer{position:absolute;bottom:0;width:100%;margin-top:0}.gj-dialog-scrollable [data-role=body]{overflow-x:hidden;overflow-y:scroll}.gj-dialog-bootstrap,.gj-dialog-bootstrap4,.gj-dialog-md{overflow:hidden;z-index:1202}.gj-dialog-bootstrap [data-role=close]{line-height:1.42857143}.gj-dialog-bootstrap4 [data-role=close]{line-height:1.5}.gj-dialog-md{background-color:#FFF;border:none;box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-sizing:border-box;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-background-clip:padding-box;background-clip:padding-box;outline:0}.gj-dialog-md-header{padding:24px 24px 0;font-family:Roboto,Helvetica,Arial,sans-serif}.gj-dialog-md-title{margin:0;font-weight:400;display:inline;line-height:28px;font-size:20px}.gj-dialog-md-close{-webkit-appearance:none;padding:0;cursor:pointer;background:0 0;border:0;float:right;line-height:28px;font-size:28px}.gj-dialog-md-body{padding:20px 24px 24px;color:rgba(0,0,0,.54);font-family:Helvetica,Arial,sans-serif;font-size:14px;font-weight:400;line-height:20px}.gj-dialog-md-footer{padding:8px 8px 8px 24px;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;box-sizing:border-box}.gj-dialog-md-footer>:first-child{margin-right:0}.gj-dialog-md-footer>*{margin-right:8px;height:36px}
|
@ -577,192 +577,6 @@ li a:active:after {
|
||||
}
|
||||
}
|
||||
|
||||
/* drag and resizable modal http://gijgo.com/ */
|
||||
.gj-button {
|
||||
background-color: #f5f5f5;
|
||||
border: 1px solid #ddd;
|
||||
color: #000;
|
||||
border-radius: 3px;
|
||||
padding: 6px 10px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.gj-unselectable {
|
||||
-webkit-touch-callout: none;
|
||||
-webkit-user-select: none;
|
||||
-khtml-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
.gj-margin-left-5 {
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.gj-margin-left-10 {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.gj-width-full {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.gj-cursor-pointer {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.gj-text-align-center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.gj-font-size-16 {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.gj-hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.gj-mdl-icon-plus::after {
|
||||
content: "\E145";
|
||||
}
|
||||
|
||||
.gj-mdl-icon-minus::after {
|
||||
content: "\E15B";
|
||||
}
|
||||
|
||||
.gj-draggable {
|
||||
cursor: move;
|
||||
}
|
||||
.gj-resizable-handle {
|
||||
position: absolute;
|
||||
font-size: 0.1px;
|
||||
display: block;
|
||||
-ms-touch-action: none;
|
||||
touch-action: none;
|
||||
z-index: 90;
|
||||
}
|
||||
|
||||
.gj-resizable-n {
|
||||
cursor: n-resize;
|
||||
height: 7px;
|
||||
width: 100%;
|
||||
top: -5px;
|
||||
left: 0;
|
||||
}
|
||||
.gj-resizable-e {
|
||||
cursor: e-resize;
|
||||
width: 7px;
|
||||
right: -5px;
|
||||
top: 0;
|
||||
height: 100%;
|
||||
}
|
||||
.gj-resizable-s {
|
||||
cursor: s-resize;
|
||||
height: 7px;
|
||||
width: 100%;
|
||||
bottom: -5px;
|
||||
left: 0;
|
||||
}
|
||||
.gj-resizable-w {
|
||||
cursor: w-resize;
|
||||
width: 7px;
|
||||
left: -5px;
|
||||
top: 0;
|
||||
height: 100%;
|
||||
}
|
||||
.gj-resizable-se {
|
||||
cursor: se-resize;
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
right: 1px;
|
||||
bottom: 1px;
|
||||
}
|
||||
.gj-resizable-sw {
|
||||
cursor: sw-resize;
|
||||
width: 9px;
|
||||
height: 9px;
|
||||
left: -5px;
|
||||
bottom: -5px;
|
||||
}
|
||||
.gj-resizable-nw {
|
||||
cursor: nw-resize;
|
||||
width: 9px;
|
||||
height: 9px;
|
||||
left: -5px;
|
||||
top: -5px;
|
||||
}
|
||||
.gj-resizable-ne {
|
||||
cursor: ne-resize;
|
||||
width: 9px;
|
||||
height: 9px;
|
||||
right: -5px;
|
||||
top: -5px;
|
||||
}
|
||||
|
||||
.gj-dialog-footer {
|
||||
position: absolute;
|
||||
bottom: 0px;
|
||||
width: 100%;
|
||||
margin-top: 0px;
|
||||
}
|
||||
|
||||
.gj-modal {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
z-index: 1040;
|
||||
display: none;
|
||||
overflow: hidden;
|
||||
-webkit-overflow-scrolling: touch;
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
.gj-content {
|
||||
border: 1px solid #999;
|
||||
background-color: #fff;
|
||||
border-radius: 6px;
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
.gj-header {
|
||||
min-height: 16.43px;
|
||||
padding: 15px;
|
||||
border-bottom: 1px solid #e5e5e5;
|
||||
}
|
||||
|
||||
.gj-footer {
|
||||
min-height: 16.43px;
|
||||
padding: 15px;
|
||||
border-top: 1px solid #e5e5e5;
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.gj-title {
|
||||
margin: 2px;
|
||||
}
|
||||
|
||||
.gj-close {
|
||||
-webkit-appearance: none;
|
||||
padding: 0;
|
||||
cursor: pointer;
|
||||
background: 0 0;
|
||||
border: 0;
|
||||
float: right;
|
||||
font-size: 21px;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.gj-body {
|
||||
position: relative;
|
||||
padding: 15px;
|
||||
}
|
||||
|
||||
/*https://github.com/json-editor/json-editor/blob/2e005a2bd34c05803702d8bc1347efde7a4926ce/docs/radio.html#L37 radiobox for Json-Editor*/
|
||||
.radio {
|
||||
position: relative;
|
||||
|
@ -1,64 +0,0 @@
|
||||
/*
|
||||
* metismenu - v1.1.3
|
||||
* Easy menu jQuery plugin for Twitter Bootstrap 3
|
||||
* https://github.com/onokumus/metisMenu
|
||||
*
|
||||
* Made by Osman Nuri Okumus
|
||||
* Under MIT License
|
||||
*/
|
||||
.arrow {
|
||||
float: right;
|
||||
line-height: 1.42857;
|
||||
}
|
||||
|
||||
.glyphicon.arrow:before {
|
||||
content: "\e079";
|
||||
}
|
||||
|
||||
.active > a > .glyphicon.arrow:before {
|
||||
content: "\e114";
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Require Font-Awesome
|
||||
* http://fortawesome.github.io/Font-Awesome/
|
||||
*/
|
||||
|
||||
|
||||
.fa.arrow:before {
|
||||
content: "\f104";
|
||||
}
|
||||
|
||||
.active > a > .fa.arrow:before {
|
||||
content: "\f107";
|
||||
}
|
||||
|
||||
.plus-times {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.fa.plus-times:before {
|
||||
content: "\f067";
|
||||
}
|
||||
|
||||
.active > a > .fa.plus-times {
|
||||
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
|
||||
-webkit-transform: rotate(45deg);
|
||||
-moz-transform: rotate(45deg);
|
||||
-ms-transform: rotate(45deg);
|
||||
-o-transform: rotate(45deg);
|
||||
transform: rotate(45deg);
|
||||
}
|
||||
|
||||
.plus-minus {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.fa.plus-minus:before {
|
||||
content: "\f067";
|
||||
}
|
||||
|
||||
.active > a > .fa.plus-minus:before {
|
||||
content: "\f068";
|
||||
}
|
7
assets/webconfig/css/metisMenu.min.css
vendored
Normal file
7
assets/webconfig/css/metisMenu.min.css
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
/*!
|
||||
* metismenu https://github.com/onokumus/metismenu#readme
|
||||
* A collapsible jQuery menu plugin
|
||||
* @version 3.0.6
|
||||
* @author Osman Nuri Okumus <onokumus@gmail.com> (https://github.com/onokumus)
|
||||
* @license: MIT
|
||||
*/.metismenu .arrow{float:right;line-height:1.42857}*[dir=rtl] .metismenu .arrow{float:left}.metismenu .glyphicon.arrow:before{content:""}.metismenu .mm-active>a>.glyphicon.arrow:before{content:""}.metismenu .fa.arrow:before{content:""}.metismenu .mm-active>a>.fa.arrow:before{content:""}.metismenu .ion.arrow:before{content:""}.metismenu .mm-active>a>.ion.arrow:before{content:""}.metismenu .plus-times{float:right}*[dir=rtl] .metismenu .plus-times{float:left}.metismenu .fa.plus-times:before{content:""}.metismenu .mm-active>a>.fa.plus-times{transform:rotate(45deg)}.metismenu .plus-minus{float:right}*[dir=rtl] .metismenu .plus-minus{float:left}.metismenu .fa.plus-minus:before{content:""}.metismenu .mm-active>a>.fa.plus-minus:before{content:""}.metismenu .mm-collapse:not(.mm-show){display:none}.metismenu .mm-collapsing{position:relative;height:0;overflow:hidden;transition-timing-function:ease;transition-duration:.35s;transition-property:height,visibility}.metismenu .has-arrow{position:relative}.metismenu .has-arrow::after{position:absolute;content:"";width:.5em;height:.5em;border-width:1px 0 0 1px;border-style:solid;border-color:initial;right:1em;transform:rotate(-45deg) translate(0, -50%);transform-origin:top;top:50%;transition:all .3s ease-out}*[dir=rtl] .metismenu .has-arrow::after{right:auto;left:1em;transform:rotate(135deg) translate(0, -50%)}.metismenu .mm-active>.has-arrow::after,.metismenu .has-arrow[aria-expanded=true]::after{transform:rotate(-135deg) translate(0, -50%)}*[dir=rtl] .metismenu .mm-active>.has-arrow::after,*[dir=rtl] .metismenu .has-arrow[aria-expanded=true]::after{transform:rotate(225deg) translate(0, -50%)}/*# sourceMappingURL=metisMenu.min.css.map */
|
@ -19,8 +19,13 @@
|
||||
|
||||
<title data-i18n="general_webui_title">Hyperion - Web Configuration</title>
|
||||
|
||||
<!-- jQuery -->
|
||||
<script src="js/lib/jquery.min.js"></script>
|
||||
<!-- jQuery - Prod -->
|
||||
<script src="js/lib/jquery/jquery-3.6.0.min.js"></script>
|
||||
<script src="js/lib/jquery/jquery-migrate-3.3.2.min.js"></script>
|
||||
|
||||
<!-- jQuery - Dev -->
|
||||
<!script src="js/lib/jquery/dev/jquery-3.6.0.js"></script>
|
||||
<!script src="js/lib/jquery/dev/jquery-migrate-3.3.2.js"></script>
|
||||
|
||||
<!-- SemVer -->
|
||||
<script src='js/lib/semver.js'></script>
|
||||
@ -65,7 +70,11 @@
|
||||
<link href="css/bootstrap-select.min.css" rel="stylesheet">
|
||||
|
||||
<!-- MetisMenu CSS -->
|
||||
<link href="css/metisMenu.css" rel="stylesheet">
|
||||
<link href="css/metisMenu.min.css" rel="stylesheet">
|
||||
|
||||
<!-- Gijgo CSS -->
|
||||
<link href="css/gijgo/core.min.css" rel="stylesheet">
|
||||
<link href="css/gijgo/dialog.min.css" rel="stylesheet">
|
||||
|
||||
<!-- Custom CSS -->
|
||||
<link href="css/sb-admin-2.css" rel="stylesheet">
|
||||
@ -351,8 +360,9 @@
|
||||
<script src="js/wizard.js"></script>
|
||||
|
||||
<!--gijgo dialog-->
|
||||
<script src="js/lib/draggable.min.js"></script>
|
||||
<script src="js/lib/dialog.min.js"></script>
|
||||
<script src="js/lib/gijgo/core.min.js"></script>
|
||||
<script src="js/lib/gijgo/draggable.min.js"></script>
|
||||
<script src="js/lib/gijgo/dialog.min.js"></script>
|
||||
<script src="js/ledsim.js"></script>
|
||||
|
||||
<!--Client-side download-->
|
||||
|
@ -43,7 +43,7 @@ $(document).ready(function () {
|
||||
}, true, true);
|
||||
|
||||
editor_color.on('change', function () {
|
||||
editor_color.validate().length || window.readOnlyMode ? $('#btn_submit_color').attr('disabled', true) : $('#btn_submit_color').attr('disabled', false);
|
||||
editor_color.validate().length || window.readOnlyMode ? $('#btn_submit_color').prop('disabled', true) : $('#btn_submit_color').prop('disabled', false);
|
||||
});
|
||||
|
||||
$('#btn_submit_color').off().on('click', function () {
|
||||
@ -64,7 +64,7 @@ $(document).ready(function () {
|
||||
showInputOptionsForKey(editor_smoothing, "smoothing", "enable", false);
|
||||
$('#smoothingHelpPanelId').hide();
|
||||
}
|
||||
editor_smoothing.validate().length || window.readOnlyMode ? $('#btn_submit_smoothing').attr('disabled', true) : $('#btn_submit_smoothing').attr('disabled', false);
|
||||
editor_smoothing.validate().length || window.readOnlyMode ? $('#btn_submit_smoothing').prop('disabled', true) : $('#btn_submit_smoothing').prop('disabled', false);
|
||||
});
|
||||
|
||||
$('#btn_submit_smoothing').off().on('click', function () {
|
||||
@ -89,7 +89,7 @@ $(document).ready(function () {
|
||||
$('#blackborderHelpPanelId').hide();
|
||||
$('#blackborderWikiLinkId').hide();
|
||||
}
|
||||
editor_blackborder.validate().length || window.readOnlyMode ? $('#btn_submit_blackborder').attr('disabled', true) : $('#btn_submit_blackborder').attr('disabled', false);
|
||||
editor_blackborder.validate().length || window.readOnlyMode ? $('#btn_submit_blackborder').prop('disabled', true) : $('#btn_submit_blackborder').prop('disabled', false);
|
||||
});
|
||||
|
||||
$('#btn_submit_blackborder').off().on('click', function () {
|
||||
|
@ -85,7 +85,7 @@ $(document).ready(function () {
|
||||
updateHyperionInstanceListing();
|
||||
|
||||
$('#instanceButton').bootstrapToggle();
|
||||
$('#instanceButton').change(e => {
|
||||
$('#instanceButton').on("change", e => {
|
||||
requestSetComponentState('ALL', e.currentTarget.checked);
|
||||
});
|
||||
|
||||
@ -93,7 +93,7 @@ $(document).ready(function () {
|
||||
if (components[idx].name != "ALL") {
|
||||
$("#general_comp_" + components[idx].name).bootstrapToggle();
|
||||
$("#general_comp_" + components[idx].name).bootstrapToggle(hyperion_enabled ? "enable" : "disable");
|
||||
$("#general_comp_" + components[idx].name).change(e => {
|
||||
$("#general_comp_" + components[idx].name).on("change", e => {
|
||||
requestSetComponentState(e.currentTarget.id.split('_')[2], e.currentTarget.checked);
|
||||
});
|
||||
}
|
||||
|
@ -62,7 +62,7 @@ $(document).ready(function () {
|
||||
}, true, true);
|
||||
|
||||
effects_editor.on('change', function () {
|
||||
effects_editor.validate().length || window.readOnlyMode ? $('#btn_submit_effects').attr('disabled', true) : $('#btn_submit_effects').attr('disabled', false);
|
||||
effects_editor.validate().length || window.readOnlyMode ? $('#btn_submit_effects').prop('disabled', true) : $('#btn_submit_effects').prop('disabled', false);
|
||||
});
|
||||
|
||||
$('#btn_submit_effects').off().on('click', function () {
|
||||
@ -96,7 +96,7 @@ $(document).ready(function () {
|
||||
$('#foregroundEffectHelpPanelId').hide();
|
||||
}
|
||||
|
||||
foregroundEffect_editor.validate().length || window.readOnlyMode ? $('#btn_submit_foregroundEffect').attr('disabled', true) : $('#btn_submit_foregroundEffect').attr('disabled', false);
|
||||
foregroundEffect_editor.validate().length || window.readOnlyMode ? $('#btn_submit_foregroundEffect').prop('disabled', true) : $('#btn_submit_foregroundEffect').prop('disabled', false);
|
||||
});
|
||||
|
||||
backgroundEffect_editor.on('change', function () {
|
||||
@ -110,7 +110,7 @@ $(document).ready(function () {
|
||||
$('#backgroundEffectHelpPanelId').hide();
|
||||
}
|
||||
|
||||
backgroundEffect_editor.validate().length || window.readOnlyMode ? $('#btn_submit_backgroundEffect').attr('disabled', true) : $('#btn_submit_backgroundEffect').attr('disabled', false);
|
||||
backgroundEffect_editor.validate().length || window.readOnlyMode ? $('#btn_submit_backgroundEffect').prop('disabled', true) : $('#btn_submit_backgroundEffect').prop('disabled', false);
|
||||
});
|
||||
|
||||
$('#btn_submit_foregroundEffect').off().on('click', function () {
|
||||
|
@ -113,11 +113,11 @@ $(document).ready(function () {
|
||||
triggerTestEffect();
|
||||
}
|
||||
if (effects_editor.validate().length == 0 && effectName != "") {
|
||||
$('#btn_start_test').attr('disabled', false);
|
||||
!window.readOnlyMode ? $('#btn_write').attr('disabled', false) : $('#btn_write').attr('disabled', true);
|
||||
$('#btn_start_test').prop('disabled', false);
|
||||
!window.readOnlyMode ? $('#btn_write').prop('disabled', false) : $('#btn_write').prop('disabled', true);
|
||||
}
|
||||
else {
|
||||
$('#btn_start_test, #btn_write').attr('disabled', true);
|
||||
$('#btn_start_test, #btn_write').prop('disabled', true);
|
||||
}
|
||||
});
|
||||
});
|
||||
@ -127,11 +127,11 @@ $(document).ready(function () {
|
||||
effectName = encodeHTML($(this).val());
|
||||
if ($(this).val() == '') {
|
||||
effects_editor.disable();
|
||||
$("#eff_footer").children().attr('disabled', true);
|
||||
$("#eff_footer").children().prop('disabled', true);
|
||||
} else {
|
||||
effects_editor.enable();
|
||||
$("#eff_footer").children().attr('disabled', false);
|
||||
!window.readOnlyMode ? $('#btn_write').attr('disabled', false) : $('#btn_write').attr('disabled', true);
|
||||
$("#eff_footer").children().prop('disabled', false);
|
||||
!window.readOnlyMode ? $('#btn_write').prop('disabled', false) : $('#btn_write').prop('disabled', true);
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -17,7 +17,7 @@ $(document).ready(function () {
|
||||
}, true, true);
|
||||
|
||||
conf_editor.on('change', function () {
|
||||
conf_editor.validate().length || window.readOnlyMode ? $('#btn_submit').attr('disabled', true) : $('#btn_submit').attr('disabled', false);
|
||||
conf_editor.validate().length || window.readOnlyMode ? $('#btn_submit').prop('disabled', true) : $('#btn_submit').prop('disabled', false);
|
||||
});
|
||||
|
||||
$('#btn_submit').off().on('click', function () {
|
||||
@ -29,8 +29,8 @@ $(document).ready(function () {
|
||||
function handleInstanceRename(e) {
|
||||
|
||||
conf_editor.on('change', function () {
|
||||
window.readOnlyMode ? $('#btn_cl_save').attr('disabled', true) : $('#btn_submit').attr('disabled', false);
|
||||
window.readOnlyMode ? $('#btn_ma_save').attr('disabled', true) : $('#btn_submit').attr('disabled', false);
|
||||
window.readOnlyMode ? $('#btn_cl_save').prop('disabled', true) : $('#btn_submit').prop('disabled', false);
|
||||
window.readOnlyMode ? $('#btn_ma_save').prop('disabled', true) : $('#btn_submit').prop('disabled', false);
|
||||
});
|
||||
|
||||
var inst = e.currentTarget.id.split("_")[1];
|
||||
@ -41,7 +41,7 @@ $(document).ready(function () {
|
||||
});
|
||||
|
||||
$('#renInst_name').off().on('input', function (e) {
|
||||
(e.currentTarget.value.length >= 5 && e.currentTarget.value != getInstanceNameByIndex(inst)) ? $('#id_btn_ok').attr('disabled', false) : $('#id_btn_ok').attr('disabled', true);
|
||||
(e.currentTarget.value.length >= 5 && e.currentTarget.value != getInstanceNameByIndex(inst)) ? $('#id_btn_ok').prop('disabled', false) : $('#id_btn_ok').prop('disabled', true);
|
||||
});
|
||||
}
|
||||
|
||||
@ -70,14 +70,14 @@ $(document).ready(function () {
|
||||
$('#instren_' + inst[key].instance).off().on('click', handleInstanceRename);
|
||||
|
||||
$('#inst_' + inst[key].instance).bootstrapToggle();
|
||||
$('#inst_' + inst[key].instance).change(e => {
|
||||
$('#inst_' + inst[key].instance).on("change", e => {
|
||||
requestInstanceStartStop(e.currentTarget.id.split('_').pop(), e.currentTarget.checked);
|
||||
});
|
||||
$('#instdel_' + inst[key].instance).off().on('click', handleInstanceDelete);
|
||||
|
||||
window.readOnlyMode ? $('#instren_' + inst[key].instance).attr('disabled', true) : $('#btn_submit').attr('disabled', false);
|
||||
window.readOnlyMode ? $('#inst_' + inst[key].instance).attr('disabled', true) : $('#btn_submit').attr('disabled', false);
|
||||
window.readOnlyMode ? $('#instdel_' + inst[key].instance).attr('disabled', true) : $('#btn_submit').attr('disabled', false);
|
||||
window.readOnlyMode ? $('#instren_' + inst[key].instance).prop('disabled', true) : $('#btn_submit').prop('disabled', false);
|
||||
window.readOnlyMode ? $('#inst_' + inst[key].instance).prop('disabled', true) : $('#btn_submit').prop('disabled', false);
|
||||
window.readOnlyMode ? $('#instdel_' + inst[key].instance).prop('disabled', true) : $('#btn_submit').prop('disabled', false);
|
||||
}
|
||||
}
|
||||
|
||||
@ -86,7 +86,7 @@ $(document).ready(function () {
|
||||
buildInstanceList();
|
||||
|
||||
$('#inst_name').off().on('input', function (e) {
|
||||
(e.currentTarget.value.length >= 5) && !window.readOnlyMode ? $('#btn_create_inst').attr('disabled', false) : $('#btn_create_inst').attr('disabled', true);
|
||||
(e.currentTarget.value.length >= 5) && !window.readOnlyMode ? $('#btn_create_inst').prop('disabled', false) : $('#btn_create_inst').prop('disabled', true);
|
||||
if (5 - e.currentTarget.value.length >= 1 && 5 - e.currentTarget.value.length <= 4)
|
||||
$('#inst_chars_needed').html(5 - e.currentTarget.value.length + " " + $.i18n('general_chars_needed'))
|
||||
else
|
||||
@ -96,7 +96,7 @@ $(document).ready(function () {
|
||||
$('#btn_create_inst').off().on('click', function (e) {
|
||||
requestInstanceCreate(encodeHTML($('#inst_name').val()));
|
||||
$('#inst_name').val("");
|
||||
$('#btn_create_inst').attr('disabled', true)
|
||||
$('#btn_create_inst').prop('disabled', true)
|
||||
});
|
||||
|
||||
$(hyperion).off("instance-updated").on("instance-updated", function (event) {
|
||||
@ -105,7 +105,7 @@ $(document).ready(function () {
|
||||
|
||||
//import
|
||||
function dis_imp_btn(state) {
|
||||
state || window.readOnlyMode ? $('#btn_import_conf').attr('disabled', true) : $('#btn_import_conf').attr('disabled', false);
|
||||
state || window.readOnlyMode ? $('#btn_import_conf').prop('disabled', true) : $('#btn_import_conf').prop('disabled', false);
|
||||
}
|
||||
|
||||
function readFile(evt) {
|
||||
|
@ -113,12 +113,12 @@ $(document).ready(function () {
|
||||
showInputOptionsForKey(conf_editor_screen, "framegrabber", ["enable", "available_devices"], false);
|
||||
break;
|
||||
default:
|
||||
window.readOnlyMode ? $('#btn_submit_screengrabber').attr('disabled', true) : $('#btn_submit_screengrabber').attr('disabled', false);
|
||||
window.readOnlyMode ? $('#btn_submit_screengrabber').prop('disabled', true) : $('#btn_submit_screengrabber').prop('disabled', false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
else {
|
||||
$('#btn_submit_screengrabber').attr('disabled', true);
|
||||
$('#btn_submit_screengrabber').prop('disabled', true);
|
||||
}
|
||||
});
|
||||
|
||||
@ -133,7 +133,7 @@ $(document).ready(function () {
|
||||
discoverInputSources("screen");
|
||||
}
|
||||
else {
|
||||
$('#btn_submit_screengrabber').attr('disabled', false);
|
||||
$('#btn_submit_screengrabber').prop('disabled', false);
|
||||
showInputOptionsForKey(conf_editor_screen, "framegrabber", "enable", false);
|
||||
$('#screengrabberHelpPanelId').hide();
|
||||
}
|
||||
@ -144,7 +144,7 @@ $(document).ready(function () {
|
||||
|
||||
var deviceSelected = conf_editor_screen.getEditor("root.framegrabber.available_devices").getValue();
|
||||
if (deviceSelected === "SELECT" || deviceSelected === "NONE" || deviceSelected === "") {
|
||||
$('#btn_submit_screengrabber').attr('disabled', true);
|
||||
$('#btn_submit_screengrabber').prop('disabled', true);
|
||||
showInputOptionsForKey(conf_editor_screen, "framegrabber", ["enable", "available_devices"], false);
|
||||
}
|
||||
else {
|
||||
@ -181,7 +181,7 @@ $(document).ready(function () {
|
||||
}
|
||||
|
||||
if (conf_editor_screen.validate().length && !window.readOnlyMode) {
|
||||
$('#btn_submit_screengrabber').attr('disabled', false);
|
||||
$('#btn_submit_screengrabber').prop('disabled', false);
|
||||
}
|
||||
}
|
||||
});
|
||||
@ -230,7 +230,7 @@ $(document).ready(function () {
|
||||
}
|
||||
|
||||
if (conf_editor_screen.validate().length && !window.readOnlyMode) {
|
||||
$('#btn_submit_screengrabber').attr('disabled', false);
|
||||
$('#btn_submit_screengrabber').prop('disabled', false);
|
||||
}
|
||||
});
|
||||
|
||||
@ -290,7 +290,7 @@ $(document).ready(function () {
|
||||
}
|
||||
|
||||
if (conf_editor_screen.validate().length && !window.readOnlyMode) {
|
||||
$('#btn_submit_screengrabber').attr('disabled', false);
|
||||
$('#btn_submit_screengrabber').prop('disabled', false);
|
||||
}
|
||||
});
|
||||
|
||||
@ -367,12 +367,12 @@ $(document).ready(function () {
|
||||
showInputOptionsForKey(conf_editor_video, "grabberV4L2", ["enable", "available_devices"], false);
|
||||
break;
|
||||
default:
|
||||
window.readOnlyMode ? $('#btn_submit_videograbber').attr('disabled', true) : $('#btn_submit_videograbber').attr('disabled', false);
|
||||
window.readOnlyMode ? $('#btn_submit_videograbber').prop('disabled', true) : $('#btn_submit_videograbber').prop('disabled', false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
else {
|
||||
$('#btn_submit_videograbber').attr('disabled', true);
|
||||
$('#btn_submit_videograbber').prop('disabled', true);
|
||||
}
|
||||
});
|
||||
|
||||
@ -388,7 +388,7 @@ $(document).ready(function () {
|
||||
discoverInputSources("video");
|
||||
}
|
||||
else {
|
||||
$('#btn_submit_videograbber').attr('disabled', false);
|
||||
$('#btn_submit_videograbber').prop('disabled', false);
|
||||
$('#btn_videograbber_set_defaults').hide();
|
||||
showInputOptionsForKey(conf_editor_video, "grabberV4L2", "enable", false);
|
||||
$('#videograbberHelpPanelId').hide();
|
||||
@ -398,7 +398,7 @@ $(document).ready(function () {
|
||||
conf_editor_video.watch('root.grabberV4L2.available_devices', () => {
|
||||
var deviceSelected = conf_editor_video.getEditor("root.grabberV4L2.available_devices").getValue();
|
||||
if (deviceSelected === "SELECT" || deviceSelected === "NONE" || deviceSelected === "") {
|
||||
$('#btn_submit_videograbber').attr('disabled', true);
|
||||
$('#btn_submit_videograbber').prop('disabled', true);
|
||||
showInputOptionsForKey(conf_editor_video, "grabberV4L2", ["enable", "available_devices"], false);
|
||||
}
|
||||
else {
|
||||
@ -414,9 +414,9 @@ $(document).ready(function () {
|
||||
conf_editor_video.getEditor("root.grabberV4L2.device").setValue(deviceProperties.device);
|
||||
|
||||
if (deviceProperties.hasOwnProperty('default') && !jQuery.isEmptyObject(deviceProperties.default.properties)) {
|
||||
$('#btn_videograbber_set_defaults').attr('disabled', false);
|
||||
$('#btn_videograbber_set_defaults').prop('disabled', false);
|
||||
} else {
|
||||
$('#btn_videograbber_set_defaults').attr('disabled', true);
|
||||
$('#btn_videograbber_set_defaults').prop('disabled', true);
|
||||
}
|
||||
|
||||
//If configured device is selected, use the saved values as current values
|
||||
@ -461,7 +461,7 @@ $(document).ready(function () {
|
||||
}
|
||||
|
||||
if (conf_editor_video.validate().length && !window.readOnlyMode) {
|
||||
$('#btn_submit_videograbber').attr('disabled', false);
|
||||
$('#btn_submit_videograbber').prop('disabled', false);
|
||||
}
|
||||
}
|
||||
});
|
||||
@ -525,7 +525,7 @@ $(document).ready(function () {
|
||||
}
|
||||
|
||||
if (conf_editor_video.validate().length && !window.readOnlyMode) {
|
||||
$('#btn_submit_videograbber').attr('disabled', false);
|
||||
$('#btn_submit_videograbber').prop('disabled', false);
|
||||
}
|
||||
});
|
||||
|
||||
@ -577,7 +577,7 @@ $(document).ready(function () {
|
||||
}
|
||||
|
||||
if (conf_editor_video.validate().length && !window.readOnlyMode) {
|
||||
$('#btn_submit_videograbber').attr('disabled', false);
|
||||
$('#btn_submit_videograbber').prop('disabled', false);
|
||||
}
|
||||
});
|
||||
|
||||
@ -636,7 +636,7 @@ $(document).ready(function () {
|
||||
}
|
||||
|
||||
if (conf_editor_video.validate().length && !window.readOnlyMode) {
|
||||
$('#btn_submit_videograbber').attr('disabled', false);
|
||||
$('#btn_submit_videograbber').prop('disabled', false);
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -59,15 +59,15 @@ $(document).ready(function () {
|
||||
container: 'body'
|
||||
});
|
||||
|
||||
$(".bootstrap-select").click(function () {
|
||||
$(".bootstrap-select").on("click", function () {
|
||||
$(this).addClass("open");
|
||||
});
|
||||
|
||||
$(document).click(function () {
|
||||
$(document).on("click", function () {
|
||||
$(".bootstrap-select").removeClass("open");
|
||||
});
|
||||
|
||||
$(".bootstrap-select").click(function (e) {
|
||||
$(".bootstrap-select").on("click", function (e) {
|
||||
e.stopPropagation();
|
||||
});
|
||||
|
||||
@ -314,19 +314,19 @@ $(document).ready(function () {
|
||||
window.serverInfo.effects = event.response.data.effects
|
||||
});
|
||||
|
||||
$(".mnava").bind('click.menu', function (e) {
|
||||
$(".mnava").on('click.menu', function (e) {
|
||||
loadContent(e);
|
||||
window.scrollTo(0, 0);
|
||||
});
|
||||
|
||||
$(window).scroll(function () {
|
||||
$(window).on("scroll", function () {
|
||||
if ($(window).scrollTop() > 65)
|
||||
$("#navbar_brand_logo").css("display", "none");
|
||||
else
|
||||
$("#navbar_brand_logo").css("display", "");
|
||||
});
|
||||
|
||||
$('#side-menu li a, #side-menu li ul li a').click(function () {
|
||||
$('#side-menu li a, #side-menu li ul li a').on("click", function () {
|
||||
$('#side-menu').find('.active').toggleClass('inactive'); // find all active classes and set inactive;
|
||||
$(this).addClass('active');
|
||||
});
|
||||
@ -341,7 +341,7 @@ function suppressDefaultPwWarning() {
|
||||
|
||||
$(function () {
|
||||
var sidebar = $('#side-menu'); // cache sidebar to a variable for performance
|
||||
sidebar.delegate('a.inactive', 'click', function () {
|
||||
sidebar.on("click", 'a.inactive' , function () {
|
||||
sidebar.find('.active').toggleClass('active inactive');
|
||||
$(this).toggleClass('active inactive');
|
||||
});
|
||||
|
@ -87,13 +87,13 @@ $(document).ready(function () {
|
||||
|
||||
if (!conf_editor_instCapt.validate().length) {
|
||||
if (!window.serverConfig.framegrabber.enable && !window.serverConfig.grabberV4L2.enable) {
|
||||
$('#btn_submit_instCapt').attr('disabled', true);
|
||||
$('#btn_submit_instCapt').prop('disabled', true);
|
||||
} else {
|
||||
window.readOnlyMode ? $('#btn_submit_instCapt').attr('disabled', true) : $('#btn_submit_instCapt').attr('disabled', false);
|
||||
window.readOnlyMode ? $('#btn_submit_instCapt').prop('disabled', true) : $('#btn_submit_instCapt').prop('disabled', false);
|
||||
}
|
||||
}
|
||||
else {
|
||||
$('#btn_submit_instCapt').attr('disabled', true);
|
||||
$('#btn_submit_instCapt').prop('disabled', true);
|
||||
}
|
||||
});
|
||||
|
||||
@ -150,7 +150,7 @@ $(document).ready(function () {
|
||||
});
|
||||
|
||||
conf_editor_bobl.on('change', function () {
|
||||
conf_editor_bobl.validate().length || window.readOnlyMode ? $('#btn_submit_boblightserver').attr('disabled', true) : $('#btn_submit_boblightserver').attr('disabled', false);
|
||||
conf_editor_bobl.validate().length || window.readOnlyMode ? $('#btn_submit_boblightserver').prop('disabled', true) : $('#btn_submit_boblightserver').prop('disabled', false);
|
||||
});
|
||||
|
||||
conf_editor_bobl.watch('root.boblightServer.enable', () => {
|
||||
|
@ -482,7 +482,7 @@ $(document).ready(function () {
|
||||
$('#leds_wl').append('<p style="font-weight:bold">' + $.i18n('general_wiki_moreto', $.i18n('conf_leds_nav_label_ledlayout')) + buildWL("user/advanced/Advanced.html#led-layout", "Wiki") + '</p>');
|
||||
|
||||
// bind change event to all inputs
|
||||
$('.ledCLconstr').bind("change", function () {
|
||||
$('.ledCLconstr').on("change", function () {
|
||||
|
||||
//Ensure Values are in min/max ranges
|
||||
if ($(this).val() < $(this).attr('min') * 1) { $(this).val($(this).attr('min')); }
|
||||
@ -543,7 +543,7 @@ $(document).ready(function () {
|
||||
createClassicLeds();
|
||||
});
|
||||
|
||||
$('.ledMAconstr').bind("change", function () {
|
||||
$('.ledMAconstr').on("change", function () {
|
||||
valValue(this.id, this.value, this.min, this.max);
|
||||
createMatrixLeds();
|
||||
});
|
||||
@ -587,16 +587,16 @@ $(document).ready(function () {
|
||||
}
|
||||
|
||||
if (success) {
|
||||
$('#leds_custom_updsim').attr("disabled", false);
|
||||
$('#leds_custom_save').attr("disabled", false);
|
||||
$('#leds_custom_updsim').prop("disabled", false);
|
||||
$('#leds_custom_save').prop("disabled", false);
|
||||
}
|
||||
else {
|
||||
$('#leds_custom_updsim').attr("disabled", true);
|
||||
$('#leds_custom_save').attr("disabled", true);
|
||||
$('#leds_custom_updsim').prop("disabled", true);
|
||||
$('#leds_custom_save').prop("disabled", true);
|
||||
}
|
||||
|
||||
if (window.readOnlyMode) {
|
||||
$('#leds_custom_save').attr('disabled', true);
|
||||
$('#leds_custom_save').prop('disabled', true);
|
||||
}
|
||||
}
|
||||
}, finalLedArray);
|
||||
@ -604,8 +604,8 @@ $(document).ready(function () {
|
||||
//TODO: HACK! No callback for schema validation - Add it!
|
||||
setInterval(function () {
|
||||
if ($('#aceedit table').hasClass('jsoneditor-text-errors')) {
|
||||
$('#leds_custom_updsim').attr("disabled", true);
|
||||
$('#leds_custom_save').attr("disabled", true);
|
||||
$('#leds_custom_updsim').prop("disabled", true);
|
||||
$('#leds_custom_save').prop("disabled", true);
|
||||
}
|
||||
}, 1000);
|
||||
|
||||
@ -701,7 +701,7 @@ $(document).ready(function () {
|
||||
}
|
||||
|
||||
// change save button state based on validation result
|
||||
blacklist_editor.validate().length || window.readOnlyMode ? $('#btn_bl_save').attr('disabled', true) : $('#btn_bl_save').attr('disabled', false);
|
||||
blacklist_editor.validate().length || window.readOnlyMode ? $('#btn_bl_save').prop('disabled', true) : $('#btn_bl_save').prop('disabled', false);
|
||||
});
|
||||
|
||||
});
|
||||
@ -751,14 +751,14 @@ $(document).ready(function () {
|
||||
$("#info_container_text").html(infoTextDefault);
|
||||
|
||||
// change save button state based on validation result
|
||||
conf_editor.validate().length || window.readOnlyMode ? $('#btn_submit_controller').attr('disabled', true) : $('#btn_submit_controller').attr('disabled', false);
|
||||
conf_editor.validate().length || window.readOnlyMode ? $('#btn_submit_controller').prop('disabled', true) : $('#btn_submit_controller').prop('disabled', false);
|
||||
|
||||
// led controller sepecific wizards
|
||||
$('#btn_wiz_holder').html("");
|
||||
$('#btn_led_device_wiz').off();
|
||||
|
||||
if (ledType == "philipshue") {
|
||||
$('#root_specificOptions_useEntertainmentAPI').bind("change", function () {
|
||||
$('#root_specificOptions_useEntertainmentAPI').on("change", function () {
|
||||
var ledWizardType = (this.checked) ? "philipshueentertainment" : ledType;
|
||||
var data = { type: ledWizardType };
|
||||
var hue_title = (this.checked) ? 'wiz_hue_e_title' : 'wiz_hue_title';
|
||||
@ -936,10 +936,10 @@ $(document).ready(function () {
|
||||
if (!conf_editor.validate().length) {
|
||||
if (canIdentify) {
|
||||
$("#btn_test_controller").show();
|
||||
$('#btn_test_controller').attr('disabled', false);
|
||||
$('#btn_test_controller').prop('disabled', false);
|
||||
} else {
|
||||
$('#btn_test_controller').hide();
|
||||
$('#btn_test_controller').attr('disabled', true);
|
||||
$('#btn_test_controller').prop('disabled', true);
|
||||
}
|
||||
} else {
|
||||
canSave = false;
|
||||
@ -947,16 +947,16 @@ $(document).ready(function () {
|
||||
|
||||
if (canSave) {
|
||||
if (!window.readOnlyMode) {
|
||||
$('#btn_submit_controller').attr('disabled', false);
|
||||
$('#btn_submit_controller').prop('disabled', false);
|
||||
}
|
||||
}
|
||||
else {
|
||||
$('#btn_submit_controller').attr('disabled', true);
|
||||
$('#btn_submit_controller').prop('disabled', true);
|
||||
}
|
||||
|
||||
window.readOnlyMode ? $('#btn_cl_save').attr('disabled', true) : $('#btn_submit').attr('disabled', false);
|
||||
window.readOnlyMode ? $('#btn_ma_save').attr('disabled', true) : $('#btn_submit').attr('disabled', false);
|
||||
window.readOnlyMode ? $('#leds_custom_save').attr('disabled', true) : $('#btn_submit').attr('disabled', false);
|
||||
window.readOnlyMode ? $('#btn_cl_save').prop('disabled', true) : $('#btn_submit').prop('disabled', false);
|
||||
window.readOnlyMode ? $('#btn_ma_save').prop('disabled', true) : $('#btn_submit').prop('disabled', false);
|
||||
window.readOnlyMode ? $('#leds_custom_save').prop('disabled', true) : $('#btn_submit').prop('disabled', false);
|
||||
});
|
||||
|
||||
conf_editor.watch('root.specificOptions.hostList', () => {
|
||||
@ -1040,8 +1040,8 @@ $(document).ready(function () {
|
||||
var output = conf_editor.getEditor("root.specificOptions.output").getValue();
|
||||
if (output === "NONE" || output === "SELECT" || output === "") {
|
||||
|
||||
$('#btn_submit_controller').attr('disabled', true);
|
||||
$('#btn_test_controller').attr('disabled', true);
|
||||
$('#btn_submit_controller').prop('disabled', true);
|
||||
$('#btn_test_controller').prop('disabled', true);
|
||||
$('#btn_test_controller').hide();
|
||||
|
||||
conf_editor.getEditor("root.generalOptions.hardwareLedCount").setValue(1);
|
||||
@ -1080,13 +1080,13 @@ $(document).ready(function () {
|
||||
if (!conf_editor.validate().length) {
|
||||
if (canIdentify) {
|
||||
$("#btn_test_controller").show();
|
||||
$('#btn_test_controller').attr('disabled', false);
|
||||
$('#btn_test_controller').prop('disabled', false);
|
||||
} else {
|
||||
$('#btn_test_controller').hide();
|
||||
$('#btn_test_controller').attr('disabled', true);
|
||||
$('#btn_test_controller').prop('disabled', true);
|
||||
}
|
||||
if (!window.readOnlyMode) {
|
||||
$('#btn_submit_controller').attr('disabled', false);
|
||||
$('#btn_submit_controller').prop('disabled', false);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1522,7 +1522,7 @@ var updateSelectList = function (ledType, discoveryInfo) {
|
||||
if (discoveryInfo.devices.length == 0) {
|
||||
enumVals.push("NONE");
|
||||
enumTitelVals.push($.i18n('edt_dev_spec_devices_discovered_none'));
|
||||
$('#btn_submit_controller').attr('disabled', true);
|
||||
$('#btn_submit_controller').prop('disabled', true);
|
||||
showAllDeviceInputOptions(key, false);
|
||||
}
|
||||
else {
|
||||
@ -1564,7 +1564,7 @@ var updateSelectList = function (ledType, discoveryInfo) {
|
||||
if (discoveryInfo.devices.length == 0) {
|
||||
enumVals.push("NONE");
|
||||
enumTitelVals.push($.i18n('edt_dev_spec_devices_discovered_none'));
|
||||
$('#btn_submit_controller').attr('disabled', true);
|
||||
$('#btn_submit_controller').prop('disabled', true);
|
||||
showAllDeviceInputOptions(key, false);
|
||||
}
|
||||
else {
|
||||
@ -1606,7 +1606,7 @@ var updateSelectList = function (ledType, discoveryInfo) {
|
||||
if (discoveryInfo.devices.length == 0) {
|
||||
enumVals.push("NONE");
|
||||
enumTitelVals.push($.i18n('edt_dev_spec_devices_discovered_none'));
|
||||
$('#btn_submit_controller').attr('disabled', true);
|
||||
$('#btn_submit_controller').prop('disabled', true);
|
||||
showAllDeviceInputOptions(key, false);
|
||||
|
||||
$("#info_container_text").html($.i18n("conf_leds_info_ws281x"));
|
||||
@ -1622,7 +1622,7 @@ var updateSelectList = function (ledType, discoveryInfo) {
|
||||
|
||||
async function discover_device(ledType, params) {
|
||||
|
||||
$('#btn_submit_controller').attr('disabled', true);
|
||||
$('#btn_submit_controller').prop('disabled', true);
|
||||
|
||||
const result = await requestLedDeviceDiscovery(ledType, params);
|
||||
|
||||
@ -1642,7 +1642,7 @@ async function discover_device(ledType, params) {
|
||||
|
||||
async function getProperties_device(ledType, key, params) {
|
||||
// Take care that connfig cannot be saved during background processing
|
||||
$('#btn_submit_controller').attr('disabled', true);
|
||||
$('#btn_submit_controller').prop('disabled', true);
|
||||
|
||||
//Create ledType cache entry
|
||||
if (!devicesProperties[ledType]) {
|
||||
@ -1659,13 +1659,13 @@ async function getProperties_device(ledType, key, params) {
|
||||
devicesProperties[ledType][key] = ledDeviceProperties;
|
||||
|
||||
if (!window.readOnlyMode) {
|
||||
$('#btn_submit_controller').attr('disabled', false);
|
||||
$('#btn_submit_controller').prop('disabled', false);
|
||||
}
|
||||
}
|
||||
else {
|
||||
showNotification('warning', $.i18n('conf_leds_error_get_properties_text'), $.i18n('conf_leds_error_get_properties_title'))
|
||||
$('#btn_submit_controller').attr('disabled', true);
|
||||
$('#btn_test_controller').attr('disabled', true);
|
||||
$('#btn_submit_controller').prop('disabled', true);
|
||||
$('#btn_test_controller').prop('disabled', true);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1675,14 +1675,14 @@ async function getProperties_device(ledType, key, params) {
|
||||
|
||||
async function identify_device(type, params) {
|
||||
// Take care that connfig cannot be saved and identification cannot be retriggerred during background processing
|
||||
$('#btn_submit_controller').attr('disabled', true);
|
||||
$('#btn_test_controller').attr('disabled', true);
|
||||
$('#btn_submit_controller').prop('disabled', true);
|
||||
$('#btn_test_controller').prop('disabled', true);
|
||||
|
||||
await requestLedDeviceIdentification(type, params);
|
||||
|
||||
$('#btn_test_controller').attr('disabled', false);
|
||||
$('#btn_test_controller').prop('disabled', false);
|
||||
if (!window.readOnlyMode) {
|
||||
$('#btn_submit_controller').attr('disabled', false);
|
||||
$('#btn_submit_controller').prop('disabled', false);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -20,7 +20,7 @@ $(document).ready(function () {
|
||||
}, true, true);
|
||||
|
||||
conf_editor.on('change', function () {
|
||||
conf_editor.validate().length || window.readOnlyMode ? $('#btn_submit').attr('disabled', true) : $('#btn_submit').attr('disabled', false);
|
||||
conf_editor.validate().length || window.readOnlyMode ? $('#btn_submit').prop('disabled', true) : $('#btn_submit').prop('disabled', false);
|
||||
});
|
||||
|
||||
$('#btn_submit').off().on('click', function () {
|
||||
@ -92,7 +92,7 @@ $(document).ready(function () {
|
||||
);
|
||||
|
||||
$(`#btn_scroll`).bootstrapToggle();
|
||||
$(`#btn_scroll`).change(e => {
|
||||
$(`#btn_scroll`).on("change", e => {
|
||||
if (e.currentTarget.checked) {
|
||||
//Scroll to end of log
|
||||
isScroll = true;
|
||||
|
@ -69,7 +69,7 @@ $(document).ready(function () {
|
||||
}, true, true);
|
||||
|
||||
conf_editor_net.on('change', function () {
|
||||
conf_editor_net.validate().length || window.readOnlyMode ? $('#btn_submit_net').attr('disabled', true) : $('#btn_submit_net').attr('disabled', false);
|
||||
conf_editor_net.validate().length || window.readOnlyMode ? $('#btn_submit_net').prop('disabled', true) : $('#btn_submit_net').prop('disabled', false);
|
||||
});
|
||||
|
||||
$('#btn_submit_net').off().on('click', function () {
|
||||
@ -82,7 +82,7 @@ $(document).ready(function () {
|
||||
}, true, true);
|
||||
|
||||
conf_editor_json.on('change', function () {
|
||||
conf_editor_json.validate().length || window.readOnlyMode ? $('#btn_submit_jsonserver').attr('disabled', true) : $('#btn_submit_jsonserver').attr('disabled', false);
|
||||
conf_editor_json.validate().length || window.readOnlyMode ? $('#btn_submit_jsonserver').prop('disabled', true) : $('#btn_submit_jsonserver').prop('disabled', false);
|
||||
});
|
||||
|
||||
$('#btn_submit_jsonserver').off().on('click', function () {
|
||||
@ -104,7 +104,7 @@ $(document).ready(function () {
|
||||
showInputOptionsForKey(conf_editor_fbs, "flatbufServer", "enable", false);
|
||||
$('#flatbufServerHelpPanelId').hide();
|
||||
}
|
||||
conf_editor_fbs.validate().length || window.readOnlyMode ? $('#btn_submit_fbserver').attr('disabled', true) : $('#btn_submit_fbserver').attr('disabled', false);
|
||||
conf_editor_fbs.validate().length || window.readOnlyMode ? $('#btn_submit_fbserver').prop('disabled', true) : $('#btn_submit_fbserver').prop('disabled', false);
|
||||
});
|
||||
|
||||
$('#btn_submit_fbserver').off().on('click', function () {
|
||||
@ -127,7 +127,7 @@ $(document).ready(function () {
|
||||
showInputOptionsForKey(conf_editor_proto, "protoServer", "enable", false);
|
||||
$('#protoServerHelpPanelId').hide();
|
||||
}
|
||||
conf_editor_proto.validate().length || window.readOnlyMode ? $('#btn_submit_protoserver').attr('disabled', true) : $('#btn_submit_protoserver').attr('disabled', false);
|
||||
conf_editor_proto.validate().length || window.readOnlyMode ? $('#btn_submit_protoserver').prop('disabled', true) : $('#btn_submit_protoserver').prop('disabled', false);
|
||||
});
|
||||
|
||||
$('#btn_submit_protoserver').off().on('click', function () {
|
||||
@ -151,7 +151,7 @@ $(document).ready(function () {
|
||||
showInputOptionsForKey(conf_editor_forw, "forwarder", "enable", false);
|
||||
$('#forwarderHelpPanelId').hide();
|
||||
}
|
||||
conf_editor_forw.validate().length || window.readOnlyMode ? $('#btn_submit_forwarder').attr('disabled', true) : $('#btn_submit_forwarder').attr('disabled', false);
|
||||
conf_editor_forw.validate().length || window.readOnlyMode ? $('#btn_submit_forwarder').prop('disabled', true) : $('#btn_submit_forwarder').prop('disabled', false);
|
||||
});
|
||||
|
||||
$('#btn_submit_forwarder').off().on('click', function () {
|
||||
@ -204,10 +204,10 @@ $(document).ready(function () {
|
||||
$('#btn_create_tok').off().on('click', function () {
|
||||
requestToken(encodeHTML($('#tok_comment').val()))
|
||||
$('#tok_comment').val("")
|
||||
$('#btn_create_tok').attr('disabled', true)
|
||||
$('#btn_create_tok').prop('disabled', true)
|
||||
});
|
||||
$('#tok_comment').off().on('input', function (e) {
|
||||
(e.currentTarget.value.length >= 10) ? $('#btn_create_tok').attr('disabled', false) : $('#btn_create_tok').attr('disabled', true);
|
||||
(e.currentTarget.value.length >= 10) ? $('#btn_create_tok').prop('disabled', false) : $('#btn_create_tok').prop('disabled', true);
|
||||
if (10 - e.currentTarget.value.length >= 1 && 10 - e.currentTarget.value.length <= 9)
|
||||
$('#tok_chars_needed').html(10 - e.currentTarget.value.length + " " + $.i18n('general_chars_needed'))
|
||||
else
|
||||
@ -230,7 +230,7 @@ $(document).ready(function () {
|
||||
$("#conf_cont_tok").removeAttr('style')
|
||||
}
|
||||
|
||||
$('#root_network_apiAuth').change(function () {
|
||||
$('#root_network_apiAuth').on("change", function () {
|
||||
var state = $(this).is(":checked");
|
||||
checkApiTokenState(state);
|
||||
});
|
||||
|
@ -225,7 +225,7 @@ $(document).ready(function () {
|
||||
$('#componentsbutton').append(d);
|
||||
$(`#${comp_btn_id}`).bootstrapToggle();
|
||||
$(`#${comp_btn_id}`).bootstrapToggle((hyperionEnabled ? "enable" : "disable"));
|
||||
$(`#${comp_btn_id}`).change(e => {
|
||||
$(`#${comp_btn_id}`).on("change", e => {
|
||||
requestSetComponentState(e.currentTarget.id.split('_').pop(), e.currentTarget.checked);
|
||||
});
|
||||
}
|
||||
@ -363,7 +363,7 @@ $(document).ready(function () {
|
||||
}
|
||||
});
|
||||
|
||||
$("#remote_input_img").change(function () {
|
||||
$("#remote_input_img").on("change", function () {
|
||||
readImg(this, function (src, fileName) {
|
||||
lastFileName = fileName;
|
||||
if (src.includes(","))
|
||||
|
@ -14,7 +14,7 @@
|
||||
}, true, true);
|
||||
|
||||
conf_editor.on('change',function() {
|
||||
conf_editor.validate().length || window.readOnlyMode ? $('#btn_submit').attr('disabled', true) : $('#btn_submit').attr('disabled', false);
|
||||
conf_editor.validate().length || window.readOnlyMode ? $('#btn_submit').prop('disabled', true) : $('#btn_submit').prop('disabled', false);
|
||||
});
|
||||
|
||||
$('#btn_submit').off().on('click',function() {
|
||||
|
1
assets/webconfig/js/lib/dialog.min.js
vendored
1
assets/webconfig/js/lib/dialog.min.js
vendored
File diff suppressed because one or more lines are too long
1
assets/webconfig/js/lib/draggable.min.js
vendored
1
assets/webconfig/js/lib/draggable.min.js
vendored
File diff suppressed because one or more lines are too long
1
assets/webconfig/js/lib/gijgo/core.min.js
vendored
Normal file
1
assets/webconfig/js/lib/gijgo/core.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
assets/webconfig/js/lib/gijgo/dialog.min.js
vendored
Normal file
1
assets/webconfig/js/lib/gijgo/dialog.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
assets/webconfig/js/lib/gijgo/draggable.min.js
vendored
Normal file
1
assets/webconfig/js/lib/gijgo/draggable.min.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
gj.draggable={plugins:{}},gj.draggable.config={base:{handle:void 0,vertical:!0,horizontal:!0,containment:void 0}},gj.draggable.methods={init:function(a){var b,c,d=this;return gj.widget.prototype.init.call(this,a,"draggable"),c=this.data(),d.attr("data-draggable","true"),b=gj.draggable.methods.getHandleElement(d),b.on("touchstart mousedown",function(a){var e=gj.core.position(d[0]);d[0].style.top=e.top+"px",d[0].style.left=e.left+"px",d[0].style.position="fixed",d.attr("draggable-dragging",!0),d.removeAttr("draggable-x").removeAttr("draggable-y"),gj.documentManager.subscribeForEvent("touchmove",d.data("guid"),gj.draggable.methods.createMoveHandler(d,b,c)),gj.documentManager.subscribeForEvent("mousemove",d.data("guid"),gj.draggable.methods.createMoveHandler(d,b,c))}),gj.documentManager.subscribeForEvent("mouseup",d.data("guid"),gj.draggable.methods.createUpHandler(d)),gj.documentManager.subscribeForEvent("touchend",d.data("guid"),gj.draggable.methods.createUpHandler(d)),gj.documentManager.subscribeForEvent("touchcancel",d.data("guid"),gj.draggable.methods.createUpHandler(d)),d},getHandleElement:function(a){var b=a.data("handle");return b&&b.length?b:a},createUpHandler:function(a){return function(b){"true"===a.attr("draggable-dragging")&&(a.attr("draggable-dragging",!1),gj.documentManager.unsubscribeForEvent("mousemove",a.data("guid")),gj.documentManager.unsubscribeForEvent("touchmove",a.data("guid")),gj.draggable.events.stop(a,{x:a.mouseX(b),y:a.mouseY(b)}))}},createMoveHandler:function(a,b,c){return function(b){var d,e,f,g,h,i;"true"===a.attr("draggable-dragging")&&(d=Math.round(a.mouseX(b)),e=Math.round(a.mouseY(b)),h=a.attr("draggable-x"),i=a.attr("draggable-y"),h&&i?(f=c.horizontal?d-parseInt(h,10):0,g=c.vertical?e-parseInt(i,10):0,gj.draggable.methods.move(a[0],c,f,g,d,e)):gj.draggable.events.start(a,d,e),a.attr("draggable-x",d),a.attr("draggable-y",e))}},move:function(a,b,c,d,e,f){var g,h,i,j=gj.core.position(a),k=j.top+d,l=j.left+c;b.containment&&(g=gj.core.position(b.containment),h=g.top+gj.core.height(b.containment)-gj.core.height(a),i=g.left+gj.core.width(b.containment)-gj.core.width(a),k>g.top&&k<h?(g.top>=f||g.bottom<=f)&&(k=j.top):k=k<=g.top?g.top+1:h-1,l>g.left&&l<i?(g.left>=e||g.right<=e)&&(l=j.left):l=l<=g.left?g.left+1:i-1),!1!==gj.draggable.events.drag($(a),l,k,e,f)&&(a.style.top=k+"px",a.style.left=l+"px")},destroy:function(a){return"true"===a.attr("data-draggable")&&(gj.documentManager.unsubscribeForEvent("mouseup",a.data("guid")),a.removeData(),a.removeAttr("data-guid").removeAttr("data-type").removeAttr("data-draggable"),a.removeAttr("draggable-x").removeAttr("draggable-y").removeAttr("draggable-dragging"),a[0].style.top="",a[0].style.left="",a[0].style.position="",a.off("drag").off("start").off("stop"),gj.draggable.methods.getHandleElement(a).off("mousedown")),a}},gj.draggable.events={drag:function(a,b,c,d,e){return a.triggerHandler("drag",[{left:b,top:c},{x:d,y:e}])},start:function(a,b,c){a.triggerHandler("start",[{x:b,y:c}])},stop:function(a,b){a.triggerHandler("stop",[b])}},gj.draggable.widget=function(a,b){var c=this,d=gj.draggable.methods;return a.destroy||(c.destroy=function(){return d.destroy(this)}),$.extend(a,c),"true"!==a.attr("data-draggable")&&d.init.call(a,b),a},gj.draggable.widget.prototype=new gj.widget,gj.draggable.widget.constructor=gj.draggable.widget,function(a){a.fn.draggable=function(a){var b;if(this&&this.length){if("object"!=typeof a&&a){if(b=new gj.draggable.widget(this,null),b[a])return b[a].apply(this,Array.prototype.slice.call(arguments,1));throw"Method "+a+" does not exist."}return new gj.draggable.widget(this,a)}}}(jQuery);
|
5
assets/webconfig/js/lib/jquery.min.js
vendored
5
assets/webconfig/js/lib/jquery.min.js
vendored
File diff suppressed because one or more lines are too long
10881
assets/webconfig/js/lib/jquery/dev/jquery-3.6.0.js
vendored
Normal file
10881
assets/webconfig/js/lib/jquery/dev/jquery-3.6.0.js
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
assets/webconfig/js/lib/jquery/dev/jquery-3.6.0.min.map
Normal file
1
assets/webconfig/js/lib/jquery/dev/jquery-3.6.0.min.map
Normal file
File diff suppressed because one or more lines are too long
859
assets/webconfig/js/lib/jquery/dev/jquery-migrate-3.3.2.js
Executable file
859
assets/webconfig/js/lib/jquery/dev/jquery-migrate-3.3.2.js
Executable file
@ -0,0 +1,859 @@
|
||||
/*!
|
||||
* jQuery Migrate - v3.3.2 - 2020-11-17T23:22Z
|
||||
* Copyright OpenJS Foundation and other contributors
|
||||
*/
|
||||
( function( factory ) {
|
||||
"use strict";
|
||||
|
||||
if ( typeof define === "function" && define.amd ) {
|
||||
|
||||
// AMD. Register as an anonymous module.
|
||||
define( [ "jquery" ], function( jQuery ) {
|
||||
return factory( jQuery, window );
|
||||
} );
|
||||
} else if ( typeof module === "object" && module.exports ) {
|
||||
|
||||
// Node/CommonJS
|
||||
// eslint-disable-next-line no-undef
|
||||
module.exports = factory( require( "jquery" ), window );
|
||||
} else {
|
||||
|
||||
// Browser globals
|
||||
factory( jQuery, window );
|
||||
}
|
||||
} )( function( jQuery, window ) {
|
||||
"use strict";
|
||||
|
||||
jQuery.migrateVersion = "3.3.2";
|
||||
|
||||
// Returns 0 if v1 == v2, -1 if v1 < v2, 1 if v1 > v2
|
||||
function compareVersions( v1, v2 ) {
|
||||
var i,
|
||||
rVersionParts = /^(\d+)\.(\d+)\.(\d+)/,
|
||||
v1p = rVersionParts.exec( v1 ) || [ ],
|
||||
v2p = rVersionParts.exec( v2 ) || [ ];
|
||||
|
||||
for ( i = 1; i <= 3; i++ ) {
|
||||
if ( +v1p[ i ] > +v2p[ i ] ) {
|
||||
return 1;
|
||||
}
|
||||
if ( +v1p[ i ] < +v2p[ i ] ) {
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
function jQueryVersionSince( version ) {
|
||||
return compareVersions( jQuery.fn.jquery, version ) >= 0;
|
||||
}
|
||||
|
||||
( function() {
|
||||
|
||||
// Support: IE9 only
|
||||
// IE9 only creates console object when dev tools are first opened
|
||||
// IE9 console is a host object, callable but doesn't have .apply()
|
||||
if ( !window.console || !window.console.log ) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Need jQuery 3.0.0+ and no older Migrate loaded
|
||||
if ( !jQuery || !jQueryVersionSince( "3.0.0" ) ) {
|
||||
window.console.log( "JQMIGRATE: jQuery 3.0.0+ REQUIRED" );
|
||||
}
|
||||
if ( jQuery.migrateWarnings ) {
|
||||
window.console.log( "JQMIGRATE: Migrate plugin loaded multiple times" );
|
||||
}
|
||||
|
||||
// Show a message on the console so devs know we're active
|
||||
window.console.log( "JQMIGRATE: Migrate is installed" +
|
||||
( jQuery.migrateMute ? "" : " with logging active" ) +
|
||||
", version " + jQuery.migrateVersion );
|
||||
|
||||
} )();
|
||||
|
||||
var warnedAbout = {};
|
||||
|
||||
// By default each warning is only reported once.
|
||||
jQuery.migrateDeduplicateWarnings = true;
|
||||
|
||||
// List of warnings already given; public read only
|
||||
jQuery.migrateWarnings = [];
|
||||
|
||||
// Set to false to disable traces that appear with warnings
|
||||
if ( jQuery.migrateTrace === undefined ) {
|
||||
jQuery.migrateTrace = true;
|
||||
}
|
||||
|
||||
// Forget any warnings we've already given; public
|
||||
jQuery.migrateReset = function() {
|
||||
warnedAbout = {};
|
||||
jQuery.migrateWarnings.length = 0;
|
||||
};
|
||||
|
||||
function migrateWarn( msg ) {
|
||||
var console = window.console;
|
||||
if ( !jQuery.migrateDeduplicateWarnings || !warnedAbout[ msg ] ) {
|
||||
warnedAbout[ msg ] = true;
|
||||
jQuery.migrateWarnings.push( msg );
|
||||
if ( console && console.warn && !jQuery.migrateMute ) {
|
||||
console.warn( "JQMIGRATE: " + msg );
|
||||
if ( jQuery.migrateTrace && console.trace ) {
|
||||
console.trace();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function migrateWarnProp( obj, prop, value, msg ) {
|
||||
Object.defineProperty( obj, prop, {
|
||||
configurable: true,
|
||||
enumerable: true,
|
||||
get: function() {
|
||||
migrateWarn( msg );
|
||||
return value;
|
||||
},
|
||||
set: function( newValue ) {
|
||||
migrateWarn( msg );
|
||||
value = newValue;
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
function migrateWarnFunc( obj, prop, newFunc, msg ) {
|
||||
obj[ prop ] = function() {
|
||||
migrateWarn( msg );
|
||||
return newFunc.apply( this, arguments );
|
||||
};
|
||||
}
|
||||
|
||||
if ( window.document.compatMode === "BackCompat" ) {
|
||||
|
||||
// JQuery has never supported or tested Quirks Mode
|
||||
migrateWarn( "jQuery is not compatible with Quirks Mode" );
|
||||
}
|
||||
|
||||
var findProp,
|
||||
class2type = {},
|
||||
oldInit = jQuery.fn.init,
|
||||
oldFind = jQuery.find,
|
||||
|
||||
rattrHashTest = /\[(\s*[-\w]+\s*)([~|^$*]?=)\s*([-\w#]*?#[-\w#]*)\s*\]/,
|
||||
rattrHashGlob = /\[(\s*[-\w]+\s*)([~|^$*]?=)\s*([-\w#]*?#[-\w#]*)\s*\]/g,
|
||||
|
||||
// Support: Android <=4.0 only
|
||||
// Make sure we trim BOM and NBSP
|
||||
rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;
|
||||
|
||||
jQuery.fn.init = function( arg1 ) {
|
||||
var args = Array.prototype.slice.call( arguments );
|
||||
|
||||
if ( typeof arg1 === "string" && arg1 === "#" ) {
|
||||
|
||||
// JQuery( "#" ) is a bogus ID selector, but it returned an empty set before jQuery 3.0
|
||||
migrateWarn( "jQuery( '#' ) is not a valid selector" );
|
||||
args[ 0 ] = [];
|
||||
}
|
||||
|
||||
return oldInit.apply( this, args );
|
||||
};
|
||||
jQuery.fn.init.prototype = jQuery.fn;
|
||||
|
||||
jQuery.find = function( selector ) {
|
||||
var args = Array.prototype.slice.call( arguments );
|
||||
|
||||
// Support: PhantomJS 1.x
|
||||
// String#match fails to match when used with a //g RegExp, only on some strings
|
||||
if ( typeof selector === "string" && rattrHashTest.test( selector ) ) {
|
||||
|
||||
// The nonstandard and undocumented unquoted-hash was removed in jQuery 1.12.0
|
||||
// First see if qS thinks it's a valid selector, if so avoid a false positive
|
||||
try {
|
||||
window.document.querySelector( selector );
|
||||
} catch ( err1 ) {
|
||||
|
||||
// Didn't *look* valid to qSA, warn and try quoting what we think is the value
|
||||
selector = selector.replace( rattrHashGlob, function( _, attr, op, value ) {
|
||||
return "[" + attr + op + "\"" + value + "\"]";
|
||||
} );
|
||||
|
||||
// If the regexp *may* have created an invalid selector, don't update it
|
||||
// Note that there may be false alarms if selector uses jQuery extensions
|
||||
try {
|
||||
window.document.querySelector( selector );
|
||||
migrateWarn( "Attribute selector with '#' must be quoted: " + args[ 0 ] );
|
||||
args[ 0 ] = selector;
|
||||
} catch ( err2 ) {
|
||||
migrateWarn( "Attribute selector with '#' was not fixed: " + args[ 0 ] );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return oldFind.apply( this, args );
|
||||
};
|
||||
|
||||
// Copy properties attached to original jQuery.find method (e.g. .attr, .isXML)
|
||||
for ( findProp in oldFind ) {
|
||||
if ( Object.prototype.hasOwnProperty.call( oldFind, findProp ) ) {
|
||||
jQuery.find[ findProp ] = oldFind[ findProp ];
|
||||
}
|
||||
}
|
||||
|
||||
// The number of elements contained in the matched element set
|
||||
migrateWarnFunc( jQuery.fn, "size", function() {
|
||||
return this.length;
|
||||
},
|
||||
"jQuery.fn.size() is deprecated and removed; use the .length property" );
|
||||
|
||||
migrateWarnFunc( jQuery, "parseJSON", function() {
|
||||
return JSON.parse.apply( null, arguments );
|
||||
},
|
||||
"jQuery.parseJSON is deprecated; use JSON.parse" );
|
||||
|
||||
migrateWarnFunc( jQuery, "holdReady", jQuery.holdReady,
|
||||
"jQuery.holdReady is deprecated" );
|
||||
|
||||
migrateWarnFunc( jQuery, "unique", jQuery.uniqueSort,
|
||||
"jQuery.unique is deprecated; use jQuery.uniqueSort" );
|
||||
|
||||
// Now jQuery.expr.pseudos is the standard incantation
|
||||
migrateWarnProp( jQuery.expr, "filters", jQuery.expr.pseudos,
|
||||
"jQuery.expr.filters is deprecated; use jQuery.expr.pseudos" );
|
||||
migrateWarnProp( jQuery.expr, ":", jQuery.expr.pseudos,
|
||||
"jQuery.expr[':'] is deprecated; use jQuery.expr.pseudos" );
|
||||
|
||||
// Prior to jQuery 3.1.1 there were internal refs so we don't warn there
|
||||
if ( jQueryVersionSince( "3.1.1" ) ) {
|
||||
migrateWarnFunc( jQuery, "trim", function( text ) {
|
||||
return text == null ?
|
||||
"" :
|
||||
( text + "" ).replace( rtrim, "" );
|
||||
},
|
||||
"jQuery.trim is deprecated; use String.prototype.trim" );
|
||||
}
|
||||
|
||||
// Prior to jQuery 3.2 there were internal refs so we don't warn there
|
||||
if ( jQueryVersionSince( "3.2.0" ) ) {
|
||||
migrateWarnFunc( jQuery, "nodeName", function( elem, name ) {
|
||||
return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();
|
||||
},
|
||||
"jQuery.nodeName is deprecated" );
|
||||
|
||||
migrateWarnFunc( jQuery, "isArray", Array.isArray,
|
||||
"jQuery.isArray is deprecated; use Array.isArray"
|
||||
);
|
||||
}
|
||||
|
||||
if ( jQueryVersionSince( "3.3.0" ) ) {
|
||||
|
||||
migrateWarnFunc( jQuery, "isNumeric", function( obj ) {
|
||||
|
||||
// As of jQuery 3.0, isNumeric is limited to
|
||||
// strings and numbers (primitives or objects)
|
||||
// that can be coerced to finite numbers (gh-2662)
|
||||
var type = typeof obj;
|
||||
return ( type === "number" || type === "string" ) &&
|
||||
|
||||
// parseFloat NaNs numeric-cast false positives ("")
|
||||
// ...but misinterprets leading-number strings, e.g. hex literals ("0x...")
|
||||
// subtraction forces infinities to NaN
|
||||
!isNaN( obj - parseFloat( obj ) );
|
||||
},
|
||||
"jQuery.isNumeric() is deprecated"
|
||||
);
|
||||
|
||||
// Populate the class2type map
|
||||
jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".
|
||||
split( " " ),
|
||||
function( _, name ) {
|
||||
class2type[ "[object " + name + "]" ] = name.toLowerCase();
|
||||
} );
|
||||
|
||||
migrateWarnFunc( jQuery, "type", function( obj ) {
|
||||
if ( obj == null ) {
|
||||
return obj + "";
|
||||
}
|
||||
|
||||
// Support: Android <=2.3 only (functionish RegExp)
|
||||
return typeof obj === "object" || typeof obj === "function" ?
|
||||
class2type[ Object.prototype.toString.call( obj ) ] || "object" :
|
||||
typeof obj;
|
||||
},
|
||||
"jQuery.type is deprecated" );
|
||||
|
||||
migrateWarnFunc( jQuery, "isFunction",
|
||||
function( obj ) {
|
||||
return typeof obj === "function";
|
||||
},
|
||||
"jQuery.isFunction() is deprecated" );
|
||||
|
||||
migrateWarnFunc( jQuery, "isWindow",
|
||||
function( obj ) {
|
||||
return obj != null && obj === obj.window;
|
||||
},
|
||||
"jQuery.isWindow() is deprecated"
|
||||
);
|
||||
}
|
||||
|
||||
// Support jQuery slim which excludes the ajax module
|
||||
if ( jQuery.ajax ) {
|
||||
|
||||
var oldAjax = jQuery.ajax,
|
||||
rjsonp = /(=)\?(?=&|$)|\?\?/;
|
||||
|
||||
jQuery.ajax = function( ) {
|
||||
var jQXHR = oldAjax.apply( this, arguments );
|
||||
|
||||
// Be sure we got a jQXHR (e.g., not sync)
|
||||
if ( jQXHR.promise ) {
|
||||
migrateWarnFunc( jQXHR, "success", jQXHR.done,
|
||||
"jQXHR.success is deprecated and removed" );
|
||||
migrateWarnFunc( jQXHR, "error", jQXHR.fail,
|
||||
"jQXHR.error is deprecated and removed" );
|
||||
migrateWarnFunc( jQXHR, "complete", jQXHR.always,
|
||||
"jQXHR.complete is deprecated and removed" );
|
||||
}
|
||||
|
||||
return jQXHR;
|
||||
};
|
||||
|
||||
// Only trigger the logic in jQuery <4 as the JSON-to-JSONP auto-promotion
|
||||
// behavior is gone in jQuery 4.0 and as it has security implications, we don't
|
||||
// want to restore the legacy behavior.
|
||||
if ( !jQueryVersionSince( "4.0.0" ) ) {
|
||||
|
||||
// Register this prefilter before the jQuery one. Otherwise, a promoted
|
||||
// request is transformed into one with the script dataType and we can't
|
||||
// catch it anymore.
|
||||
jQuery.ajaxPrefilter( "+json", function( s ) {
|
||||
|
||||
// Warn if JSON-to-JSONP auto-promotion happens.
|
||||
if ( s.jsonp !== false && ( rjsonp.test( s.url ) ||
|
||||
typeof s.data === "string" &&
|
||||
( s.contentType || "" )
|
||||
.indexOf( "application/x-www-form-urlencoded" ) === 0 &&
|
||||
rjsonp.test( s.data )
|
||||
) ) {
|
||||
migrateWarn( "JSON-to-JSONP auto-promotion is deprecated" );
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
var oldRemoveAttr = jQuery.fn.removeAttr,
|
||||
oldToggleClass = jQuery.fn.toggleClass,
|
||||
rmatchNonSpace = /\S+/g;
|
||||
|
||||
jQuery.fn.removeAttr = function( name ) {
|
||||
var self = this;
|
||||
|
||||
jQuery.each( name.match( rmatchNonSpace ), function( _i, attr ) {
|
||||
if ( jQuery.expr.match.bool.test( attr ) ) {
|
||||
migrateWarn( "jQuery.fn.removeAttr no longer sets boolean properties: " + attr );
|
||||
self.prop( attr, false );
|
||||
}
|
||||
} );
|
||||
|
||||
return oldRemoveAttr.apply( this, arguments );
|
||||
};
|
||||
|
||||
jQuery.fn.toggleClass = function( state ) {
|
||||
|
||||
// Only deprecating no-args or single boolean arg
|
||||
if ( state !== undefined && typeof state !== "boolean" ) {
|
||||
return oldToggleClass.apply( this, arguments );
|
||||
}
|
||||
|
||||
migrateWarn( "jQuery.fn.toggleClass( boolean ) is deprecated" );
|
||||
|
||||
// Toggle entire class name of each element
|
||||
return this.each( function() {
|
||||
var className = this.getAttribute && this.getAttribute( "class" ) || "";
|
||||
|
||||
if ( className ) {
|
||||
jQuery.data( this, "__className__", className );
|
||||
}
|
||||
|
||||
// If the element has a class name or if we're passed `false`,
|
||||
// then remove the whole classname (if there was one, the above saved it).
|
||||
// Otherwise bring back whatever was previously saved (if anything),
|
||||
// falling back to the empty string if nothing was stored.
|
||||
if ( this.setAttribute ) {
|
||||
this.setAttribute( "class",
|
||||
className || state === false ?
|
||||
"" :
|
||||
jQuery.data( this, "__className__" ) || ""
|
||||
);
|
||||
}
|
||||
} );
|
||||
};
|
||||
|
||||
function camelCase( string ) {
|
||||
return string.replace( /-([a-z])/g, function( _, letter ) {
|
||||
return letter.toUpperCase();
|
||||
} );
|
||||
}
|
||||
|
||||
var oldFnCss,
|
||||
internalSwapCall = false,
|
||||
ralphaStart = /^[a-z]/,
|
||||
|
||||
// The regex visualized:
|
||||
//
|
||||
// /----------\
|
||||
// | | /-------\
|
||||
// | / Top \ | | |
|
||||
// /--- Border ---+-| Right |-+---+- Width -+---\
|
||||
// | | Bottom | |
|
||||
// | \ Left / |
|
||||
// | |
|
||||
// | /----------\ |
|
||||
// | /-------------\ | | |- END
|
||||
// | | | | / Top \ | |
|
||||
// | | / Margin \ | | | Right | | |
|
||||
// |---------+-| |-+---+-| Bottom |-+----|
|
||||
// | \ Padding / \ Left / |
|
||||
// BEGIN -| |
|
||||
// | /---------\ |
|
||||
// | | | |
|
||||
// | | / Min \ | / Width \ |
|
||||
// \--------------+-| |-+---| |---/
|
||||
// \ Max / \ Height /
|
||||
rautoPx = /^(?:Border(?:Top|Right|Bottom|Left)?(?:Width|)|(?:Margin|Padding)?(?:Top|Right|Bottom|Left)?|(?:Min|Max)?(?:Width|Height))$/;
|
||||
|
||||
// If this version of jQuery has .swap(), don't false-alarm on internal uses
|
||||
if ( jQuery.swap ) {
|
||||
jQuery.each( [ "height", "width", "reliableMarginRight" ], function( _, name ) {
|
||||
var oldHook = jQuery.cssHooks[ name ] && jQuery.cssHooks[ name ].get;
|
||||
|
||||
if ( oldHook ) {
|
||||
jQuery.cssHooks[ name ].get = function() {
|
||||
var ret;
|
||||
|
||||
internalSwapCall = true;
|
||||
ret = oldHook.apply( this, arguments );
|
||||
internalSwapCall = false;
|
||||
return ret;
|
||||
};
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
jQuery.swap = function( elem, options, callback, args ) {
|
||||
var ret, name,
|
||||
old = {};
|
||||
|
||||
if ( !internalSwapCall ) {
|
||||
migrateWarn( "jQuery.swap() is undocumented and deprecated" );
|
||||
}
|
||||
|
||||
// Remember the old values, and insert the new ones
|
||||
for ( name in options ) {
|
||||
old[ name ] = elem.style[ name ];
|
||||
elem.style[ name ] = options[ name ];
|
||||
}
|
||||
|
||||
ret = callback.apply( elem, args || [] );
|
||||
|
||||
// Revert the old values
|
||||
for ( name in options ) {
|
||||
elem.style[ name ] = old[ name ];
|
||||
}
|
||||
|
||||
return ret;
|
||||
};
|
||||
|
||||
if ( jQueryVersionSince( "3.4.0" ) && typeof Proxy !== "undefined" ) {
|
||||
|
||||
jQuery.cssProps = new Proxy( jQuery.cssProps || {}, {
|
||||
set: function() {
|
||||
migrateWarn( "JQMIGRATE: jQuery.cssProps is deprecated" );
|
||||
return Reflect.set.apply( this, arguments );
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
// Create a dummy jQuery.cssNumber if missing. It won't be used by jQuery but
|
||||
// it will prevent code adding new keys to it unconditionally from crashing.
|
||||
if ( !jQuery.cssNumber ) {
|
||||
jQuery.cssNumber = {};
|
||||
}
|
||||
|
||||
function isAutoPx( prop ) {
|
||||
|
||||
// The first test is used to ensure that:
|
||||
// 1. The prop starts with a lowercase letter (as we uppercase it for the second regex).
|
||||
// 2. The prop is not empty.
|
||||
return ralphaStart.test( prop ) &&
|
||||
rautoPx.test( prop[ 0 ].toUpperCase() + prop.slice( 1 ) );
|
||||
}
|
||||
|
||||
oldFnCss = jQuery.fn.css;
|
||||
|
||||
jQuery.fn.css = function( name, value ) {
|
||||
var camelName,
|
||||
origThis = this;
|
||||
if ( name && typeof name === "object" && !Array.isArray( name ) ) {
|
||||
jQuery.each( name, function( n, v ) {
|
||||
jQuery.fn.css.call( origThis, n, v );
|
||||
} );
|
||||
return this;
|
||||
}
|
||||
if ( typeof value === "number" ) {
|
||||
camelName = camelCase( name );
|
||||
if ( !isAutoPx( camelName ) && !jQuery.cssNumber[ camelName ] ) {
|
||||
migrateWarn( "Number-typed values are deprecated for jQuery.fn.css( \"" +
|
||||
name + "\", value )" );
|
||||
}
|
||||
}
|
||||
|
||||
return oldFnCss.apply( this, arguments );
|
||||
};
|
||||
|
||||
var oldData = jQuery.data;
|
||||
|
||||
jQuery.data = function( elem, name, value ) {
|
||||
var curData, sameKeys, key;
|
||||
|
||||
// Name can be an object, and each entry in the object is meant to be set as data
|
||||
if ( name && typeof name === "object" && arguments.length === 2 ) {
|
||||
curData = jQuery.hasData( elem ) && oldData.call( this, elem );
|
||||
sameKeys = {};
|
||||
for ( key in name ) {
|
||||
if ( key !== camelCase( key ) ) {
|
||||
migrateWarn( "jQuery.data() always sets/gets camelCased names: " + key );
|
||||
curData[ key ] = name[ key ];
|
||||
} else {
|
||||
sameKeys[ key ] = name[ key ];
|
||||
}
|
||||
}
|
||||
|
||||
oldData.call( this, elem, sameKeys );
|
||||
|
||||
return name;
|
||||
}
|
||||
|
||||
// If the name is transformed, look for the un-transformed name in the data object
|
||||
if ( name && typeof name === "string" && name !== camelCase( name ) ) {
|
||||
curData = jQuery.hasData( elem ) && oldData.call( this, elem );
|
||||
if ( curData && name in curData ) {
|
||||
migrateWarn( "jQuery.data() always sets/gets camelCased names: " + name );
|
||||
if ( arguments.length > 2 ) {
|
||||
curData[ name ] = value;
|
||||
}
|
||||
return curData[ name ];
|
||||
}
|
||||
}
|
||||
|
||||
return oldData.apply( this, arguments );
|
||||
};
|
||||
|
||||
// Support jQuery slim which excludes the effects module
|
||||
if ( jQuery.fx ) {
|
||||
|
||||
var intervalValue, intervalMsg,
|
||||
oldTweenRun = jQuery.Tween.prototype.run,
|
||||
linearEasing = function( pct ) {
|
||||
return pct;
|
||||
};
|
||||
|
||||
jQuery.Tween.prototype.run = function( ) {
|
||||
if ( jQuery.easing[ this.easing ].length > 1 ) {
|
||||
migrateWarn(
|
||||
"'jQuery.easing." + this.easing.toString() + "' should use only one argument"
|
||||
);
|
||||
|
||||
jQuery.easing[ this.easing ] = linearEasing;
|
||||
}
|
||||
|
||||
oldTweenRun.apply( this, arguments );
|
||||
};
|
||||
|
||||
intervalValue = jQuery.fx.interval || 13;
|
||||
intervalMsg = "jQuery.fx.interval is deprecated";
|
||||
|
||||
// Support: IE9, Android <=4.4
|
||||
// Avoid false positives on browsers that lack rAF
|
||||
// Don't warn if document is hidden, jQuery uses setTimeout (#292)
|
||||
if ( window.requestAnimationFrame ) {
|
||||
Object.defineProperty( jQuery.fx, "interval", {
|
||||
configurable: true,
|
||||
enumerable: true,
|
||||
get: function() {
|
||||
if ( !window.document.hidden ) {
|
||||
migrateWarn( intervalMsg );
|
||||
}
|
||||
return intervalValue;
|
||||
},
|
||||
set: function( newValue ) {
|
||||
migrateWarn( intervalMsg );
|
||||
intervalValue = newValue;
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
var oldLoad = jQuery.fn.load,
|
||||
oldEventAdd = jQuery.event.add,
|
||||
originalFix = jQuery.event.fix;
|
||||
|
||||
jQuery.event.props = [];
|
||||
jQuery.event.fixHooks = {};
|
||||
|
||||
migrateWarnProp( jQuery.event.props, "concat", jQuery.event.props.concat,
|
||||
"jQuery.event.props.concat() is deprecated and removed" );
|
||||
|
||||
jQuery.event.fix = function( originalEvent ) {
|
||||
var event,
|
||||
type = originalEvent.type,
|
||||
fixHook = this.fixHooks[ type ],
|
||||
props = jQuery.event.props;
|
||||
|
||||
if ( props.length ) {
|
||||
migrateWarn( "jQuery.event.props are deprecated and removed: " + props.join() );
|
||||
while ( props.length ) {
|
||||
jQuery.event.addProp( props.pop() );
|
||||
}
|
||||
}
|
||||
|
||||
if ( fixHook && !fixHook._migrated_ ) {
|
||||
fixHook._migrated_ = true;
|
||||
migrateWarn( "jQuery.event.fixHooks are deprecated and removed: " + type );
|
||||
if ( ( props = fixHook.props ) && props.length ) {
|
||||
while ( props.length ) {
|
||||
jQuery.event.addProp( props.pop() );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
event = originalFix.call( this, originalEvent );
|
||||
|
||||
return fixHook && fixHook.filter ? fixHook.filter( event, originalEvent ) : event;
|
||||
};
|
||||
|
||||
jQuery.event.add = function( elem, types ) {
|
||||
|
||||
// This misses the multiple-types case but that seems awfully rare
|
||||
if ( elem === window && types === "load" && window.document.readyState === "complete" ) {
|
||||
migrateWarn( "jQuery(window).on('load'...) called after load event occurred" );
|
||||
}
|
||||
return oldEventAdd.apply( this, arguments );
|
||||
};
|
||||
|
||||
jQuery.each( [ "load", "unload", "error" ], function( _, name ) {
|
||||
|
||||
jQuery.fn[ name ] = function() {
|
||||
var args = Array.prototype.slice.call( arguments, 0 );
|
||||
|
||||
// If this is an ajax load() the first arg should be the string URL;
|
||||
// technically this could also be the "Anything" arg of the event .load()
|
||||
// which just goes to show why this dumb signature has been deprecated!
|
||||
// jQuery custom builds that exclude the Ajax module justifiably die here.
|
||||
if ( name === "load" && typeof args[ 0 ] === "string" ) {
|
||||
return oldLoad.apply( this, args );
|
||||
}
|
||||
|
||||
migrateWarn( "jQuery.fn." + name + "() is deprecated" );
|
||||
|
||||
args.splice( 0, 0, name );
|
||||
if ( arguments.length ) {
|
||||
return this.on.apply( this, args );
|
||||
}
|
||||
|
||||
// Use .triggerHandler here because:
|
||||
// - load and unload events don't need to bubble, only applied to window or image
|
||||
// - error event should not bubble to window, although it does pre-1.7
|
||||
// See http://bugs.jquery.com/ticket/11820
|
||||
this.triggerHandler.apply( this, args );
|
||||
return this;
|
||||
};
|
||||
|
||||
} );
|
||||
|
||||
jQuery.each( ( "blur focus focusin focusout resize scroll click dblclick " +
|
||||
"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
|
||||
"change select submit keydown keypress keyup contextmenu" ).split( " " ),
|
||||
function( _i, name ) {
|
||||
|
||||
// Handle event binding
|
||||
jQuery.fn[ name ] = function( data, fn ) {
|
||||
migrateWarn( "jQuery.fn." + name + "() event shorthand is deprecated" );
|
||||
return arguments.length > 0 ?
|
||||
this.on( name, null, data, fn ) :
|
||||
this.trigger( name );
|
||||
};
|
||||
} );
|
||||
|
||||
// Trigger "ready" event only once, on document ready
|
||||
jQuery( function() {
|
||||
jQuery( window.document ).triggerHandler( "ready" );
|
||||
} );
|
||||
|
||||
jQuery.event.special.ready = {
|
||||
setup: function() {
|
||||
if ( this === window.document ) {
|
||||
migrateWarn( "'ready' event is deprecated" );
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
jQuery.fn.extend( {
|
||||
|
||||
bind: function( types, data, fn ) {
|
||||
migrateWarn( "jQuery.fn.bind() is deprecated" );
|
||||
return this.on( types, null, data, fn );
|
||||
},
|
||||
unbind: function( types, fn ) {
|
||||
migrateWarn( "jQuery.fn.unbind() is deprecated" );
|
||||
return this.off( types, null, fn );
|
||||
},
|
||||
delegate: function( selector, types, data, fn ) {
|
||||
migrateWarn( "jQuery.fn.delegate() is deprecated" );
|
||||
return this.on( types, selector, data, fn );
|
||||
},
|
||||
undelegate: function( selector, types, fn ) {
|
||||
migrateWarn( "jQuery.fn.undelegate() is deprecated" );
|
||||
return arguments.length === 1 ?
|
||||
this.off( selector, "**" ) :
|
||||
this.off( types, selector || "**", fn );
|
||||
},
|
||||
hover: function( fnOver, fnOut ) {
|
||||
migrateWarn( "jQuery.fn.hover() is deprecated" );
|
||||
return this.on( "mouseenter", fnOver ).on( "mouseleave", fnOut || fnOver );
|
||||
}
|
||||
} );
|
||||
|
||||
var rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,
|
||||
origHtmlPrefilter = jQuery.htmlPrefilter,
|
||||
makeMarkup = function( html ) {
|
||||
var doc = window.document.implementation.createHTMLDocument( "" );
|
||||
doc.body.innerHTML = html;
|
||||
return doc.body && doc.body.innerHTML;
|
||||
},
|
||||
warnIfChanged = function( html ) {
|
||||
var changed = html.replace( rxhtmlTag, "<$1></$2>" );
|
||||
if ( changed !== html && makeMarkup( html ) !== makeMarkup( changed ) ) {
|
||||
migrateWarn( "HTML tags must be properly nested and closed: " + html );
|
||||
}
|
||||
};
|
||||
|
||||
jQuery.UNSAFE_restoreLegacyHtmlPrefilter = function() {
|
||||
jQuery.htmlPrefilter = function( html ) {
|
||||
warnIfChanged( html );
|
||||
return html.replace( rxhtmlTag, "<$1></$2>" );
|
||||
};
|
||||
};
|
||||
|
||||
jQuery.htmlPrefilter = function( html ) {
|
||||
warnIfChanged( html );
|
||||
return origHtmlPrefilter( html );
|
||||
};
|
||||
|
||||
var oldOffset = jQuery.fn.offset;
|
||||
|
||||
jQuery.fn.offset = function() {
|
||||
var elem = this[ 0 ];
|
||||
|
||||
if ( elem && ( !elem.nodeType || !elem.getBoundingClientRect ) ) {
|
||||
migrateWarn( "jQuery.fn.offset() requires a valid DOM element" );
|
||||
return arguments.length ? this : undefined;
|
||||
}
|
||||
|
||||
return oldOffset.apply( this, arguments );
|
||||
};
|
||||
|
||||
// Support jQuery slim which excludes the ajax module
|
||||
// The jQuery.param patch is about respecting `jQuery.ajaxSettings.traditional`
|
||||
// so it doesn't make sense for the slim build.
|
||||
if ( jQuery.ajax ) {
|
||||
|
||||
var oldParam = jQuery.param;
|
||||
|
||||
jQuery.param = function( data, traditional ) {
|
||||
var ajaxTraditional = jQuery.ajaxSettings && jQuery.ajaxSettings.traditional;
|
||||
|
||||
if ( traditional === undefined && ajaxTraditional ) {
|
||||
|
||||
migrateWarn( "jQuery.param() no longer uses jQuery.ajaxSettings.traditional" );
|
||||
traditional = ajaxTraditional;
|
||||
}
|
||||
|
||||
return oldParam.call( this, data, traditional );
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
var oldSelf = jQuery.fn.andSelf || jQuery.fn.addBack;
|
||||
|
||||
jQuery.fn.andSelf = function() {
|
||||
migrateWarn( "jQuery.fn.andSelf() is deprecated and removed, use jQuery.fn.addBack()" );
|
||||
return oldSelf.apply( this, arguments );
|
||||
};
|
||||
|
||||
// Support jQuery slim which excludes the deferred module in jQuery 4.0+
|
||||
if ( jQuery.Deferred ) {
|
||||
|
||||
var oldDeferred = jQuery.Deferred,
|
||||
tuples = [
|
||||
|
||||
// Action, add listener, callbacks, .then handlers, final state
|
||||
[ "resolve", "done", jQuery.Callbacks( "once memory" ),
|
||||
jQuery.Callbacks( "once memory" ), "resolved" ],
|
||||
[ "reject", "fail", jQuery.Callbacks( "once memory" ),
|
||||
jQuery.Callbacks( "once memory" ), "rejected" ],
|
||||
[ "notify", "progress", jQuery.Callbacks( "memory" ),
|
||||
jQuery.Callbacks( "memory" ) ]
|
||||
];
|
||||
|
||||
jQuery.Deferred = function( func ) {
|
||||
var deferred = oldDeferred(),
|
||||
promise = deferred.promise();
|
||||
|
||||
deferred.pipe = promise.pipe = function( /* fnDone, fnFail, fnProgress */ ) {
|
||||
var fns = arguments;
|
||||
|
||||
migrateWarn( "deferred.pipe() is deprecated" );
|
||||
|
||||
return jQuery.Deferred( function( newDefer ) {
|
||||
jQuery.each( tuples, function( i, tuple ) {
|
||||
var fn = typeof fns[ i ] === "function" && fns[ i ];
|
||||
|
||||
// Deferred.done(function() { bind to newDefer or newDefer.resolve })
|
||||
// deferred.fail(function() { bind to newDefer or newDefer.reject })
|
||||
// deferred.progress(function() { bind to newDefer or newDefer.notify })
|
||||
deferred[ tuple[ 1 ] ]( function() {
|
||||
var returned = fn && fn.apply( this, arguments );
|
||||
if ( returned && typeof returned.promise === "function" ) {
|
||||
returned.promise()
|
||||
.done( newDefer.resolve )
|
||||
.fail( newDefer.reject )
|
||||
.progress( newDefer.notify );
|
||||
} else {
|
||||
newDefer[ tuple[ 0 ] + "With" ](
|
||||
this === promise ? newDefer.promise() : this,
|
||||
fn ? [ returned ] : arguments
|
||||
);
|
||||
}
|
||||
} );
|
||||
} );
|
||||
fns = null;
|
||||
} ).promise();
|
||||
|
||||
};
|
||||
|
||||
if ( func ) {
|
||||
func.call( deferred, deferred );
|
||||
}
|
||||
|
||||
return deferred;
|
||||
};
|
||||
|
||||
// Preserve handler of uncaught exceptions in promise chains
|
||||
jQuery.Deferred.exceptionHook = oldDeferred.exceptionHook;
|
||||
|
||||
}
|
||||
|
||||
return jQuery;
|
||||
} );
|
2
assets/webconfig/js/lib/jquery/jquery-3.6.0.min.js
vendored
Normal file
2
assets/webconfig/js/lib/jquery/jquery-3.6.0.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
2
assets/webconfig/js/lib/jquery/jquery-migrate-3.3.2.min.js
vendored
Normal file
2
assets/webconfig/js/lib/jquery/jquery-migrate-3.3.2.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
assets/webconfig/js/lib/marked.min.js
vendored
4
assets/webconfig/js/lib/marked.min.js
vendored
File diff suppressed because one or more lines are too long
18
assets/webconfig/js/lib/metisMenu.min.js
vendored
18
assets/webconfig/js/lib/metisMenu.min.js
vendored
@ -1,9 +1,9 @@
|
||||
/*
|
||||
* metismenu - v1.1.3
|
||||
* Easy menu jQuery plugin for Twitter Bootstrap 3
|
||||
* https://github.com/onokumus/metisMenu
|
||||
*
|
||||
* Made by Osman Nuri Okumus
|
||||
* Under MIT License
|
||||
*/
|
||||
!function(a,b,c){function d(b,c){this.element=a(b),this.settings=a.extend({},f,c),this._defaults=f,this._name=e,this.init()}var e="metisMenu",f={toggle:!0,doubleTapToGo:!1};d.prototype={init:function(){var b=this.element,d=this.settings.toggle,f=this;this.isIE()<=9?(b.find("li.active").has("ul").children("ul").collapse("show"),b.find("li").not(".active").has("ul").children("ul").collapse("hide")):(b.find("li.active").has("ul").children("ul").addClass("collapse in"),b.find("li").not(".active").has("ul").children("ul").addClass("collapse")),f.settings.doubleTapToGo&&b.find("li.active").has("ul").children("a").addClass("doubleTapToGo"),b.find("li").has("ul").children("a").on("click."+e,function(b){return b.preventDefault(),f.settings.doubleTapToGo&&f.doubleTapToGo(a(this))&&"#"!==a(this).attr("href")&&""!==a(this).attr("href")?(b.stopPropagation(),void(c.location=a(this).attr("href"))):(a(this).parent("li").toggleClass("active").children("ul").collapse("toggle"),void(d&&a(this).parent("li").siblings().removeClass("active").children("ul.in").collapse("hide")))})},isIE:function(){for(var a,b=3,d=c.createElement("div"),e=d.getElementsByTagName("i");d.innerHTML="<!--[if gt IE "+ ++b+"]><i></i><![endif]-->",e[0];)return b>4?b:a},doubleTapToGo:function(a){var b=this.element;return a.hasClass("doubleTapToGo")?(a.removeClass("doubleTapToGo"),!0):a.parent().children("ul").length?(b.find(".doubleTapToGo").removeClass("doubleTapToGo"),a.addClass("doubleTapToGo"),!1):void 0},remove:function(){this.element.off("."+e),this.element.removeData(e)}},a.fn[e]=function(b){return this.each(function(){var c=a(this);c.data(e)&&c.data(e).remove(),c.data(e,new d(this,b))}),this}}(jQuery,window,document);
|
||||
/*!
|
||||
* metismenu https://github.com/onokumus/metismenu#readme
|
||||
* A collapsible jQuery menu plugin
|
||||
* @version 3.0.7
|
||||
* @author Osman Nuri Okumus <onokumus@gmail.com> (https://github.com/onokumus)
|
||||
* @license: MIT
|
||||
*/
|
||||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("jquery")):"function"==typeof define&&define.amd?define(["jquery"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).metisMenu=t(e.$)}(this,(function(e){"use strict";function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=t(e);const i=(e=>{const t="transitionend",n={TRANSITION_END:"mmTransitionEnd",triggerTransitionEnd(n){e(n).trigger(t)},supportsTransitionEnd:()=>Boolean(t)};function i(t){let i=!1;return e(this).one(n.TRANSITION_END,(()=>{i=!0})),setTimeout((()=>{i||n.triggerTransitionEnd(this)}),t),this}return e.fn.mmEmulateTransitionEnd=i,e.event.special[n.TRANSITION_END]={bindType:t,delegateType:t,handle(t){if(e(t.target).is(this))return t.handleObj.handler.apply(this,arguments)}},n})(n.default),s="metisMenu",r="metisMenu",a=n.default.fn[s],o={toggle:!0,preventDefault:!0,triggerElement:"a",parentTrigger:"li",subMenu:"ul"},l={SHOW:"show.metisMenu",SHOWN:"shown.metisMenu",HIDE:"hide.metisMenu",HIDDEN:"hidden.metisMenu",CLICK_DATA_API:"click.metisMenu.data-api"},d="metismenu",g="mm-active",h="mm-show",u="mm-collapse",f="mm-collapsing";class c{constructor(e,t){this.element=e,this.config={...o,...t},this.transitioning=null,this.init()}init(){const e=this,t=this.config,i=n.default(this.element);i.addClass(d),i.find(`${t.parentTrigger}.${g}`).children(t.triggerElement).attr("aria-expanded","true"),i.find(`${t.parentTrigger}.${g}`).parents(t.parentTrigger).addClass(g),i.find(`${t.parentTrigger}.${g}`).parents(t.parentTrigger).children(t.triggerElement).attr("aria-expanded","true"),i.find(`${t.parentTrigger}.${g}`).has(t.subMenu).children(t.subMenu).addClass(`${u} ${h}`),i.find(t.parentTrigger).not(`.${g}`).has(t.subMenu).children(t.subMenu).addClass(u),i.find(t.parentTrigger).children(t.triggerElement).on(l.CLICK_DATA_API,(function(i){const s=n.default(this);if("true"===s.attr("aria-disabled"))return;t.preventDefault&&"#"===s.attr("href")&&i.preventDefault();const r=s.parent(t.parentTrigger),a=r.siblings(t.parentTrigger),o=a.children(t.triggerElement);r.hasClass(g)?(s.attr("aria-expanded","false"),e.removeActive(r)):(s.attr("aria-expanded","true"),e.setActive(r),t.toggle&&(e.removeActive(a),o.attr("aria-expanded","false"))),t.onTransitionStart&&t.onTransitionStart(i)}))}setActive(e){n.default(e).addClass(g);const t=n.default(e).children(this.config.subMenu);t.length>0&&!t.hasClass(h)&&this.show(t)}removeActive(e){n.default(e).removeClass(g);const t=n.default(e).children(`${this.config.subMenu}.${h}`);t.length>0&&this.hide(t)}show(e){if(this.transitioning||n.default(e).hasClass(f))return;const t=n.default(e),s=n.default.Event(l.SHOW);if(t.trigger(s),s.isDefaultPrevented())return;if(t.parent(this.config.parentTrigger).addClass(g),this.config.toggle){const e=t.parent(this.config.parentTrigger).siblings().children(`${this.config.subMenu}.${h}`);this.hide(e)}t.removeClass(u).addClass(f).height(0),this.setTransitioning(!0);t.height(e[0].scrollHeight).one(i.TRANSITION_END,(()=>{this.config&&this.element&&(t.removeClass(f).addClass(`${u} ${h}`).height(""),this.setTransitioning(!1),t.trigger(l.SHOWN))})).mmEmulateTransitionEnd(350)}hide(e){if(this.transitioning||!n.default(e).hasClass(h))return;const t=n.default(e),s=n.default.Event(l.HIDE);if(t.trigger(s),s.isDefaultPrevented())return;t.parent(this.config.parentTrigger).removeClass(g),t.height(t.height())[0].offsetHeight,t.addClass(f).removeClass(u).removeClass(h),this.setTransitioning(!0);const r=()=>{this.config&&this.element&&(this.transitioning&&this.config.onTransitionEnd&&this.config.onTransitionEnd(),this.setTransitioning(!1),t.trigger(l.HIDDEN),t.removeClass(f).addClass(u))};0===t.height()||"none"===t.css("display")?r():t.height(0).one(i.TRANSITION_END,r).mmEmulateTransitionEnd(350)}setTransitioning(e){this.transitioning=e}dispose(){n.default.removeData(this.element,r),n.default(this.element).find(this.config.parentTrigger).children(this.config.triggerElement).off(l.CLICK_DATA_API),this.transitioning=null,this.config=null,this.element=null}static jQueryInterface(e){return this.each((function(){const t=n.default(this);let i=t.data(r);const s={...o,...t.data(),..."object"==typeof e&&e?e:{}};if(i||(i=new c(this,s),t.data(r,i)),"string"==typeof e){if(void 0===i[e])throw new Error(`No method named "${e}"`);i[e]()}}))}}return n.default.fn[s]=c.jQueryInterface,n.default.fn[s].Constructor=c,n.default.fn[s].noConflict=()=>(n.default.fn[s]=a,c.jQueryInterface),c}));
|
||||
//# sourceMappingURL=metisMenu.min.js.map
|
1
assets/webconfig/js/lib/metisMenu.min.js.map
Normal file
1
assets/webconfig/js/lib/metisMenu.min.js.map
Normal file
File diff suppressed because one or more lines are too long
5
assets/webconfig/js/lib/purify.min.js
vendored
5
assets/webconfig/js/lib/purify.min.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -11,7 +11,7 @@ var mInit = false;
|
||||
//collapses the sidebar on window resize.
|
||||
// Sets the min-height of #page-wrapper to window size
|
||||
$(function() {
|
||||
$(window).bind("load resize", function() {
|
||||
$(window).on("load resize", function() {
|
||||
var topOffset = 50;
|
||||
var width = (this.window.innerWidth > 0) ? this.window.innerWidth : this.screen.width;
|
||||
if (width < 768)
|
||||
@ -31,7 +31,7 @@ $(function() {
|
||||
else
|
||||
{
|
||||
$( "#main-nav" ).removeAttr('style').css({"position":"fixed"});
|
||||
$( ".mnava" ).unbind('click.smnav');
|
||||
$( ".mnava" ).off('click.smnav');
|
||||
mInit = false;
|
||||
}
|
||||
|
||||
@ -71,4 +71,4 @@ $('.navbar-toggle').on('click', function(){
|
||||
$('#main-nav').animate({right: "-235px",}, 300 );
|
||||
$(".navbar-toggle").addClass("closed");
|
||||
}
|
||||
});
|
||||
});
|
||||
|
@ -18,7 +18,7 @@ function changePassword(){
|
||||
});
|
||||
|
||||
$('#new-password, #current-password').off().on('input',function(e) {
|
||||
($('#current-password').val().length >= 8 && $('#new-password').val().length >= 8) && !window.readOnlyMode ? $('#id_btn_ok').attr('disabled', false) : $('#id_btn_ok').attr('disabled', true);
|
||||
($('#current-password').val().length >= 8 && $('#new-password').val().length >= 8) && !window.readOnlyMode ? $('#id_btn_ok').prop('disabled', false) : $('#id_btn_ok').prop('disabled', true);
|
||||
});
|
||||
}
|
||||
|
||||
@ -26,8 +26,8 @@ $(document).ready(function () {
|
||||
|
||||
if (!storageComp()) {
|
||||
showInfoDialog('warning', "Can't store settings", "Your browser doesn't support localStorage. You can't save a specific language setting (fallback to 'auto detection') and access level (fallback to 'default'). Some wizards may be hidden. You could still use the webinterface without further issues");
|
||||
$('#language-select').attr("disabled", true);
|
||||
$('#btn_setaccess').attr("disabled", true);
|
||||
$('#language-select').prop("disabled", true);
|
||||
$('#btn_setaccess').prop("disabled", true);
|
||||
}
|
||||
|
||||
initLanguageSelection();
|
||||
@ -41,7 +41,7 @@ $(document).ready(function () {
|
||||
|
||||
if (!storageComp()) {
|
||||
showInfoDialog('warning', $.i18n('InfoDialog_nostorage_title'), $.i18n('InfoDialog_nostorage_text'));
|
||||
$('#btn_setlang').attr("disabled", true);
|
||||
$('#btn_setlang').prop("disabled", true);
|
||||
}
|
||||
|
||||
$('#btn_setaccess').off().on('click',function() {
|
||||
@ -58,9 +58,9 @@ $(document).ready(function () {
|
||||
$('#id_select').off().on('change',function() {
|
||||
newAccess = $('#id_select').val();
|
||||
if (newAccess == storedAccess)
|
||||
$('#id_btn_saveset').attr('disabled', true);
|
||||
$('#id_btn_saveset').prop('disabled', true);
|
||||
else
|
||||
$('#id_btn_saveset').attr('disabled', false);
|
||||
$('#id_btn_saveset').prop('disabled', false);
|
||||
});
|
||||
|
||||
$('#id_btn_saveset').off().on('click',function() {
|
||||
|
@ -82,7 +82,7 @@ function beginWizardRGB() {
|
||||
wIntveralId = setInterval(function () { changeColor(); }, time * 1000);
|
||||
});
|
||||
|
||||
$('.wselect').change(function () {
|
||||
$('.wselect').on("change", function () {
|
||||
var rgb_order = window.serverConfig.device.colorOrder.split("");
|
||||
var redS = $("#wiz_r_select").val();
|
||||
var greenS = $("#wiz_g_select").val();
|
||||
@ -90,17 +90,17 @@ function beginWizardRGB() {
|
||||
|
||||
for (var i = 0; i < rgb_order.length; i++) {
|
||||
if (redS == rgb_order[i])
|
||||
$('#wiz_g_select option[value=' + rgb_order[i] + ']').attr('disabled', true);
|
||||
$('#wiz_g_select option[value=' + rgb_order[i] + ']').prop('disabled', true);
|
||||
else
|
||||
$('#wiz_g_select option[value=' + rgb_order[i] + ']').attr('disabled', false);
|
||||
$('#wiz_g_select option[value=' + rgb_order[i] + ']').prop('disabled', false);
|
||||
if (greenS == rgb_order[i])
|
||||
$('#wiz_r_select option[value=' + rgb_order[i] + ']').attr('disabled', true);
|
||||
$('#wiz_r_select option[value=' + rgb_order[i] + ']').prop('disabled', true);
|
||||
else
|
||||
$('#wiz_r_select option[value=' + rgb_order[i] + ']').attr('disabled', false);
|
||||
$('#wiz_r_select option[value=' + rgb_order[i] + ']').prop('disabled', false);
|
||||
}
|
||||
|
||||
if (redS != 'null' && greenS != 'null') {
|
||||
$('#btn_wiz_save').attr('disabled', false);
|
||||
$('#btn_wiz_save').prop('disabled', false);
|
||||
|
||||
for (var i = 0; i < rgb_order.length; i++) {
|
||||
if (rgb_order[i] == "r")
|
||||
@ -117,18 +117,18 @@ function beginWizardRGB() {
|
||||
$('#btn_wiz_save').toggle(false);
|
||||
$('#btn_wiz_checkok').toggle(true);
|
||||
|
||||
window.readOnlyMode ? $('#btn_wiz_checkok').attr('disabled', true) : $('#btn_wiz_checkok').attr('disabled', false);
|
||||
window.readOnlyMode ? $('#btn_wiz_checkok').prop('disabled', true) : $('#btn_wiz_checkok').prop('disabled', false);
|
||||
}
|
||||
else {
|
||||
$('#btn_wiz_save').toggle(true);
|
||||
window.readOnlyMode ? $('#btn_wiz_save').attr('disabled', true) : $('#btn_wiz_save').attr('disabled', false);
|
||||
window.readOnlyMode ? $('#btn_wiz_save').prop('disabled', true) : $('#btn_wiz_save').prop('disabled', false);
|
||||
|
||||
$('#btn_wiz_checkok').toggle(false);
|
||||
}
|
||||
new_rgb_order = rgb_order;
|
||||
}
|
||||
else
|
||||
$('#btn_wiz_save').attr('disabled', true);
|
||||
$('#btn_wiz_save').prop('disabled', true);
|
||||
});
|
||||
|
||||
$("#wiz_switchtime_select").append(createSelOpt('5', '5'), createSelOpt('10', '10'), createSelOpt('15', '15'), createSelOpt('30', '30'));
|
||||
@ -280,10 +280,10 @@ function performAction() {
|
||||
if (step == 1) {
|
||||
$('#wiz_cc_desc').html($.i18n('wiz_cc_chooseid'));
|
||||
updateWEditor(["id"]);
|
||||
$('#btn_wiz_back').attr("disabled", true);
|
||||
$('#btn_wiz_back').prop("disabled", true);
|
||||
}
|
||||
else
|
||||
$('#btn_wiz_back').attr("disabled", false);
|
||||
$('#btn_wiz_back').prop("disabled", false);
|
||||
|
||||
if (step == 2) {
|
||||
updateWEditor(["white"]);
|
||||
@ -410,16 +410,16 @@ function performAction() {
|
||||
else
|
||||
sendToKodi("playV", e.target.id + '.mp4');
|
||||
|
||||
$(this).attr("disabled", true);
|
||||
setTimeout(function () { $('.videobtn').attr("disabled", false) }, 10000);
|
||||
$(this).prop("disabled", true);
|
||||
setTimeout(function () { $('.videobtn').prop("disabled", false) }, 10000);
|
||||
});
|
||||
|
||||
$('#btn_wiz_next').attr("disabled", true);
|
||||
$('#btn_wiz_next').prop("disabled", true);
|
||||
$('#btn_wiz_save').toggle(true);
|
||||
window.readOnlyMode ? $('#btn_wiz_save').attr('disabled', true) : $('#btn_wiz_save').attr('disabled', false);
|
||||
window.readOnlyMode ? $('#btn_wiz_save').prop('disabled', true) : $('#btn_wiz_save').prop('disabled', false);
|
||||
}
|
||||
else {
|
||||
$('#btn_wiz_next').attr("disabled", false);
|
||||
$('#btn_wiz_next').prop("disabled", false);
|
||||
$('#btn_wiz_save').toggle(false);
|
||||
}
|
||||
}
|
||||
@ -455,7 +455,7 @@ function startWizardCC() {
|
||||
);
|
||||
|
||||
if (getStorage("darkMode", false) == "on")
|
||||
$('#wizard_logo').attr("src", 'img/hyperion/logo_negativ.png');
|
||||
$('#wizard_logo').prop("src", 'img/hyperion/logo_negativ.png');
|
||||
|
||||
//open modal
|
||||
$("#wizard_modal").modal({
|
||||
@ -485,7 +485,7 @@ function startWizardCC() {
|
||||
}
|
||||
|
||||
$('#kodi_status').html('<p style="font-weight:bold;margin-top:5px">' + $.i18n('wiz_cc_try_connect') + '</p>');
|
||||
$('#btn_wiz_cont').attr('disabled', true);
|
||||
$('#btn_wiz_cont').prop('disabled', true);
|
||||
|
||||
sendToKodi("msg", $.i18n('wiz_cc_kodimsg_start'), function (cb) {
|
||||
if (cb == "error") {
|
||||
@ -500,7 +500,7 @@ function startWizardCC() {
|
||||
withKodi = true;
|
||||
}
|
||||
|
||||
$('#btn_wiz_cont').attr('disabled', false);
|
||||
$('#btn_wiz_cont').prop('disabled', false);
|
||||
});
|
||||
}
|
||||
}
|
||||
@ -782,7 +782,9 @@ function checkHueBridge(cb, hueUser) {
|
||||
url: hueUrl,
|
||||
type: "GET",
|
||||
dataType: "json",
|
||||
success: function (json) {
|
||||
timeout: 2500
|
||||
})
|
||||
.done(function (json) {
|
||||
if (json.config) {
|
||||
cb(true, usr);
|
||||
} else {
|
||||
@ -793,11 +795,10 @@ function checkHueBridge(cb, hueUser) {
|
||||
cb(false);
|
||||
}
|
||||
}
|
||||
},
|
||||
timeout: 2500
|
||||
}).fail(function () {
|
||||
cb(false);
|
||||
});
|
||||
})
|
||||
.fail(function () {
|
||||
cb(false);
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@ -950,7 +951,7 @@ async function getProperties_hue_bridge(hostAddress, port, username, resourceFil
|
||||
async function identify_hue_device(hostAddress, port, username, id) {
|
||||
|
||||
// Take care that new record cannot be save during background process
|
||||
$('#btn_wiz_save').attr('disabled', true);
|
||||
$('#btn_wiz_save').prop('disabled', true);
|
||||
|
||||
let params = { host: hostAddress, user: username, lightId: id };
|
||||
if (port !== 'undefined') {
|
||||
@ -959,7 +960,7 @@ async function identify_hue_device(hostAddress, port, username, id) {
|
||||
await requestLedDeviceIdentification('philipshue', params);
|
||||
|
||||
if (!window.readOnlyMode) {
|
||||
$('#btn_wiz_save').attr('disabled', false);
|
||||
$('#btn_wiz_save').prop('disabled', false);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1157,8 +1158,9 @@ function createHueUser() {
|
||||
processData: false,
|
||||
timeout: 1000,
|
||||
contentType: 'application/json',
|
||||
data: JSON.stringify(data),
|
||||
success: function (r) {
|
||||
data: JSON.stringify(data)
|
||||
})
|
||||
.done(function (r) {
|
||||
$('#wizp1').toggle(false);
|
||||
$('#wizp2').toggle(false);
|
||||
$('#wizp3').toggle(true);
|
||||
@ -1190,14 +1192,13 @@ function createHueUser() {
|
||||
clearInterval(UserInterval);
|
||||
}
|
||||
}
|
||||
},
|
||||
error: function (XMLHttpRequest, textStatus, errorThrown) {
|
||||
})
|
||||
.fail(function (XMLHttpRequest, textStatus, errorThrown) {
|
||||
$('#wizp1').toggle(false);
|
||||
$('#wizp2').toggle(true);
|
||||
$('#wizp3').toggle(false);
|
||||
clearInterval(UserInterval);
|
||||
}
|
||||
});
|
||||
})
|
||||
}, 1000);
|
||||
}
|
||||
|
||||
@ -1207,8 +1208,9 @@ function get_hue_groups() {
|
||||
type: "GET",
|
||||
url: hueUrl,
|
||||
processData: false,
|
||||
contentType: 'application/json',
|
||||
success: function (r) {
|
||||
contentType: 'application/json'
|
||||
})
|
||||
.done(function (r) {
|
||||
if (Object.keys(r).length > 0) {
|
||||
$('#wh_topcontainer').toggle(false);
|
||||
$('#hue_grp_ids_t').toggle(true);
|
||||
@ -1229,8 +1231,7 @@ function get_hue_groups() {
|
||||
else {
|
||||
noAPISupport('wiz_hue_e_nogrpids');
|
||||
}
|
||||
}
|
||||
});
|
||||
})
|
||||
}
|
||||
|
||||
function noAPISupport(txt) {
|
||||
@ -1252,13 +1253,13 @@ function get_light_state(id) {
|
||||
type: "GET",
|
||||
url: hueUrl,
|
||||
processData: false,
|
||||
contentType: 'application/json',
|
||||
success: function (r) {
|
||||
contentType: 'application/json'
|
||||
})
|
||||
.done(function (r) {
|
||||
if (Object.keys(r).length > 0) {
|
||||
identHueId(id, false, r['state']);
|
||||
}
|
||||
}
|
||||
});
|
||||
})
|
||||
}
|
||||
|
||||
function get_hue_lights() {
|
||||
@ -1267,8 +1268,9 @@ function get_hue_lights() {
|
||||
type: "GET",
|
||||
url: hueUrl,
|
||||
processData: false,
|
||||
contentType: 'application/json',
|
||||
success: function (r) {
|
||||
contentType: 'application/json'
|
||||
})
|
||||
.done(function (r) {
|
||||
if (Object.keys(r).length > 0) {
|
||||
if (hueType == 'philipshue') {
|
||||
$('#wh_topcontainer').toggle(false);
|
||||
@ -1327,7 +1329,7 @@ function get_hue_lights() {
|
||||
}
|
||||
|
||||
if (hueType != 'philipshueentertainment') {
|
||||
$('.hue_sel_watch').bind("change", function () {
|
||||
$('.hue_sel_watch').on("change", function () {
|
||||
var cC = 0;
|
||||
for (var key in lightIDs) {
|
||||
if ($('#hue_' + key).val() != "disabled") {
|
||||
@ -1335,7 +1337,7 @@ function get_hue_lights() {
|
||||
}
|
||||
}
|
||||
|
||||
(cC == 0 || window.readOnlyMode) ? $('#btn_wiz_save').attr("disabled", true) : $('#btn_wiz_save').attr("disabled", false);
|
||||
(cC == 0 || window.readOnlyMode) ? $('#btn_wiz_save').prop("disabled", true) : $('#btn_wiz_save').prop("disabled", false);
|
||||
});
|
||||
}
|
||||
$('.hue_sel_watch').trigger('change');
|
||||
@ -1344,8 +1346,7 @@ function get_hue_lights() {
|
||||
var txt = '<p style="font-weight:bold;color:red;">' + $.i18n('wiz_hue_noids') + '</p>';
|
||||
$('#wizp2_body').append(txt);
|
||||
}
|
||||
}
|
||||
});
|
||||
})
|
||||
}
|
||||
|
||||
function abortConnection(UserInterval) {
|
||||
@ -1534,7 +1535,7 @@ async function discover_yeelight_lights() {
|
||||
|
||||
function assign_yeelight_lights() {
|
||||
// Model mappings, see https://www.home-assistant.io/integrations/yeelight/
|
||||
var models = ['color', 'color1', 'YLDP02YL', 'YLDP02YL', 'color2', 'YLDP06YL', 'color4', 'YLDP13YL', 'color6', 'YLDP13AYL', 'colorc', "YLDP004-A", 'stripe', 'YLDD04YL', 'strip1', 'YLDD01YL', 'YLDD02YL', 'strip4', 'YLDD05YL', 'strip6', 'YLDD05YL'];
|
||||
var models = ['color', 'color1', 'YLDP02YL', 'YLDP02YL', 'color2', 'YLDP06YL', 'color4', 'YLDP13YL', 'color6', 'YLDP13AYL', 'colorb', "YLDP005", 'colorc', "YLDP004-A", 'stripe', 'YLDD04YL', 'strip1', 'YLDD01YL', 'YLDD02YL', 'strip4', 'YLDD05YL', 'strip6', 'YLDD05YL'];
|
||||
|
||||
// If records are left for configuration
|
||||
if (Object.keys(lights).length > 0) {
|
||||
@ -1583,7 +1584,7 @@ function assign_yeelight_lights() {
|
||||
+ $.i18n('wiz_identify_light', lightName) + '</button>']));
|
||||
}
|
||||
|
||||
$('.yee_sel_watch').bind("change", function () {
|
||||
$('.yee_sel_watch').on("change", function () {
|
||||
var cC = 0;
|
||||
for (var key in lights) {
|
||||
if ($('#yee_' + key).val() !== "disabled") {
|
||||
@ -1592,9 +1593,9 @@ function assign_yeelight_lights() {
|
||||
}
|
||||
|
||||
if (cC === 0 || window.readOnlyMode)
|
||||
$('#btn_wiz_save').attr("disabled", true);
|
||||
$('#btn_wiz_save').prop("disabled", true);
|
||||
else
|
||||
$('#btn_wiz_save').attr("disabled", false);
|
||||
$('#btn_wiz_save').prop("disabled", false);
|
||||
});
|
||||
$('.yee_sel_watch').trigger('change');
|
||||
}
|
||||
@ -1621,13 +1622,13 @@ async function getProperties_yeelight(hostname, port) {
|
||||
|
||||
async function identify_yeelight_device(hostname, port) {
|
||||
// Take care that new record cannot be save during background process
|
||||
$('#btn_wiz_save').attr('disabled', true);
|
||||
$('#btn_wiz_save').prop('disabled', true);
|
||||
|
||||
let params = { hostname: hostname, port: port };
|
||||
await requestLedDeviceIdentification("yeelight", params);
|
||||
|
||||
if (!window.readOnlyMode) {
|
||||
$('#btn_wiz_save').attr('disabled', false);
|
||||
$('#btn_wiz_save').prop('disabled', false);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1843,7 +1844,7 @@ function assign_atmoorb_lights() {
|
||||
+ $.i18n('wiz_identify_light', orbId) + '</button>']));
|
||||
}
|
||||
|
||||
$('.orb_sel_watch').bind("change", function () {
|
||||
$('.orb_sel_watch').on("change", function () {
|
||||
var cC = 0;
|
||||
for (var key in lights) {
|
||||
if ($('#orb_' + key).val() !== "disabled") {
|
||||
@ -1851,9 +1852,9 @@ function assign_atmoorb_lights() {
|
||||
}
|
||||
}
|
||||
if (cC === 0 || window.readOnlyMode)
|
||||
$('#btn_wiz_save').attr("disabled", true);
|
||||
$('#btn_wiz_save').prop("disabled", true);
|
||||
else
|
||||
$('#btn_wiz_save').attr("disabled", false);
|
||||
$('#btn_wiz_save').prop("disabled", false);
|
||||
});
|
||||
$('.orb_sel_watch').trigger('change');
|
||||
}
|
||||
@ -1865,12 +1866,12 @@ function assign_atmoorb_lights() {
|
||||
|
||||
async function identify_atmoorb_device(orbId) {
|
||||
// Take care that new record cannot be save during background process
|
||||
$('#btn_wiz_save').attr('disabled', true);
|
||||
$('#btn_wiz_save').prop('disabled', true);
|
||||
|
||||
let params = { id: orbId };
|
||||
await requestLedDeviceIdentification("atmoorb", params);
|
||||
|
||||
if (!window.readOnlyMode) {
|
||||
$('#btn_wiz_save').attr('disabled', false);
|
||||
$('#btn_wiz_save').prop('disabled', false);
|
||||
}
|
||||
}
|
||||
|
@ -214,6 +214,19 @@ bool PriorityMuxer::setInput(int priority, const std::vector<ColorRgb>& ledColor
|
||||
active = false;
|
||||
activeChange = true;
|
||||
}
|
||||
|
||||
if (input.componentId == hyperion::COMP_COLOR)
|
||||
{
|
||||
if (!input.ledColors.empty() && !ledColors.empty())
|
||||
{
|
||||
//Only issue priority update, if first LED change as value in update is representing first LED only
|
||||
if (input.ledColors.begin() != ledColors.begin())
|
||||
{
|
||||
activeChange = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// update input
|
||||
input.timeoutTime_ms = timeout_ms;
|
||||
input.ledColors = ledColors;
|
||||
|
Loading…
Reference in New Issue
Block a user