diff --git a/wled00/data/settings_time.htm b/wled00/data/settings_time.htm index cc98fd1b1b..7f75f9c475 100644 --- a/wled00/data/settings_time.htm +++ b/wled00/data/settings_time.htm @@ -83,20 +83,18 @@ if (sel.value === "" && initialVal !== null && initialVal !== "") sel.value = initialVal; if (sel.value === "") sel.value = "0"; } - function expand(o,i) + function expand(i) { - var t = gId("WD"+i); - t.style.display = t.style.display!=="none" ? "none" : ""; - o.innerHTML = t.style.display==="none" ? "📅" : "✕"; + gId("WD"+i).style.display = ""; } function Cs() { gId("cac").style.display=(gN("OL").checked)?"block":"none"; } function BTa() { timerCount = 0; - gId("TMT").innerHTML = "En.TypeHourMinute"; + gId("TMT").innerHTML = "En.TypeHourMinute"; } function addTimerRow(hour, minute, preset, weekdays, monthStart, dayStart, monthEnd, dayEnd) { - if (timerCount >= maxTimers) return; + if (gId("TMT").querySelectorAll('tbody[id^="TG"]').length >= maxTimers) return; var i = timerCount++; var isSunrise = (hour === TIMER_SUNRISE); var isSunset = (hour === TIMER_SUNSET); @@ -113,7 +111,7 @@ var dow = weekdays >> 1; var container = gId("TMT"); var hourVal = isSpecial ? 0 : hour; - var presetOpts = '' + sortedPresetOptions; + var presetOpts = '' + sortedPresetOptions; var weekdayTable = ''; for (j=1;j<8;j++) weekdayTable += ``; @@ -140,12 +138,13 @@ - + + - + `; var timerExpanded = ` @@ -158,13 +157,20 @@
- + `; - container.insertAdjacentHTML("beforeend", timerMain + timerExpanded); + var timerGroup = document.createElement('tbody'); + timerGroup.id = "TG"+i; + timerGroup.innerHTML = timerMain + timerExpanded; + container.appendChild(timerGroup); var timerPresetSel = gId("T"+i); sPSV(timerPresetSel, preset, "data-preset"); } + function rTR(i) { // remove timer row immediately, no save required + var tg = gId("TG"+i); + if (tg) tg.remove(); + } function TT(i) { var sel = gId("TS"+i); var hour = gId("H"+i); @@ -212,7 +218,7 @@ } } function rTOPO() { // refreshTimerPresetOptions - var presetOpts = '' + sortedPresetOptions; + var presetOpts = '' + sortedPresetOptions; for (var i=0; i tbody[id^="TG"]').forEach(function(tg){ + var i = tg.id.slice(2); var m=1, val=0; for(j=0;j<8;j++) { val+=gId(("W"+i)+j).checked*m; m*=2;} gId("W"+i).value=val; @@ -267,7 +274,7 @@ hour.disabled = false; hour.value = sel.value; } - } + }); if (d.Sf.LTR.value==="S") { d.Sf.LT.value = -1*parseFloat(d.Sf.LT.value); } if (d.Sf.LNR.value==="W") { d.Sf.LN.value = -1*parseFloat(d.Sf.LN.value); } }
MTWTFSS
>(j-1))&1?'checked':''}>
📅
📅