open releases in new tab

This commit is contained in:
Woody 2020-09-06 17:13:08 +02:00
parent 2f2bebe506
commit 6e3940c8eb
4 changed files with 1620 additions and 1625 deletions

View File

@ -33,7 +33,7 @@
<body> <body>
<h2>WLED Software Update</h2>Installed version: ##VERSION##<br>Download the latest binary: <a <h2>WLED Software Update</h2>Installed version: ##VERSION##<br>Download the latest binary: <a
href="https://github.com/Aircoookie/WLED/releases"><img href="https://github.com/Aircoookie/WLED/releases" target="_blank"><img
src="https://img.shields.io/github/release/Aircoookie/WLED.svg?style=flat-square"></a><br> src="https://img.shields.io/github/release/Aircoookie/WLED.svg?style=flat-square"></a><br>
<form method='POST' action='/update' enctype='multipart/form-data'><input type='file' class="bt" name='update' <form method='POST' action='/update' enctype='multipart/form-data'><input type='file' class="bt" name='update'
required><br><input type='submit' class="bt" value='Update!'></form><button type="button" class="bt" required><br><input type='submit' class="bt" value='Update!'></form><button type="button" class="bt"

View File

@ -41,7 +41,7 @@ const char PAGE_update[] PROGMEM = R"=====(<!DOCTYPE html><html><head><meta cont
.bt{background:#333;color:#fff;font-family:Verdana,sans-serif;border:.3ch solid #333;display:inline-block;font-size:20px;margin:8px;margin-top:12px}input[type=file]{font-size:16px}body{font-family:Verdana,sans-serif;text-align:center;background:#222;color:#fff;line-height:200%} .bt{background:#333;color:#fff;font-family:Verdana,sans-serif;border:.3ch solid #333;display:inline-block;font-size:20px;margin:8px;margin-top:12px}input[type=file]{font-size:16px}body{font-family:Verdana,sans-serif;text-align:center;background:#222;color:#fff;line-height:200%}
</style></head><body><h2>WLED Software Update</h2>Installed version: 0.10.2<br> </style></head><body><h2>WLED Software Update</h2>Installed version: 0.10.2<br>
Download the latest binary: <a Download the latest binary: <a
href="https://github.com/Aircoookie/WLED/releases"><img href="https://github.com/Aircoookie/WLED/releases" target="_blank"><img
src="https://img.shields.io/github/release/Aircoookie/WLED.svg?style=flat-square"> src="https://img.shields.io/github/release/Aircoookie/WLED.svg?style=flat-square">
</a><br><form method="POST" action="/update" enctype="multipart/form-data"> </a><br><form method="POST" action="/update" enctype="multipart/form-data">
<input type="file" class="bt" name="update" required><br><input type="submit" <input type="file" class="bt" name="update" required><br><input type="submit"

View File

@ -167,163 +167,163 @@ const char PAGE_settings_dmx[] PROGMEM = R"=====()=====";
// Autogenerated from wled00/data/settings_ui.htm, do not edit!! // Autogenerated from wled00/data/settings_ui.htm, do not edit!!
const char PAGE_settings_ui[] PROGMEM = R"=====(<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" const char PAGE_settings_ui[] PROGMEM = R"=====(<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport"
content="width=500"><title>UI Settings</title><script>var d = document; content="width=500"><title>UI Settings</title><script>var d = document;
var initial_ds, initial_st; var initial_ds, initial_st;
var sett = null; var sett = null;
var l = { var l = {
"comp":{ "comp":{
"labels":"Show button labels", "labels":"Show button labels",
"colors":{ "colors":{
"LABEL":"Color selection methods", "LABEL":"Color selection methods",
"picker": "Color Wheel", "picker": "Color Wheel",
"rgb": "RGB sliders", "rgb": "RGB sliders",
"quick": "Quick color selectors", "quick": "Quick color selectors",
"hex": "HEX color input" "hex": "HEX color input"
}, },
"pcmbot": "Show bottom tab bar in PC mode" "pcmbot": "Show bottom tab bar in PC mode"
}, },
"theme":{ "theme":{
"alpha": { "alpha": {
"bg":"Background opacity", "bg":"Background opacity",
"tab":"Button opacity" "tab":"Button opacity"
}, },
"bg":{ "bg":{
"url":"BG image URL" "url":"BG image URL"
}, },
"color":{ "color":{
"bg":"BG HEX color" "bg":"BG HEX color"
} }
} }
}; };
function gId(s) function gId(s)
{ {
return d.getElementById(s); return d.getElementById(s);
} }
function isObject(item) { function isObject(item) {
return (item && typeof item === 'object' && !Array.isArray(item)); return (item && typeof item === 'object' && !Array.isArray(item));
} }
function set(path, obj, val) { function set(path, obj, val) {
var tar = obj; var tar = obj;
var pList = path.split('_'); var pList = path.split('_');
var len = pList.length; var len = pList.length;
for(var i = 0; i < len-1; i++) { for(var i = 0; i < len-1; i++) {
var elem = pList[i]; var elem = pList[i];
if( !tar[elem] ) tar[elem] = {} if( !tar[elem] ) tar[elem] = {}
tar = tar[elem]; tar = tar[elem];
} }
tar[pList[len-1]] = val; tar[pList[len-1]] = val;
} }
function addRec(s, path = "", label = null) function addRec(s, path = "", label = null)
{ {
var str = ""; var str = "";
for (i in s) for (i in s)
{ {
var fk = path + (path?'_':'') + i; var fk = path + (path?'_':'') + i;
if (isObject(s[i])) { if (isObject(s[i])) {
if (label && label[i] && label[i]["LABEL"]) str += `<h3>${label[i]["LABEL"]}</h3>`; if (label && label[i] && label[i]["LABEL"]) str += `<h3>${label[i]["LABEL"]}</h3>`;
str += addRec(s[i], fk, label? label[i] : null); str += addRec(s[i], fk, label? label[i] : null);
} else { } else {
var lb = fk; var lb = fk;
if (label && label[i]) lb = label[i]; if (label && label[i]) lb = label[i];
else if (s[i+'LABEL']) lb = s[i+'LABEL']; else if (s[i+'LABEL']) lb = s[i+'LABEL'];
if (i.indexOf('LABEL') > 0) continue; if (i.indexOf('LABEL') > 0) continue;
var t = typeof s[i]; var t = typeof s[i];
if (gId(fk)) { //already exists if (gId(fk)) { //already exists
if(t === 'boolean') if(t === 'boolean')
{ {
gId(fk).checked = s[i]; gId(fk).checked = s[i];
} else { } else {
gId(fk).value = s[i]; gId(fk).value = s[i];
} }
if (gId(fk).previousElementSibling.matches('.l')) { if (gId(fk).previousElementSibling.matches('.l')) {
gId(fk).previousElementSibling.innerHTML = lb; gId(fk).previousElementSibling.innerHTML = lb;
} }
} else { } else {
if(t === 'boolean') if(t === 'boolean')
{ {
str += `${lb}: <input class="agi cb" type="checkbox" id=${fk} ${s[i]?"checked":""}><br>`; str += `${lb}: <input class="agi cb" type="checkbox" id=${fk} ${s[i]?"checked":""}><br>`;
} else if (t === 'number') } else if (t === 'number')
{ {
str += `${lb}: <input class="agi" type="number" id=${fk} value=${s[i]}><br>`; str += `${lb}: <input class="agi" type="number" id=${fk} value=${s[i]}><br>`;
} else if (t === 'string') } else if (t === 'string')
{ {
str += `${lb}:<br><input class="agi" id=${fk} value=${s[i]}><br>`; str += `${lb}:<br><input class="agi" id=${fk} value=${s[i]}><br>`;
} }
} }
} }
} }
return str; return str;
} }
function genForm(s) { function genForm(s) {
var str = ""; var str = "";
str = addRec(s,"",l); str = addRec(s,"",l);
gId('gen').innerHTML = str; gId('gen').innerHTML = str;
} }
function GetLS() function GetLS()
{ {
sett = localStorage.getItem('wledUiCfg'); sett = localStorage.getItem('wledUiCfg');
if (!sett) gId('lserr').style.display = "inline"; if (!sett) gId('lserr').style.display = "inline";
try { try {
sett = JSON.parse(sett); sett = JSON.parse(sett);
} catch (e) { } catch (e) {
sett = {}; sett = {};
gId('lserr').style.display = "inline"; gId('lserr').style.display = "inline";
gId('lserr').innerHTML = "&#9888; Settings JSON parsing failed. (" + e + ")"; gId('lserr').innerHTML = "&#9888; Settings JSON parsing failed. (" + e + ")";
} }
genForm(sett); genForm(sett);
gId('dm').checked = (gId('theme_base').value === 'light'); gId('dm').checked = (gId('theme_base').value === 'light');
} }
function SetLS() function SetLS()
{ {
var l = d.querySelectorAll('.agi'); var l = d.querySelectorAll('.agi');
for (var i = 0; i < l.length; i++) { for (var i = 0; i < l.length; i++) {
var e = l[i]; var e = l[i];
var val = e.classList.contains('cb') ? e.checked : e.value; var val = e.classList.contains('cb') ? e.checked : e.value;
set(e.id, sett, val); set(e.id, sett, val);
console.log(`${e.id} set to ${val}`); console.log(`${e.id} set to ${val}`);
} }
try { try {
localStorage.setItem('wledUiCfg', JSON.stringify(sett)); localStorage.setItem('wledUiCfg', JSON.stringify(sett));
gId('lssuc').style.display = "inline"; gId('lssuc').style.display = "inline";
} catch (e) { } catch (e) {
gId('lssuc').style.display = "none"; gId('lssuc').style.display = "none";
gId('lserr').style.display = "inline"; gId('lserr').style.display = "inline";
gId('lserr').innerHTML = "&#9888; Settings JSON saving failed. (" + e + ")"; gId('lserr').innerHTML = "&#9888; Settings JSON saving failed. (" + e + ")";
} }
} }
function Save() { function Save() {
SetLS(); SetLS();
if (d.Sf.DS.value != initial_ds || d.Sf.ST.checked != initial_st) d.Sf.submit(); if (d.Sf.DS.value != initial_ds || d.Sf.ST.checked != initial_st) d.Sf.submit();
} }
function S() function S()
{ {
GetV(); GetV();
initial_ds = d.Sf.DS.value; initial_ds = d.Sf.DS.value;
initial_st = d.Sf.ST.checked; initial_st = d.Sf.ST.checked;
GetLS(); GetLS();
} }
function H() function H()
{ {
window.open("https://github.com/Aircoookie/WLED/wiki/Settings#user-interface-settings"); window.open("https://github.com/Aircoookie/WLED/wiki/Settings#user-interface-settings");
} }
function B() function B()
{ {
window.open("/settings","_self"); window.open("/settings","_self");
} }
function UI() function UI()
{ {
gId('idonthateyou').style.display = (gId('dm').checked) ? 'inline':'none'; gId('idonthateyou').style.display = (gId('dm').checked) ? 'inline':'none';
var f = gId('theme_base'); var f = gId('theme_base');
if (f) f.value = (gId('dm').checked) ? 'light':'dark'; if (f) f.value = (gId('dm').checked) ? 'light':'dark';
} }
function GetV() {var d=document; function GetV() {var d=document;
%CSS%%SCSS%</head><body onload="S()"> %CSS%%SCSS%</head><body onload="S()">
<form id="form_s" name="Sf" method="post"><div <form id="form_s" name="Sf" method="post"><div
style="position:sticky;top:0;background-color:#222"><div class="helpB"><button style="position:sticky;top:0;background-color:#222"><div class="helpB"><button

File diff suppressed because it is too large Load Diff