Proof of concept for #160, 'Allow recheck time in seconds'. Currently retains 'minutes_between_check' key:value, so I'm requesting a review before globally renaming it 'to duration_between_check' or similar.

This commit is contained in:
ntmmfts
2022-01-02 09:56:54 -10:00
parent a37a5038d8
commit a7763ae9a3
6 changed files with 54 additions and 12 deletions

View File

@@ -1,10 +1,13 @@
// Rewrite this is a plugin.. is all this JS really 'worth it?'
// display correct label and messages for minutes or seconds
document.addEventListener("DOMContentLoaded", function(event) {
use_seconds_change();
});
window.addEventListener('hashchange', function() {
var tabs = document.getElementsByClassName('active');
while (tabs[0]) {
tabs[0].classList.remove('active')
tabs[0].classList.remove('active');
}
set_active_tab();
}, false);
@@ -37,7 +40,7 @@ function focus_error_tab() {
var tabs = document.querySelectorAll('.tabs li a'),i;
for (i = 0; i < tabs.length; ++i) {
var tab_name=tabs[i].hash.replace('#','');
var pane_errors=document.querySelectorAll('#'+tab_name+' .error')
var pane_errors=document.querySelectorAll('#'+tab_name+' .error');
if (pane_errors.length) {
document.location.hash = '#'+tab_name;
return true;
@@ -46,6 +49,38 @@ function focus_error_tab() {
return false;
}
function use_seconds_change() {
var isChecked = document.querySelectorAll('input[id="use_seconds"]:checked').length
var labelIntegerField = document.querySelector("label[for=minutes_between_check]");
var msgDefault = document.getElementById("minutes-message-default");
var msgNonDefault = document.getElementById("minutes-message-non-default");
var msgWarning = document.getElementById("seconds-warning");
if (isChecked) {
labelIntegerField.innerHTML = "Maximum time in seconds until recheck";
try {
msgDefault.style.display = "none";
} catch(error) {
// continue, won't be present if not default interval
}
try {
msgNonDefault.style.display = "none";
} catch(error) {
// continue, won't be present if not default interval
}
msgWarning.style.display = "";
}
else {
labelIntegerField.innerHTML = "Maximum time in minutes until recheck";
try {
msgDefault.style.display = "";
} catch(error) {
// continue, won't be present if not default interval
}
try {
msgNonDefault.style.display = "";
} catch(error) {
// continue, won't be present if not default interval
}
msgWarning.style.display = "none";
}
}