diff --git a/wled00/data/common.js b/wled00/data/common.js index a281dbfc7..6e72428d5 100644 --- a/wled00/data/common.js +++ b/wled00/data/common.js @@ -175,75 +175,3 @@ function sendDDP(ws, start, len, colors) { } return true; } - -// Pin dropdown utilities for settings pages -function addDropdown(field) { - let sel = cE('select'); - sel.classList.add("pin"); - let inp = d.getElementsByName(field)[0]; - if (inp && inp.tagName === "INPUT" && (inp.type === "text" || inp.type === "number")) { - let v = inp.value; - let n = inp.name; - // copy the existing input element's attributes to the new select element - for (var i = 0; i < inp.attributes.length; ++ i) { - var att = inp.attributes[i]; - // type and value don't apply, so skip them - if (att.name != 'type' && att.name != 'value' && att.name != 'class' && att.name != 'style') { - sel.setAttribute(att.name, att.value); - } - } - sel.setAttribute("data-val", v); - sel.setAttribute("onchange", "pinUpd(this)"); - // finally, replace the old input element with the new select element - inp.parentElement.replaceChild(sel, inp); - return sel; - } - return null; -} - -function addOption(sel,txt,val) { - if (sel===null) return; // select object missing - let opt = cE("option"); - opt.value = val; - opt.text = txt; - sel.appendChild(opt); - for (let i=0; i{ - if (i.value!=="" && i.value>=0 && i.max<255) - pins.push(i.value); - }); - let selects = d.Sf.querySelectorAll("select.pin"); - for (let sel of selects) { - if (sel == e) continue; - Array.from(sel.options).forEach((i)=>{ - let led = pins.includes(i.value); - if (!(i.value==oldV || i.value==e.value || led)) return; - if (i.value == -1) { - i.text = "unused"; - return; - } - i.text = i.value; - if (i.value==oldV) { - i.disabled = false; - } - if (i.value==e.value || led) { - i.disabled = true; - i.text += ` ${led?'LED':txt}`; - } - if (d.ro_gpio.includes(parseInt(i.value))) i.text += " (R/O)"; - }); - } -} diff --git a/wled00/data/settings_leds.htm b/wled00/data/settings_leds.htm index f26cff9db..8a3330e47 100644 --- a/wled00/data/settings_leds.htm +++ b/wled00/data/settings_leds.htm @@ -743,7 +743,75 @@ Swap: