First commit

Halb fertig
This commit is contained in:
2019-04-02 22:07:35 +02:00
commit 3695b33c83
14 changed files with 1858 additions and 0 deletions

2
public/javascripts/jquery-3.3.1.min.js vendored Executable file

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,97 @@
//
// Nach dem Laden des Dokumentes:
$(document).ready(function() {
console.log("Es geht los");
const URL = "switch/";
const brenndauer = 300; // Dauer der Anzeige in Sekunden
const checktime = 5000000; // alle 30sec Zustand prüfen
let status = "";
let tr;
let interval;
$('#versn').html("V " + VERSION + ' ' + VDATE); // Vesion anzeigen
$("#auszeile").hide(); // Meldezeile AUS schalten
// sendCommand(URL,"PowerOnState%200"); // OFF bei Power ON
// sendCommand(URL,"PulseTime%20"+(brenndauer+100)); // Brenndauer einstellen
sendCommand(URL,"get_status")
.then(st => {
console.log("Status = ",st);
checkStatus(st);
});
$("#schalter").click(function() {
let message;
clearTimeout(interval);
if (status == 'ON') {
console.log("Sende OFF")
sendCommand(URL,"switch_off")
.then(st => {
console.log("Status = ", st);
checkStatus(st);
interval = setInterval(sendTimedCommand,5000);
});
} else {
console.log("Sende ON")
sendCommand(URL,"switch_on")
.then(st => {
console.log("Status = ",st);
checkStatus(st);
interval = setInterval(sendTimedCommand,5000);
});
}
});
function sendCommand(url,cmnd) {
const p = new Promise((resolve, reject) => {
$.getJSON(url + cmnd, function (data, err) { // AJAX Call
if (err != 'success') {
reject(err);
alert("Fehler <br />" + err); // if error, show it
} else {
console.log("gekommen: ", data);
resolve(data.status);
}
});
});
return p;
}
function sendTimedCommand() {
console.log("time check");
sendCommand(URL,'check')
.then(st => {
console.log("Timed Status= ", st);
status = st;
if (st != 'pending') {
clearTimeout(tr);
if (st == 'ON') {
$('#schalter').html('Laufschrift <b>AUS</b> schalten');
$('#status').text('EIN');
$('#statuszeile').addClass('machrot');
$('#auszeile').show();
} else {
$('#schalter').html('Laufschrift <b>EIN</b> schalten');
$('#status').text('AUS');
$('#statuszeile').removeClass('machrot');
$('#auszeile').hide();
}
}
});
}
function checkStatus(st) {
if (st == 'pending') {
tr = setTimeout(sendTimedCommand,500);
}
}
});

View File

@@ -0,0 +1,12 @@
// VersiosNummern und -Geschichte
var VERSION="1.0";
var VDATE="2019-04-02";
/* History
Rev. Datum Entwickler
1.0 2019-04-02 rxf
- Erste Version zum Testen
*/

View File

@@ -0,0 +1,76 @@
@CHARSET "UTF-8";
body {
font-family: Arial, Verdana, Helevetica, sans-serif;
position:relative;
margin: 3px 0 3px 0;
padding: 0;
text-align: center;
}
#container {
width: 95%;
height: 100%;
margin: 20px auto;
border: solid 2px black;
background: #EEEEEE;
border: 1px solid black;
}
#topline {
width: 97%;
margin: auto auto;
margin-top: 10px;
text-align: center;
}
#topline h2 {
text-align: center;
font-weight: bold;
}
#buttons {
margin: auto auto;
margin-top:40px;
text-align: center;
}
#schalter {
font-size: 150%;
height: 50px;
border: 1px solid blue;
}
#statuszeile {
margin-top: 20px;
font-size:130%;
}
#auszeile {
width: 95%;
margin: auto auto;
margin-top: 20px;
color: red;
font-size: 95%;
}
.machrot {
color: red;
}
#author {
font-size:80%;
height: 20px;
width: 95%;
margin: 20px auto 5px auto;
}
#mailadr {
float: left;
}
#versn {
float: right;
}