This commit is contained in:
michael
2024-09-23 15:44:30 +02:00
parent 20a04b888f
commit 085c47b651
5 changed files with 341 additions and 165 deletions

View File

@@ -132,7 +132,7 @@
<tr>
<td style="padding-top: 10px">x: <input type="number" name="refx" id="refx" step=1 onchange="valuemanualchanged()"></td>
<td style="padding-top: 10px">dx: <input type="number" name="refdx" id="refdx" step=1 onchange="valuemanualchanged()"></td>
<td rowspan="2" style="padding-top: 10px;"><input class="button" type="button" value="Update Marker" onclick="CutOutReference()"></td>
<td rowspan="2" style="padding-top: 10px;"><button style="color:black;" type="button" class="button" id="updatemarker" onclick="CutOutReference()">Update Marker</button></td>
</tr>
<tr>
@@ -143,7 +143,7 @@
<tr>
<td style="vertical-align: bottom;">Selected Image Area:</td>
<td style="vertical-align: bottom;">Resulting Marker:</td>
<td><input class="button" type="button" id="enhancecontrast" value="Enhance Image Contrast" onclick="EnhanceContrast()"></td>
<td><button style="color:black;" type="button" class="button" id="enhancecontrast" onclick="EnhanceContrast()">Enhance Image Contrast</button></td>
</tr>
<tr>
@@ -155,7 +155,7 @@
<td style="vertical-align:bottom;"><b>Reference Image:</b></td>
<td></td>
<td>
<input style="font-weight:bold;" class="button" type="submit" name="saveroi" id="savemarker" onclick="SaveToConfig()" value="Save New Marker">
<button style="font-weight:bold; color:black;" type="submit" class="button" id="savemarker" onclick="SaveToConfig()">Save New Marker</button>
</td>
</tr>
@@ -185,7 +185,7 @@ var canvas = document.getElementById('canvas'),
function doReboot() {
if (confirm("Are you sure you want to reboot? Did you save your changes?")) {
var stringota = getDomainname() + "/reboot";
var stringota = domainname + "/reboot";
window.location = stringota;
window.location.href = stringota;
window.location.assign(stringota);
@@ -208,34 +208,60 @@ function ChangeSelection(){
}
}
function SaveToConfig(){
function SaveToConfig() {
document.getElementById("overlay").style.display = "block";
document.getElementById("overlaytext").innerHTML = "Save Alignment Marker...";
if (confirm("Are you sure you want to save the new alignment marker configuration?")) {
WriteConfigININew();
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
async function task() {
while (true) {
WriteConfigININew();
if (neueref1 == 1 && neueref2 == 1) {
UpdateConfigReferences(domainname);
}
else if (neueref1 == 1) {
var anzneueref = 1;
UpdateConfigReference(anzneueref, domainname);
}
else if (neueref2 == 1) {
var anzneueref = 2;
UpdateConfigReference(anzneueref, domainname);
}
//UpdateConfigReference(domainname)
SaveConfigToServer(domainname);
document.getElementById("savemarker").disabled = true;
document.getElementById("enhancecontrast").disabled = true;
firework.launch('Alignment marker saved. They will get applied after next reboot', 'success', 5000);
if (neueref1 == 1 && neueref2 == 1) {
UpdateConfigReferences(domainname);
}
else if (neueref1 == 1) {
var anzneueref = 1;
UpdateConfigReference(anzneueref, domainname);
}
else if (neueref2 == 1) {
var anzneueref = 2;
UpdateConfigReference(anzneueref, domainname);
}
SaveConfigToServer(domainname);
document.getElementById("updatemarker").disabled = false;
// document.getElementById("savemarker").disabled = true;
// document.getElementById("enhancecontrast").disabled = true;
EnDisableItem(false, "savemarker", true);
EnDisableItem(false, "enhancecontrast", true);
document.getElementById("overlay").style.display = "none";
firework.launch('Alignment marker saved. They will get applied after next reboot', 'success', 5000);
return;
}
}
setTimeout(function () {
// Delay so the overlay gets shown
task();
}, 1);
}
else {
document.getElementById("overlay").style.display = "none";
}
}
function EnhanceContrast(){
function EnhanceContrast() {
document.getElementById("overlay").style.display = "block";
document.getElementById("overlaytext").innerHTML = "Enhancing Image Contrast...";
refInfo[aktindex]["name"] = document.getElementById("name").value;
refInfo[aktindex]["x"] = document.getElementById("refx").value;
refInfo[aktindex]["y"] = document.getElementById("refy").value;
@@ -243,9 +269,7 @@ function EnhanceContrast(){
refInfo[aktindex]["dy"] = document.getElementById("refdy").value;
var enhanceCon = true;
document.getElementById("overlay").style.display = "block";
document.getElementById("overlaytext").innerHTML = "Enhancing Image Contrast...";
var durchlaufe = 0;
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
@@ -253,11 +277,18 @@ function EnhanceContrast(){
async function task() {
while (true) {
if (durchlaufe > 10) {
document.getElementById("overlay").style.display = "none";
firework.launch('Enhancing Image Contrast aborted, timeout!', 'danger', 5000);
return;
}
var ret = MakeRefImageZW(refInfo[aktindex], enhanceCon, domainname);
if (ret) {
UpdateReference();
//document.getElementById("enhancecontrast").disabled = true;
document.getElementById("overlay").style.display = "none";
if (aktindex == 0) {
neueref1 = 1;
}
@@ -269,6 +300,8 @@ function EnhanceContrast(){
else {
// Get status
var xhttp = new XMLHttpRequest();
durchlaufe = durchlaufe + 1;
try {
xhttp.open("GET", domainname + "/statusflow", false);
xhttp.send();
@@ -282,7 +315,8 @@ function EnhanceContrast(){
}
}
setTimeout(function() { // Delay so the overlay gets shown
setTimeout(function() {
// Delay so the overlay gets shown
task();
}, 1);
}
@@ -393,8 +427,14 @@ function LoadReference(){
function init() {
openDescription();
domainname = getDomainname();
document.getElementById("updatemarker").disabled = false;
// document.getElementById("savemarker").disabled = true;
// document.getElementById("enhancecontrast").disabled = true;
EnDisableItem(false, "savemarker", true);
EnDisableItem(false, "enhancecontrast", true);
if (!loadConfig(domainname)) {
firework.launch('Configuration could not be loaded! Please reload the page!', 'danger', 30000);
return;
@@ -404,18 +444,13 @@ function init() {
param = getConfigParameters();
cofcat = getConfigCategory();
document.getElementById("savemarker").disabled = true;
document.getElementById("enhancecontrast").disabled = true;
canvas.addEventListener('mousedown', mouseDown, false);
canvas.addEventListener('mouseup', mouseUp, false);
canvas.addEventListener('mousemove', mouseMove, false);
loadCanvas(domainname + "/fileserver/config/reference.jpg");
//CopyReferenceToImgTmp(domainname);
refInfo = GetReferencesInfo();
//UpdateReference();
LoadReference();
drawImage();
draw();
@@ -432,15 +467,16 @@ function drawImage(){
}
function CutOutReference(){
document.getElementById("overlay").style.display = "block";
document.getElementById("overlaytext").innerHTML = "Updating marker...";
refInfo[aktindex]["x"] = document.getElementById("refx").value;
refInfo[aktindex]["y"] = document.getElementById("refy").value;
refInfo[aktindex]["dx"] = document.getElementById("refdx").value;
refInfo[aktindex]["dy"] = document.getElementById("refdy").value;
var enhanceCon = false;
document.getElementById("overlay").style.display = "block";
document.getElementById("overlaytext").innerHTML = "Updating marker...";
var durchlaufe = 0;
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
@@ -448,12 +484,24 @@ function CutOutReference(){
async function task() {
while (true) {
if (durchlaufe > 10) {
document.getElementById("overlay").style.display = "none";
firework.launch('Updating marker aborted, timeout!', 'danger', 5000);
return;
}
var ret = MakeRefImageZW(refInfo[aktindex], enhanceCon, domainname);
if (ret) {
UpdateReference();
document.getElementById("enhancecontrast").disabled = false;
document.getElementById("savemarker").disabled = false;
document.getElementById("updatemarker").disabled = false;
// document.getElementById("savemarker").disabled = false;
// document.getElementById("enhancecontrast").disabled = false;
EnDisableItem(true, "savemarker", true);
EnDisableItem(true, "enhancecontrast", true);
document.getElementById("overlay").style.display = "none";
if (aktindex == 0) {
@@ -467,6 +515,8 @@ function CutOutReference(){
else {
// Get status
var xhttp = new XMLHttpRequest();
durchlaufe = durchlaufe + 1;
try {
xhttp.open("GET", domainname + "/statusflow", false);
xhttp.send();
@@ -480,7 +530,8 @@ function CutOutReference(){
}
}
setTimeout(function() { // Delay so the overlay gets shown
setTimeout(function() {
// Delay so the overlay gets shown
task();
}, 1);
}
@@ -536,6 +587,21 @@ function mouseDown(e) {
drag = true;
}
function EnDisableItem(_status, _name, _optional) {
_color = "rgb(122, 122, 122)";
if (_status) {
_color = "black";
}
if (_optional) {
document.getElementById(_name).disabled = !_status;
document.getElementById(_name).style.color = _color;
}
document.getElementById(_name).style.color = _color;
}
function mouseUp() {
drag = false;