Version 1.0
Initial version.
This commit is contained in:
87
data/function.js
Executable file
87
data/function.js
Executable file
@ -0,0 +1,87 @@
|
||||
var xmlHttp = createXmlHttpObject();
|
||||
function createXmlHttpObject() {
|
||||
if (window.XMLHttpRequest) {
|
||||
xmlHttp = new XMLHttpRequest();
|
||||
} else {
|
||||
xmlHttp = new ActiveXObject('Microsoft.XMLHTTP');
|
||||
}
|
||||
return xmlHttp;
|
||||
}
|
||||
|
||||
function load() {
|
||||
if (xmlHttp.readyState == 0 || xmlHttp.readyState == 4) {
|
||||
xmlHttp.open('PUT', '/config.json', true);
|
||||
xmlHttp.send(null);
|
||||
xmlHttp.onload = function () {
|
||||
jsonResponse = JSON.parse(xmlHttp.responseText);
|
||||
loadBlock();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function loadBlock() {
|
||||
newData = JSON.parse(xmlHttp.responseText);
|
||||
data = document.getElementsByTagName('body')[0].innerHTML;
|
||||
var newString;
|
||||
for (var key in newData) {
|
||||
newString = data.replace(new RegExp('{{' + key + '}}', 'g'), newData[key]);
|
||||
data = newString;
|
||||
}
|
||||
document.getElementsByTagName('body')[0].innerHTML = newString;
|
||||
setFirmvareValue('version', 'firmware');
|
||||
setGpioValue('relayPinSelect', 'relayPin');
|
||||
setGpioValue('relayPinTypeSelect', 'relayPinType');
|
||||
setGpioValue('ledPinSelect', 'ledPin');
|
||||
setGpioValue('ledPinTypeSelect', 'ledPinType');
|
||||
setGpioValue('buttonPinSelect', 'buttonPin');
|
||||
setGpioValue('buttonPinTypeSelect', 'buttonPinType');
|
||||
setGpioValue('extButtonPinSelect', 'extButtonPin');
|
||||
setGpioValue('extButtonPinTypeSelect', 'extButtonPinType');
|
||||
handleServerResponse();
|
||||
}
|
||||
|
||||
function getValue(id) {
|
||||
var value = document.getElementById(id).value;
|
||||
return value;
|
||||
}
|
||||
|
||||
function getSelectValue(id) {
|
||||
var select = document.getElementById(id);
|
||||
var value = select.value;
|
||||
return value;
|
||||
}
|
||||
|
||||
function sendRequest(submit, server) {
|
||||
request = new XMLHttpRequest();
|
||||
request.open("GET", server, true);
|
||||
request.send();
|
||||
}
|
||||
|
||||
function saveSetting(submit) {
|
||||
server = "/setting?deviceName=" + getValue('deviceName')
|
||||
+ "&espnowNetName=" + getValue('espnowNetName')
|
||||
+ "&relayPin=" + getSelectValue('relayPinSelect')
|
||||
+ "&relayPinType=" + getSelectValue('relayPinTypeSelect')
|
||||
+ "&ledPin=" + getSelectValue('ledPinSelect')
|
||||
+ "&ledPinType=" + getSelectValue('ledPinTypeSelect')
|
||||
+ "&buttonPin=" + getSelectValue('buttonPinSelect')
|
||||
+ "&buttonPinType=" + getSelectValue('buttonPinTypeSelect')
|
||||
+ "&extButtonPin=" + getSelectValue('extButtonPinSelect')
|
||||
+ "&extButtonPinType=" + getSelectValue('extButtonPinTypeSelect');
|
||||
sendRequest(submit, server);
|
||||
alert("Please restart device for changes apply.");
|
||||
}
|
||||
|
||||
function restart(submit) {
|
||||
server = "/restart";
|
||||
sendRequest(submit, server);
|
||||
}
|
||||
|
||||
function setFirmvareValue(id, value) {
|
||||
document.getElementById(id).innerHTML = document.getElementById(value).value;
|
||||
}
|
||||
|
||||
function setGpioValue(id, value) {
|
||||
var select = document.getElementById(id);
|
||||
select.value = document.getElementById(value).value;
|
||||
}
|
Reference in New Issue
Block a user