format index

This commit is contained in:
Vincent BOUQUET
2023-12-11 21:31:29 +01:00
parent e31b85246c
commit 1af18ea84c

View File

@@ -1,480 +1,426 @@
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="utf-8" /> <meta charset="utf-8" />
<meta <meta
name="viewport" name="viewport"
content="width=device-width,initial-scale=1,shrink-to-fit=no" content="width=device-width,initial-scale=1,shrink-to-fit=no"
/> />
<link rel="stylesheet" href="../files/bootstrap.min.css" /> <link rel="stylesheet" href="../files/bootstrap.min.css" />
<link rel="stylesheet" href="../files/layout.css" /> <link rel="stylesheet" href="../files/layout.css" />
<script src="../files/jquery-3.3.1.min.js"></script> <script src="../files/jquery-3.3.1.min.js"></script>
<script src="../files/popper.min.js"></script> <script src="../files/popper.min.js"></script>
<script src="../files/bootstrap.min.js"></script> <script src="../files/bootstrap.min.js"></script>
<script src="./base.js"></script> <script src="./base.js"></script>
</head> </head>
<body> <body>
<nav class="navbar fixed-top navbar-expand-md navbar-dark bg-dark"> <nav class="navbar fixed-top navbar-expand-md navbar-dark bg-dark">
<div class="container"> <div class="container">
<a class="navbar-brand" href="./index.html" <a class="navbar-brand" href="./index.html"
><img src="../files/robe_logo_white.svg" /></a ><img src="../files/robe_logo_white.svg" /></a
><button ><button
class="navbar-toggler" class="navbar-toggler"
type="button" type="button"
data-toggle="collapse" data-toggle="collapse"
data-target="#navbar" data-target="#navbar"
>
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbar">
<ul class="navbar-nav mr-auto">
<li class="nav-item active">
<a class="nav-link" href="./index.html">Status</a>
</li>
<li class="nav-item">
<a class="nav-link" href="./personality.html">Personality</a>
</li>
<li class="nav-item">
<a class="nav-link" href="./logs.html">Logs</a>
</li>
<li class="nav-item">
<a class="nav-link" href="./sensors.html">RAINS logs</a>
</li>
<li class="nav-item">
<a class="nav-link" href="./discovery.html">Discovery</a>
</li>
<li class="nav-item"><a class="nav-link" id="scfg">Settings</a></li>
<li class="nav-item">
<a class="nav-link" id="idnt"
><img class="rdmi" src="../files/identify.svg"
/></a>
</li>
</ul>
</div>
</div>
</nav>
<div
class="fixed-top text-center device-label"
id="pth"
onclick="window.location = ('../index.html')"
></div>
<div class="container-fluid in">
<h1>Device status</h1>
<div class="row" id="boxes">
<div class="col-md-6 col-xl-4 box-c">
<h2>
DMX/RDM settings
<a class="cfg" onclick="open_modal(0);">
<img src="../files/settings.svg" />
</a>
</h2>
<div class="box">
<ul class="group">
<li>DMX address</li>
<li>DMX preset</li>
<li>DMX input</li>
<li class="mt-2">IP address</li>
<li>MAC address</li>
<li class="mt-2">RDM UID</li>
<li>RDM label</li>
</ul>
<ul class="group vals" id="">
<li>
<div id="iforte_dmxa_v"></div>
</li>
<li>
<div id="iforte_dmxp_v"></div>
</li>
<li>
<div id="iforte_dmxi_v"></div>
</li>
<li class="mt-2">
<div id="iforte_ip_v"></div>
</li>
<li>
<div id="iforte_mac_v"></div>
</li>
<li class="mt-2">
<div id="iforte_rdmu_v"></div>
</li>
<li>
<div id="iforte_rdmn_v"></div>
</li>
</ul>
</div>
</div>
<div class="col-md-6 col-xl-4 box-c">
<h2>
Device times
<a class="cfg" onclick="open_modal(1);">
<img src="../files/settings.svg" />
</a>
</h2>
<div class="box">
<ul class="group">
<li>Power on time</li>
</ul>
<ul class="group vals" id="">
<li>
<div id="iforte_h0_v"></div>
h /
<div id="iforte_hr0_v"></div>
h
</li>
</ul>
<p>
<small>total / resettable</small>
</p>
<ul class="group">
<li>LED on time total</li>
<li>LED on time adaptive</li>
</ul>
<ul class="group vals">
<li>
<div id="iforte_h1_v"></div>
h
</li>
<li>
<div id="iforte_hr1_v"></div>
h
</li>
</ul>
</div>
</div>
<div class="col-md-6 col-xl-4 box-c">
<h2>
Device temperatures
<a class="cfg" onclick="open_modal(2);">
<img src="../files/settings.svg" />
</a>
</h2>
<div class="box">
<ul class="group">
<li>LEDs</li>
<li>PSU</li>
<li>Driver</li>
<li>Base</li>
</ul>
<ul class="group vals" id="">
<li>
<div id="iforte_t0_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tm0_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tmr0_v"></div>
°
<div id="iforte_tu_v"></div>
</li>
<li>
<div id="iforte_t3_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tm3_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tmr3_v"></div>
°
<div id="iforte_tu_v"></div>
</li>
<li>
<div id="iforte_t1_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tm1_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tmr1_v"></div>
°
<div id="iforte_tu_v"></div>
</li>
<li>
<div id="iforte_t2_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tm2_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tmr2_v"></div>
°
<div id="iforte_tu_v"></div>
</li>
</ul>
<p>
<small>current / maximum / resettable</small>
</p>
</div>
</div>
<div class="col-md-6 col-xl-4 box-c">
<h2>
Wireless state
<a class="cfg" onclick="open_modal(3);">
<img src="../files/settings.svg" />
</a>
</h2>
<div class="box">
<ul class="group">
<li>State</li>
<li>Signal strength</li>
</ul>
<ul class="group vals" id="">
<li>
<div id="iforte_lwc_v"></div>
</li>
<li>
<div id="iforte_lws_v">%</div>
</li>
</ul>
</div>
</div>
<div class="col-md-6 col-xl-4 box-c">
<h2>Software versions</h2>
<div class="box">
<ul class="group">
<li>Display System</li>
<li>Module M</li>
<li>Module L1</li>
<li>Module L2</li>
<li>Module O</li>
<li>Module F-A</li>
<li>Module F-B</li>
<li>Module G1</li>
<li>Module G2</li>
<li>Module P</li>
<li>Module C1</li>
<li>Module C2</li>
<li>Module DL</li>
</ul>
<ul class="group vals" id="sw_vers">
<li>1.9</li>
<li>1.4</li>
<li>1.6</li>
<li>1.5</li>
<li>1.3</li>
<li>1.1</li>
<li>1.1</li>
<li>1.5</li>
<li>1.5</li>
<li>1.2</li>
<li>1.2</li>
<li>1.2</li>
<li>1.2</li>
</ul>
</div>
</div>
<div class="col-md-6 col-xl-4 box-c">
<h2>Device state</h2>
<div class="box">
<ul class="group">
<li>Device status</li>
</ul>
<ul class="group vals" id="">
<li>
<div id="iforte_devs_v"></div>
</li>
</ul>
<button
class="btn btn-primary btn-block esm dn btn-success"
value="0"
style="display: inline-block"
id="esm"
> >
<span class="navbar-toggler-icon"></span> Enter standby mode
</button> </button>
<div class="collapse navbar-collapse" id="navbar"> <div>Current RAINS status</div>
<ul class="navbar-nav mr-auto"> <div>
<li class="nav-item active"> <small class="fl">WET</small>
<a class="nav-link" href="./index.html">Status</a> <small class="fr">DRY</small>
</li>
<li class="nav-item">
<a class="nav-link" href="./personality.html">Personality</a>
</li>
<li class="nav-item">
<a class="nav-link" href="./logs.html">Logs</a>
</li>
<li class="nav-item">
<a class="nav-link" href="./sensors.html">RAINS logs</a>
</li>
<li class="nav-item">
<a class="nav-link" href="./discovery.html">Discovery</a>
</li>
<li class="nav-item"><a class="nav-link" id="scfg">Settings</a></li>
<li class="nav-item">
<a class="nav-link" id="idnt"
><img class="rdmi" src="../files/identify.svg"
/></a>
</li>
</ul>
</div>
</div> </div>
</nav> <div class="rains">
<div <div id="iforte_rains_bar_current" style="width: 50%"></div>
class="fixed-top text-center device-label"
id="pth"
onclick="window.location = ('../index.html')"
></div>
<div class="container-fluid in">
<h1>Device status</h1>
<div class="row" id="boxes">
<div class="col-md-6 col-xl-4 box-c">
<h2>
DMX/RDM settings
<a class="cfg" onclick="open_modal(0);">
<img src="../files/settings.svg" />
</a>
</h2>
<div class="box">
<ul class="group">
<li>DMX address</li>
<li>DMX preset</li>
<li>DMX input</li>
<li class="mt-2">IP address</li>
<li>MAC address</li>
<li class="mt-2">RDM UID</li>
<li>RDM label</li>
</ul>
<ul class="group vals" id="">
<li>
<div id="iforte_dmxa_v"></div>
</li>
<li>
<div id="iforte_dmxp_v"></div>
</li>
<li>
<div id="iforte_dmxi_v"></div>
</li>
<li class="mt-2">
<div id="iforte_ip_v"></div>
</li>
<li>
<div id="iforte_mac_v"></div>
</li>
<li class="mt-2">
<div id="iforte_rdmu_v"></div>
</li>
<li>
<div id="iforte_rdmn_v"></div>
</li>
</ul>
</div>
</div>
<div class="col-md-6 col-xl-4 box-c">
<h2>
Device times
<a class="cfg" onclick="open_modal(1);">
<img src="../files/settings.svg" />
</a>
</h2>
<div class="box">
<ul class="group">
<li>Power on time</li>
</ul>
<ul class="group vals" id="">
<li>
<div id="iforte_h0_v"></div>
h /
<div id="iforte_hr0_v"></div>
h
</li>
</ul>
<p>
<small>total / resettable</small>
</p>
<ul class="group">
<li>LED on time total</li>
<li>LED on time adaptive</li>
</ul>
<ul class="group vals">
<li>
<div id="iforte_h1_v"></div>
h
</li>
<li>
<div id="iforte_hr1_v"></div>
h
</li>
</ul>
</div>
</div>
<div class="col-md-6 col-xl-4 box-c">
<h2>
Device temperatures
<a class="cfg" onclick="open_modal(2);">
<img src="../files/settings.svg" />
</a>
</h2>
<div class="box">
<ul class="group">
<li>LEDs</li>
<li>PSU</li>
<li>Driver</li>
<li>Base</li>
</ul>
<ul class="group vals" id="">
<li>
<div id="iforte_t0_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tm0_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tmr0_v"></div>
°
<div id="iforte_tu_v"></div>
</li>
<li>
<div id="iforte_t3_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tm3_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tmr3_v"></div>
°
<div id="iforte_tu_v"></div>
</li>
<li>
<div id="iforte_t1_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tm1_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tmr1_v"></div>
°
<div id="iforte_tu_v"></div>
</li>
<li>
<div id="iforte_t2_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tm2_v"></div>
°
<div id="iforte_tu_v"></div>
/
<div id="iforte_tmr2_v"></div>
°
<div id="iforte_tu_v"></div>
</li>
</ul>
<p>
<small>current / maximum / resettable</small>
</p>
</div>
</div>
<div class="col-md-6 col-xl-4 box-c">
<h2>
Wireless state
<a class="cfg" onclick="open_modal(3);">
<img src="../files/settings.svg" />
</a>
</h2>
<div class="box">
<ul class="group">
<li>State</li>
<li>Signal strength</li>
</ul>
<ul class="group vals" id="">
<li>
<div id="iforte_lwc_v"></div>
</li>
<li>
<div id="iforte_lws_v">%</div>
</li>
</ul>
</div>
</div>
<div class="col-md-6 col-xl-4 box-c">
<h2>Software versions</h2>
<div class="box">
<ul class="group">
<li>Display System</li>
<li>Module M</li>
<li>Module L1</li>
<li>Module L2</li>
<li>Module O</li>
<li>Module F-A</li>
<li>Module F-B</li>
<li>Module G1</li>
<li>Module G2</li>
<li>Module P</li>
<li>Module C1</li>
<li>Module C2</li>
<li>Module DL</li>
</ul>
<ul class="group vals" id="sw_vers">
<li>1.9</li>
<li>1.4</li>
<li>1.6</li>
<li>1.5</li>
<li>1.3</li>
<li>1.1</li>
<li>1.1</li>
<li>1.5</li>
<li>1.5</li>
<li>1.2</li>
<li>1.2</li>
<li>1.2</li>
<li>1.2</li>
</ul>
</div>
</div>
<div class="col-md-6 col-xl-4 box-c">
<h2>Device state</h2>
<div class="box">
<ul class="group">
<li>Device status</li>
</ul>
<ul class="group vals" id="">
<li>
<div id="iforte_devs_v"></div>
</li>
</ul>
<button
class="btn btn-primary btn-block esm dn btn-success"
value="0"
style="display: inline-block"
id="esm"
>
Enter standby mode
</button>
<div>Current RAINS status</div>
<div>
<small class="fl">WET</small>
<small class="fr">DRY</small>
</div>
<div class="rains">
<div id="iforte_rains_bar_current" style="width: 50%"></div>
</div>
<div>MAX WET/resettable</div>
<div>
<small class="fl">WET</small>
<small class="fr">DRY</small>
</div>
<div class="rains">
<div id="iforte_rains_bar_max" style="width: 50%"></div>
</div>
<button class="btn btn-primary btn-block">MAX WET reset</button>
<p>
<small id="iforte_wrt">last reset: 2.3.2023 16:19:57</small>
</p>
</div>
</div>
<div class="col-12 box-c">
<h2 id="sta_err">Status messages</h2>
<div class="box">
<li>
This is a simulated REAP™ page for demo purposes. Some content
might be different on real fixtures.
</li>
<li>Big thanks to Vincent BOUQUET for creating this simulator.</li>
</div>
</div>
</div> </div>
<div>MAX WET/resettable</div>
<div>
<small class="fl">WET</small>
<small class="fr">DRY</small>
</div>
<div class="rains">
<div id="iforte_rains_bar_max" style="width: 50%"></div>
</div>
<button class="btn btn-primary btn-block" id="maxwetreset">MAX WET reset</button>
<p>
<small id="iforte_demo_rains_last_reset"></small>
</p>
</div> </div>
<div id="cfg-modal" class="modal fade" tabindex="-1" role="dialog"> </div>
<div class="modal-dialog" role="document"> <div class="col-12 box-c">
<div class="modal-content"> <h2 id="sta_err">Status messages</h2>
<div class="modal-header"> <div class="box">
<img src="../files/settings.svg" /> <li>
<h5 class="modal-title" id="m-t"></h5> This is a simulated REAP™ page for demo purposes. Some content
<button might be different on real fixtures.
type="button" </li>
class="close" <li>Big thanks to Vincent BOUQUET for creating this simulator.</li>
data-dismiss="modal"
aria-label="Close"
>
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body" id="m-b"></div>
<div class="modal-footer" id="m-f">
<button type="button" class="btn btn-primary sb">Save</button>
</div>
</div>
</div>
</div> </div>
<script> </div>
var a_m = -1; </div>
var m_t = [ </div>
"DMX/RDM settings", <div id="cfg-modal" class="modal fade" tabindex="-1" role="dialog">
"Reset timers", <div class="modal-dialog" role="document">
"Reset temperatures", <div class="modal-content">
"Wireless settings", <div class="modal-header">
]; <img src="../files/settings.svg" />
<h5 class="modal-title" id="m-t"></h5>
function open_modal(i) { <button
a_m = i; type="button"
if (a_m < m_t.length) { class="close"
$("#m-t").html(m_t[a_m]); data-dismiss="modal"
} aria-label="Close"
$(".sb").unbind(); >
$("#m-f").empty(); <span aria-hidden="true">×</span>
$("#m-f").append( </button>
'<button type="button" class="btn btn-primary sb">Save</button>' </div>
); <div class="modal-body" id="m-b"></div>
if (a_m == 0) $("#m-f").show(); <div class="modal-footer" id="m-f">
else $("#m-f").hide(); <button type="button" class="btn btn-primary sb">Save</button>
var h = ""; </div>
if (a_m == 0) { </div>
h += c_txt( </div>
"iforte_dmxa", </div>
"DMX address", <script>
"Please put DMX address from 1 to 512" var a_m = -1;
); var m_t = [
h += c_opt("iforte_dmxp", "DMX preset", [2], "Mode ", 0, 1, ""); "DMX/RDM settings",
h += c_opt( "Reset timers",
"iforte_dmxi", "Reset temperatures",
"DMX input", "Wireless settings",
["wired", "wireless", "wireless XLR out"], ];
"",
0, function open_modal(i) {
1, a_m = i;
"Can not set wireless input now!" if (a_m < m_t.length) {
); $("#m-t").html(m_t[a_m]);
h += c_txt( }
"iforte_rdmn", $(".sb").unbind();
"RDM label", $("#m-f").empty();
"Please insert label,max 32 characters" $("#m-f").append(
); '<button type="button" class="btn btn-primary sb">Save</button>');
} else if (a_m == 1) { if (a_m == 0) $("#m-f").show();
h += c_btn("Power on time reset", 0, "rh"); else $("#m-f").hide();
} else if (a_m == 2) { var h = "";
h += c_btn("LEDs temperature reset", 0, "rt"); if (a_m == 0) {
h += c_btn("PSU temperature reset", 3, "rt"); h += c_txt("iforte_dmxa","DMX address","Please put DMX address from 1 to 512");
h += c_btn("Driver temperature reset", 1, "rt"); h += c_opt("iforte_dmxp", "DMX preset", [2], "Mode ", 0, 1, "");
h += c_btn("Base temperature reset", 2, "rt"); h += c_opt("iforte_dmxi","DMX input",["wired", "wireless", "wireless XLR out"],"",0,1,"Can not set wireless input now!");
} else if (a_m == 3) { h += c_txt("iforte_rdmn","RDM label","Please insert label,max 32 characters");
h += c_btn("Unlink Wireless module", 0, "lwu"); } else if (a_m == 1) {
} h += c_btn("Power on time reset", 0, " rh");
} else if (a_m == 2) {
// pers set h += c_btn("LEDs temperature reset", 0, " rt");
$("#m-b").html(h); h += c_btn("PSU temperature reset", 3, " rt");
copy_form_values(1); h += c_btn("Driver temperature reset", 1, " rt");
$("#cfg-modal").modal(); h += c_btn("Base temperature reset", 2, " rt");
$(".sb").bind("click", function () { } else if (a_m == 3) {
loader(1); h += c_btn("Unlink Wireless module", 0, " lwu");
var par = [ }
"iforte_dmxa",
"iforte_dmxp", // pers set
"iforte_dmxi", $("#m-b").html(h);
"iforte_rdmn", copy_form_values(1);
]; $("#cfg-modal").modal();
do_ajax("/set_dmx", pv(par), function (json) { $(".sb").bind("click", function () {
if (json) { loader(1);
if (json["status"] == 0) { var par = ["iforte_dmxa","iforte_dmxp","iforte_dmxi","iforte_rdmn"];
copy_form_values(0); do_ajax("/set_dmx", serialize_parameters(par));
if (a_m == 0) { });
console.log(json["dmxf"]);
fill_values(json, ["dmxf"]); // hours reset
} $(".rh").bind("click", function () {
ptit(json["pt"]); loader(1);
close_modal(); do_ajax('/reset_hours', "rh=" + this.value)
} });
show_errors(json["status"], par);
loader(0); // max temp reset
} $(".rt").bind("click", function () {
}); loader(1);
}); do_ajax('/reset_temps', "rt=" + this.value)
});
// hours reset
$(".rh ").bind("click ", function () { // wireless unlink
loader(1); $(".lwu").bind("click", function () {
do_ajax( loader(1);
"/reset_hours", close_modal();
{ loader(0);
index: $(this).attr("value"), });
}, }
function (json) {
if (json) { // standby mode
fill_values(json, ["hr0", "hr1", "hr2", "hr3"]); $("#esm").on("click", function () {
} toggleStandbyMode();
loader(0); });
} // max wet reset
); $("#maxwetreset").on("click", function () {
}); do_ajax('/max_wet', "0");
});
// max temp reset </script>
$(".rt").bind("click", function () { </body>
loader(1);
do_ajax(
"/reset_temps",
{
index: $(this).attr("value"),
},
function (json) {
if (json) {
fill_values(json, ["tmr0", "tmr1", "tmr2"]);
}
loader(0);
}
);
});
// wireless unlink
$(".lwu").bind("click", function () {
loader(1);
close_modal();
loader(0);
});
}
// standby mode
$("#esm").on("click", function () {
toggleStandbyMode();
});
</script>
</body>
</html> </html>