Skip to content

Instantly share code, notes, and snippets.

@dirkmueller
Created January 6, 2020 22:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dirkmueller/829a83858f8782337cb7900d2329978c to your computer and use it in GitHub Desktop.
Save dirkmueller/829a83858f8782337cb7900d2329978c to your computer and use it in GitHub Desktop.
<!DOCTYPE html>
<html>
<head>
<title>Konfiguration</title>
<meta name='viewport' content='width=device-width'>
<style type='text/css'>
body {
font-family: Arial;
margin: 0
}
.content {
margin: 10px
}
.r {
text-align: right
}
td {
vertical-align: top;
}
.content a {
text-decoration: none;
padding: 10px;
background: #3ba;
color: white;
display: block;
width: auto;
border-radius: 5px;
box-shadow:0px 4px 4px #3ba;
}
.wifi {
background: none;
color: blue;
padding: 5px;
display: inline;
}
input[type='text'] {
width: 100%;
}
input[type='password'] {
width: 100%;
}
input[type='submit'] {
border-radius: 5px;
font-size: medium;
padding: 5px;
box-shadow:0px 4px 4px #b33;
}
.s_green {
padding: 9px !important;
width: 100%;
border-style: none;
background: #3ba;
color: white;
text-align: left;
}
.s_red {
padding: 9px !important;
width: 100%;
border-style: none;
background: #B33;
color: white;
text-align: left;
}
.s_red:hover {
background: #D44;
}
.tabs {
display: flex;
flex-direction: row;
align-items: stretch;
align-content: flex-end;
justify-content: flex-start;
}
.tab {
padding: 10px 20px;
display: inline-block;
color: #333;
margin: 0px 20px;
}
.panels {
min-height: 200px;
width: 100%;
overflow: hidden;
padding: 20px;
}
.radio { display: none; }
.panel {
display: none;
}
#one:checked ~ .panels > #one-panel,
#two:checked ~ .panels > #two-panel,
#three:checked ~ .panels > #three-panel,
#four:checked ~ .panels > #four-panel
{
display: block
}
#one:checked ~ .tabs > #one-tab,
#two:checked ~ .tabs > #two-tab,
#three:checked ~ .tabs > #three-tab,
#four:checked ~ .tabs > #four-tab
{
background: #fff;
color: #000;
box-shadow: 0px 6px 0px #3ba;
}
</style>
</head>
<body>
<form method='POST' action='/config' style='width:100%;'>
<div style='min-height:129px;background-color:#3ba;margin-bottom:0px; box-shadow: 0px 4px 6px #3ba;'><a href='/'
style='background:none;display:inline'><img src='/images?name=luftdaten_logo' style='float:left;margin:20px'
width='100' height='89' /></a>
<h3 style='margin:0'>Feinstaubsensor</h3><small>ID: 1234<br />MAC: XX:XX:XX:XX:XX:XX<br />
<a
href='https://codefor.de/stuttgart/' target='_blank' rel='noreferrer'
style='display:inline;text-align: right; background:none;color:black;box-shadow: none'>&copy; Open Knowledge Lab Stuttgart a.o. (Code for
Germany)</a><br />
<a href='https://github.com/opendata-stuttgart/sensors-software/labels/bug' target='_blank'
rel='noreferrer'>Report an issue</a>
</small>
</div>
<div class='content'>
<h4>Übersicht » Konfiguration</h4>
<input class="radio" id="one" name="group" type="radio" checked>
<input class="radio" id="two" name="group" type="radio">
<input class="radio" id="three" name="group" type="radio">
<input class="radio" id="four" name="group" type="radio">
<div class="tabs">
<label class="tab" id="one-tab" for="one">WLAN Daten</label>
<label class="tab" id="three-tab" for="three">Sensoren</label>
<label class="tab" id="four-tab" for="four">APIs</label>
<label class="tab" id="two-tab" for="two">Weitere Einstellungen</label>
</div>
<div class="panels">
<div class="panel" id="one-panel">
<table>
<tr>
<td title='[&lt;= 34]'>Name:&nbsp;</td>
<td style='width:34em'><input type='text' name='wlanssid' id='wlanssid' placeholder='Name'
value='wlan' maxlength='34' /></td>
</tr>
<tr>
<td title='[&lt;= 64]'>Passwort:&nbsp;</td>
<td style='width:64em'><input type='password' name='wlanpwd' id='wlanpwd' placeholder='Passwort'
value='wlanpassword' maxlength='64' /></td>
</tr>
</table>
<br />
<label for='www_basicauth_enabled'><input type='checkbox' name='www_basicauth_enabled' value='1'
id='www_basicauth_enabled' /><input type='hidden' name='www_basicauth_enabled'
value='0' />BasicAuth
aktivieren</ label><br />
<table>
<tr>
<td title='[&lt;= 64]'>Benutzer:&nbsp;</td>
<td style='width:64em'><input type='text' name='www_username' id='www_username'
placeholder='Benutzer' value='admin' maxlength='64' /></td>
</tr>
<tr>
<td title='[&lt;= 64]'>Passwort:&nbsp;</td>
<td style='width:64em'><input type='password' name='www_password' id='www_password'
placeholder='Passwort' value='admin'
maxlength='64' /></td>
</tr>
</table><br />Sensor WLAN Name im Konfigurationsmodus<br />
<table>
<tr>
<td title='[&lt;= 32]'>Name:&nbsp;</td>
<td style='width:32em'><input type='text' name='fs_ssid' id='fs_ssid'
placeholder='Name' value='airRohr-1234' maxlength='32' /></td>
</tr>
<tr>
<td title='[&lt;= 64]'>Passwort:&nbsp;</td>
<td style='width:64em'><input type='password' name='fs_pwd' id='fs_pwd'
placeholder='Passwort' value='' maxlength='64' /></td>
</tr>
</table><br />
</div>
<div class="panel" id="two-panel">
<b>Firmware</b>&nbsp;<label for='auto_update'><input type='checkbox' name='auto_update'
value='1' id='auto_update' /><input type='hidden' name='auto_update' value='0' />Auto
Update</label><br /><label for='use_beta'><input type='checkbox' name='use_beta' value='1'
id='use_beta' /><input type='hidden' name='use_beta' value='0' />Lade Beta
Versionen</label><br />
<table>
<tr>
<td>Sprache:&nbsp;</td>
<td><select id='current_lang' name='current_lang'>
<option value='BG'>Bulgarian (BG)</option>
<option value='CZ'>Český (CZ)</option>
<option value='DE' selected='selected'>Deutsch (DE)</option>
<option value='DK'>Dansk (DK)</option>
<option value='EN'>English (EN)</option>
<option value='ES'>Español (ES)</option>
<option value='FR'>Français (FR)</option>
<option value='IT'>Italiano (IT)</option>
<option value='LU'>Lëtzebuergesch (LU)</option>
<option value='NL'>Nederlands (NL)</option>
<option value='PL'>Polski (PL)</option>
<option value='PT'>Português (PT)</option>
<option value='RS'>Srpski (RS)</option>
<option value='RU'>Русский (RU)</option>
<option value='SE'>Svenska (SE)</option>
<option value='TR'>Türkçe (TR)</option>
<option value='UA'>український (UA)</option>
</select></td>
</tr>
</table>
<script>var $ = function (e) { return document.getElementById(e); }; function updateOTAOptions() { $('current_lang').disabled = $('use_beta').disabled = !$('auto_update').checked; }; updateOTAOptions(); $('auto_update').onchange = updateOTAOptions;</script>
<br />
<table>
<tr>
<td title='[&lt;= 1]'>Debug&nbsp;Level:&nbsp;</td>
<td style='width:1em'><input type='number' name='debug' id='debug'
placeholder='Debug&nbsp;Level' value='3' maxlength='1' /></td>
</tr>
<tr>
<td title='[&lt;= 5]'>Messintervall:&nbsp;</td>
<td style='width:5em'><input type='number' name='sending_intervall_ms'
id='sending_intervall_ms' placeholder='Messintervall' value='20'
maxlength='5' /></td>
</tr>
<tr>
<td title='[&lt;= 5]'>Dauer&nbsp;Routermodus:&nbsp;</td>
<td style='width:5em'><input type='number' name='time_for_wifi_config'
id='time_for_wifi_config' placeholder='Dauer&nbsp;Routermodus' value='600'
maxlength='5' /></td>
</tr>
</table><br />
<label for='has_display'><input type='checkbox'
name='has_display' value='1' id='has_display' /><input type='hidden' name='has_display'
value='0' />OLED
SSD1306</label><br /><label for='has_sh1106'><input type='checkbox' name='has_sh1106'
value='1' id='has_sh1106' /><input type='hidden' name='has_sh1106' value='0' />OLED
SH1106</label><br /><label for='has_flipped_display'><input type='checkbox'
name='has_flipped_display' value='1' id='has_flipped_display' /><input type='hidden'
name='has_flipped_display' value='0' />OLED Display
um 180° drehen</label><br /><label for='has_lcd1602_27'><input type='checkbox'
name='has_lcd1602_27' value='1' id='has_lcd1602_27' /><input type='hidden'
name='has_lcd1602_27' value='0' />LCD 1602
(I2C: 0x27)</label><br /><label for='has_lcd1602'><input type='checkbox' name='has_lcd1602'
value='1' id='has_lcd1602' /><input type='hidden' name='has_lcd1602' value='0' />LCD
1602 (I2C:
0x3F)</label><br /><label for='has_lcd2004_27'><input type='checkbox' name='has_lcd2004_27'
value='1' id='has_lcd2004_27' /><input type='hidden' name='has_lcd2004_27'
value='0' />LCD 2004 (I2C:
0x27)</label><br /><label for='has_lcd2004'><input type='checkbox' name='has_lcd2004'
value='1' id='has_lcd2004' /><input type='hidden' name='has_lcd2004' value='0' />LCD
2004 (I2C:
0x3F)</label><br /><label for='display_wifi_info'><input type='checkbox'
name='display_wifi_info' value='1' id='display_wifi_info' checked='checked' /><input
type='hidden' name='display_wifi_info' value='0' />Zeige WiFi Info</label><br /><label
for='display_device_info'><input type='checkbox' name='display_device_info' value='1'
id='display_device_info' checked='checked' /><input type='hidden'
name='display_device_info' value='0' />Zeige Geräteinfo</label><br />
</div>
<div class="panel" id="three-panel">
<label for='sds_read'><input type='checkbox' name='sds_read' value='1'
id='sds_read' checked='checked' /><input type='hidden' name='sds_read'
value='0' />SDS011
(Feinstaub)</label><br /><label for='hpm_read'><input type='checkbox' name='hpm_read'
value='1' id='hpm_read' /><input type='hidden' name='hpm_read' value='0' />Honeywell PM
(Feinstaub)</label><br /><label for='sps30_read'><input type='checkbox' name='sps30_read'
value='1' id='sps30_read' /><input type='hidden' name='sps30_read' value='0' />Sensirion
SPS30
(Feinstaub)</label><br /><label for='dht_read'><input type='checkbox' name='dht_read'
value='1' id='dht_read' /><input type='hidden' name='dht_read' value='0' />DHT22
(Temperatur, rel.
Luftfeuchte)</label><br /><label for='htu21d_read'><input type='checkbox' name='htu21d_read'
value='1' id='htu21d_read' /><input type='hidden' name='htu21d_read' value='0' />HTU21D
(Temperatur, rel.
Luftfeuchte)</label><br /><label for='bmx280_read'><input type='checkbox' name='bmx280_read'
value='1' id='bmx280_read' /><input type='hidden' name='bmx280_read'
value='0' />BMP280/BME280 (Temperatur,
rel. Luftfeuchte, Luftdruck)</label><br /><label for='sht3x_read'><input type='checkbox'
name='sht3x_read' value='1' id='sht3x_read' /><input type='hidden' name='sht3x_read'
value='0' />SHT3X (Temperatur, rel. Luftfeuchte)</label><br /><label
for='ds18b20_read'><input type='checkbox' name='ds18b20_read' value='1'
id='ds18b20_read' /><input type='hidden' name='ds18b20_read' value='0' />DS18B20
(Temperatur)</label><br /><label for='dnms_read'><input type='checkbox' name='dnms_read'
value='1' id='dnms_read' /><input type='hidden' name='dnms_read' value='0' />DNMS
(LAeq)</label><br />
<table>
<tr>
<td title='[&lt;= 9]'>Korrekturwert&nbsp;in&nbsp;dB(A):&nbsp;</td>
<td style='width:9em'><input type='text' name='dnms_correction' id='dnms_correction'
placeholder='Korrekturwert&nbsp;in&nbsp;dB(A)' value='0.0' maxlength='9' /></td>
</tr>
</table><br />
<b>Weitere Sensoren</b><br /><label for='pms_read'><input type='checkbox' name='pms_read'
value='1' id='pms_read' /><input type='hidden' name='pms_read' value='0' />Plantower
PMS(1,3,5,6,7)003
(Feinstaub)</label><br /><label for='ppd_read'><input type='checkbox' name='ppd_read'
value='1' id='ppd_read' /><input type='hidden' name='ppd_read' value='0' />PPD42NS
(Feinstaub)</label><br /><label for='bmp_read'><input type='checkbox' name='bmp_read'
value='1' id='bmp_read' /><input type='hidden' name='bmp_read' value='0' />BMP180
(Temperatur,
Luftdruck)</label><br /><label for='gps_read'><input type='checkbox' name='gps_read'
value='1' id='gps_read' /><input type='hidden' name='gps_read' value='0' />GPS (NEO
6M)</label><br /><br />
</div>
<div class="panel" id="four-panel">
<label for='send2dusti'><input type='checkbox' name='send2dusti' value='1'
id='send2dusti' checked='checked' /><input type='hidden' name='send2dusti'
value='0' />API
Sensor.Community</label>&nbsp;&nbsp;(<label for='ssl_dusti'><input type='checkbox'
name='ssl_dusti' value='1' id='ssl_dusti' checked='checked' /><input type='hidden'
name='ssl_dusti' value='0' />HTTPS</label>)<br /><label for='send2madavi'><input
type='checkbox' name='send2madavi' value='1' id='send2madavi' /><input type='hidden'
name='send2madavi' value='0' />API
Madavi.de</label>&nbsp;&nbsp;(<label for='ssl_madavi'><input type='checkbox'
name='ssl_madavi' value='1' id='ssl_madavi' /><input type='hidden' name='ssl_madavi'
value='0' />HTTPS</label>)<br />
<label for='send2csv'><input type='checkbox' name='send2csv' value='1'
id='send2csv' /><input type='hidden' name='send2csv' value='0' />Senden an
CSV</label><br /><label for='send2fsapp'><input type='checkbox' name='send2fsapp' value='1'
id='send2fsapp' /><input type='hidden' name='send2fsapp' value='0' />Senden an
Feinstaub-App</label><br /><label for='send2aircms'><input type='checkbox'
name='send2aircms' value='1' id='send2aircms' /><input type='hidden' name='send2aircms'
value='0' />Senden an aircms.online</label><br /><label for='send2sensemap'><input
type='checkbox' name='send2sensemap' value='1' id='send2sensemap' /><input type='hidden'
name='send2sensemap' value='0' />Senden an OpenSenseMap</label><br />
<table>
<tr>
<td title='[&lt;= 29]'>senseBox&nbsp;ID:&nbsp;</td>
<td style='width:29em'><input type='text' name='senseboxid' id='senseboxid'
placeholder='senseBox&nbsp;ID' value='' maxlength='29' /></td>
</tr>
</table><br /><label for='send2custom'><input type='checkbox' name='send2custom' value='1'
id='send2custom' /><input type='hidden' name='send2custom' value='0' />An eigene API
senden</label>&nbsp;&nbsp;(<label for='ssl_custom'><input type='checkbox' name='ssl_custom'
value='1' id='ssl_custom' /><input type='hidden' name='ssl_custom'
value='0' />HTTPS</label>)<br />
<table>
<tr>
<td title='[&lt;= 99]'>Server:&nbsp;</td>
<td style='width:99em'><input type='text' name='host_custom' id='host_custom'
placeholder='Server' value='192.168.234.1' maxlength='99' /></td>
</tr>
<tr>
<td title='[&lt;= 99]'>Pfad:&nbsp;</td>
<td style='width:99em'><input type='text' name='url_custom' id='url_custom'
placeholder='Pfad' value='/data.php' maxlength='99' /></td>
</tr>
<tr>
<td title='[&lt;= 5]'>Port:&nbsp;</td>
<td style='width:5em'><input type='number' name='port_custom' id='port_custom'
placeholder='Port' value='80' maxlength='5' /></td>
</tr>
<tr>
<td title='[&lt;= 64]'>Benutzer:&nbsp;</td>
<td style='width:64em'><input type='text' name='user_custom' id='user_custom'
placeholder='Benutzer' value='' maxlength='64' /></td>
</tr>
<tr>
<td title='[&lt;= 64]'>Passwort:&nbsp;</td>
<td style='width:64em'><input type='password' name='pwd_custom' id='pwd_custom'
placeholder='Passwort' value='' maxlength='64' /></td>
</tr>
</table><br /><label for='send2influx'><input type='checkbox' name='send2influx' value='1'
id='send2influx' /><input type='hidden' name='send2influx' value='0' />Senden an
InfluxDB</label>&nbsp;&nbsp;(<label for='ssl_influx'><input type='checkbox'
name='ssl_influx' value='1' id='ssl_influx' /><input type='hidden' name='ssl_influx'
value='0' />HTTPS</label>)<br />
<table>
<tr>
<td title='[&lt;= 99]'>Server:&nbsp;</td>
<td style='width:99em'><input type='text' name='host_influx' id='host_influx'
placeholder='Server' value='influx.server' maxlength='99' /></td>
</tr>
<tr>
<td title='[&lt;= 99]'>Pfad:&nbsp;</td>
<td style='width:99em'><input type='text' name='url_influx' id='url_influx'
placeholder='Pfad' value='/write?db=sensorcommunity' maxlength='99' /></td>
</tr>
<tr>
<td title='[&lt;= 5]'>Port:&nbsp;</td>
<td style='width:5em'><input type='number' name='port_influx' id='port_influx'
placeholder='Port' value='8086' maxlength='5' /></td>
</tr>
<tr>
<td title='[&lt;= 64]'>Benutzer:&nbsp;</td>
<td style='width:64em'><input type='text' name='user_influx' id='user_influx'
placeholder='Benutzer' value='' maxlength='64' /></td>
</tr>
<tr>
<td title='[&lt;= 64]'>Passwort:&nbsp;</td>
<td style='width:64em'><input type='password' name='pwd_influx' id='pwd_influx'
placeholder='Passwort' value='' maxlength='64' /></td>
</tr>
<tr>
<td title='[&lt;= 99]'>Measurement:&nbsp;</td>
<td style='width:99em'><input type='text' name='measurement_name_influx'
id='measurement_name_influx' placeholder='Measurement' value='feinstaub'
maxlength='99' />
</td>
</tr>
</table>
</div>
</div>
<input type='submit' class='s_red' name='submit' value='Speichern und neu starten' />
</tr><br /><br />
</form><br /><br /><a href='/' style='display:inline;'>Zurück zur Startseite</a><br /><br /><br />
</div>
</div>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment