Visual improvements for web interface

This commit is contained in:
Spacehuhn
2021-01-11 18:04:59 +01:00
parent 077eee674b
commit d95d7c7aa7
14 changed files with 844 additions and 775 deletions

View File

@@ -1,36 +1,38 @@
/* This software is licensed under the MIT License: https://github.com/spacehuhntech/esp8266_deauther */
var settingsJson = {};
function load(){
getFile("settings.json",function(res){
function load() {
getFile("settings.json", function (res) {
settingsJson = JSON.parse(res);
draw();
});
}
function draw(){
function draw() {
var html = "";
for (var key in settingsJson) {
key = esc(key);
if (settingsJson.hasOwnProperty(key)) {
html += "<div class='row'>"
+ "<div class='col-6'>"
+ "<label class='settingName "+(typeof settingsJson[key] == "boolean" ? "labelFix":"")+"' for='"+key+"'>"+key+":</label>"
+ "<label class='settingName " + (typeof settingsJson[key] == "boolean" ? "labelFix" : "") + "' for='" + key + "'>" + key + ":</label>"
+ "</div>"
+ "<div class='col-6'>";
if(typeof settingsJson[key] == "boolean"){
html += "<label class='checkBoxContainer'><input type='checkbox' name='"+key+"' "+(settingsJson[key] ? "checked" : "")+" onchange='save(\""+key+"\",!settingsJson[\""+key+"\"])'><span class='checkmark'></span></label>";
}else if(typeof settingsJson[key] == "number"){
html += "<input type='number' name='"+key+"' value="+settingsJson[key]+" onchange='save(\""+key+"\",parseInt(this.value))'>";
}else if(typeof settingsJson[key] == "string"){
html += "<input type='text' name='"+key+"' value='"+settingsJson[key].toString()+"' "+(key=="version"?"readonly":"")+" onchange='save(\""+key+"\",this.value)'>";
if (typeof settingsJson[key] == "boolean") {
html += "<label class='checkBoxContainer'><input type='checkbox' name='" + key + "' " + (settingsJson[key] ? "checked" : "") + " onchange='save(\"" + key + "\",!settingsJson[\"" + key + "\"])'><span class='checkmark'></span></label>";
} else if (typeof settingsJson[key] == "number") {
html += "<input type='number' name='" + key + "' value=" + settingsJson[key] + " onchange='save(\"" + key + "\",parseInt(this.value))'>";
} else if (typeof settingsJson[key] == "string") {
html += "<input type='text' name='" + key + "' value='" + settingsJson[key].toString() + "' " + (key == "version" ? "readonly" : "") + " onchange='save(\"" + key + "\",this.value)'>";
}
html += "</div>"
+ "</div>"
+ "<div class='row'>"
+ "<div class='col-12'>"
+ "<p>"+lang("setting_"+key)+"</p>"
+ "<p>" + lang("setting_" + key) + "</p>"
+ "<hr>"
+ "</div>"
+ "</div>";
@@ -39,12 +41,12 @@ function draw(){
getE("settingsList").innerHTML = html;
}
function save(key, value){
if(key){
function save(key, value) {
if (key) {
settingsJson[key] = value;
getFile("run?cmd=set "+key+" \""+value+"\"");
}else{
getFile("run?cmd=save settings",function(res){
getFile("run?cmd=set " + key + " \"" + value + "\"");
} else {
getFile("run?cmd=save settings", function (res) {
load();
});
}