diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/css/stylesheets.css b/dmnverifierfrontend/src/main/resources/META-INF/resources/css/stylesheets.css index eaef15d9974cbdd05273461df6700ef2cbc9486c..1b6990e0e7cdcc2b34dfb7e42076daefb3458539 100644 --- a/dmnverifierfrontend/src/main/resources/META-INF/resources/css/stylesheets.css +++ b/dmnverifierfrontend/src/main/resources/META-INF/resources/css/stylesheets.css @@ -26,6 +26,12 @@ p { margin: 5px; } +input[type=checkbox] { + transform: scale(1.5); + background-color: white; + margin: 10px; +} + .status-dot { height: 15px; width: 15px; @@ -201,7 +207,7 @@ span.select2 { padding: 3px; display: flex; justify-content: flex-start; - align-items: flex-start; + align-items: center; flex-wrap: wrap; } diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifier.js b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifier.js index e987326f84a7d9288c1e4aa1f838d6fad93d75d9..f644c35227be006c2de8fd437c1618753d50d9a0 100644 --- a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifier.js +++ b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifier.js @@ -20,12 +20,31 @@ let types = []; let $verifierTypes; let lastTypeSelect = undefined; -let $select = $(` +const $buttonReconnect = $(` + <button class="clickable dmn-verifier-header-item" id="dmn-button-reload-verifier" + title="Reconnect backend" onClick="loadAvailableTypes()"> + Reconnect verification backend</button> + `); +const $buttonClean = $(` + <button class="clickable dmn-verifier-header-item" id="dmn-button-clean" + title="Request verifications" onClick="cleanHighlightFunction()"> + Clean</button> + `); +const $select = $(` <select name="verifier" id="verifier" class="dmn-verifier-header-item dmn-verifier-select clickable" title="Select calculated verification" onchange="renderVerifierResult(this)"> `); +const $buttonVerify = $(` + <button class="clickable dmn-verifier-header-item" id="dmn-button-verify" + title="Request verifications" onClick="checkVerifications()"> + Verify</button> + `); +const $checkBoxReverify = $(` + <input type="checkbox" name="reverify" checked> +`); +let $reverifyElement = $(`<label>Reverify</label>`).append($checkBoxReverify); function handleStatus() { let $dot = $('#backend-status'); @@ -84,17 +103,9 @@ function cleanDmnVerifierRoot() { `); // check, if backend is available if ($verifierTypes === undefined) { - $header.append($(` - <button class="clickable dmn-verifier-header-item" id="dmn-button-reload-verifier" - title="Reconnect backend" onClick="loadAvailableTypes()"> - Reconnect verification backend</button> - `)); + $header.append($buttonReconnect); } else { - $header.append($(` - <button class="clickable dmn-verifier-header-item" id="dmn-button-clean" - title="Request verifications" onClick="cleanHighlightFunction()"> - Clean</button> - `)); + $header.append($buttonClean); $header.append($verifierTypes); $verifierTypes.select2({ containerCssClass: "dmn-verifier-header-item dmn-verifier-select clickable", @@ -106,11 +117,8 @@ function cleanDmnVerifierRoot() { allowClear: true, }); // Add Button Verifications - $header.append($(` - <button class="clickable dmn-verifier-header-item" id="dmn-button-verify" - title="Request verifications" onClick="checkVerifications()"> - Verify</button> - `)); + $header.append($buttonVerify); + $header.append($reverifyElement); $select.empty(); $header.append($select); } diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifierActions.js b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifierActions.js index e4d72c9277101869d0bdf0bff4654fda25f50f9b..d6021ab5259a6a54a18b305a8648f7f1d4c65a4e 100644 --- a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifierActions.js +++ b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifierActions.js @@ -25,15 +25,15 @@ function getSheetElementWithId(id) { function getRandomNewPointInCycle(sourceX, sourceY, w, offsetX, offsetY) { let dx = Math.floor(Math.random() * Math.floor(2 * w)) - w; let dy = Math.sqrt(w * w - dx * dx); + if (Math.random() > 0.5) { + dy *= -1; + } if (offsetX) { dx += offsetX; } if (offsetY) { dy += offsetY; } - if (Math.random() > 0.5) { - dy *= -1; - } return {x: sourceX + dx, y: sourceY + dy}; } @@ -41,6 +41,8 @@ function getRandomNewPointInCycle(sourceX, sourceY, w, offsetX, offsetY) { * * @param {VerificationEntry} verificationEntry * @param {VerificationFix} fix + * @param id fix row id + * @param $callerButton */ function performVerificationFix(verificationEntry, fix, id, $callerButton) { console.log("FIX", fix); @@ -48,6 +50,7 @@ function performVerificationFix(verificationEntry, fix, id, $callerButton) { cleanHighlightFunction(); $('.verification-container').removeClass('highlight-soft'); $('#ver-entry-' + id).addClass('highlight-soft'); + let cud = false; for (let i = 0; i < fix.actions.length; i++) { switch (fix.actions[i].actionType) { case 'SHOW': @@ -55,19 +58,25 @@ function performVerificationFix(verificationEntry, fix, id, $callerButton) { break; case 'UPDATE': alert("Action not defined: " + fix); - $callerButton.css('display', 'none'); + cud = true; break; case 'CREATE': performVerificationFixCREATE(verificationEntry, fix.actions[i]); - //$callerButton.css('display', 'none'); + cud = true; break; case 'DELETE': performVerificationFixDELETE(verificationEntry, fix.actions[i]); - $callerButton.css('display', 'none'); + cud = true; break; default: alert("Action not defined: " + fix); } + if (cud) { + $callerButton.css('display', 'none'); + if ($checkBoxReverify.is(":checked")) { + checkVerifications(); + } + } performHighlightFunction(); } }