Commit b345893b authored by Eric Duminil's avatar Eric Duminil
Browse files

Distributing html more evenly

parent 73317ec1
Pipeline #5857 passed with stage
in 2 minutes and 32 seconds
......@@ -48,7 +48,6 @@ namespace web_server {
// "<meta http-equiv='refresh' content='%d'>"
"</head>"
"<body>"
"<div class='pure-g'><div class='pure-u-1'><div class='pure-menu'><p class='pure-menu-heading'>HfT-Stuttgart CO<sub>2</sub> Ampel</p></div></div>"
"<div class='pure-u-1'><ul class='pure-menu pure-menu-horizontal pure-menu-list'>"
"<li class='pure-menu-item'><a href='/config' class='pure-menu-link'>Config</a></li>"
......@@ -62,26 +61,26 @@ namespace web_server {
// Show a colored dot on the webpage, with a similar color than on LED Ring.
"hue=(1-(Math.min(Math.max(parseInt(document.title),500),1600)-500)/1100)*120;"
"document.getElementById('led').style.color=['hsl(',hue,',100%%,50%%)'].join('');"
"</script>"
"<div class='pure-g'>"
"<div class='pure-u-1' id='graph'></div>"// Graph placeholder
"</div>"
"<div class='pure-g'>"
"<table id='table' class='pure-table-striped pure-u-1 pure-u-md-1-2'>");
"</script>");
body1_template = PSTR("<tr><th colspan='2'>%s</th></tr>"
body1_template = PSTR("<div class='pure-g'>"
"<div class='pure-u-1' id='graph'></div>" // Graph placeholder
"</div>"
"<div class='pure-g'>"
"<table id='table' class='pure-table-striped pure-u-1 pure-u-md-1-2'>"
"<tr><th colspan='2'>%s</th></tr>"
"<tr><td>CO<sub>2</sub></td><td>%5d ppm</td></tr>"
"<tr><td>Temperature</td><td>%.1f&#8451;</td></tr>"
"<tr><td>Humidity</td><td>%.1f%%</td></tr>"
"<tr><td>Last measurement</td><td>%s</td></tr>"
"<tr><td>Timestep</td><td>%5d s</td></tr>"
"<tbody>"
"<tr><th colspan='2'>CSV</th></tr>" //TODO: Gray out if !config::csv_active
"<tbody %s>"
"<tr><th colspan='2'>CSV</th></tr>"//TODO: Gray out if !config::csv_active
"<tr><td>Last write</td><td>%s</td></tr>"
"<tr><td>Interval</td><td>%5d s</td></tr>"
"<tr><td>Available space</td><td>%d kB</td></tr>"
"</tbody>"
"<tbody>"
"<tbody %s>"
"<tr><th colspan='2'>MQTT</th></tr>"
"<tr><td>Connected?</td><td>%s</td></tr>"
"<tr><td>Last publish</td><td>%s</td></tr>"
......@@ -90,7 +89,7 @@ namespace web_server {
body2_template =
PSTR(
#if defined(ESP32)
"<tbody>"
"<tbody %s>"
"<tr><th colspan='2'>LoRaWAN</th></tr>"
"<tr><td>Connected?</td><td>%s</td></tr>"
"<tr><td>Frequency</td><td>%s MHz</td></tr>"
......@@ -202,7 +201,7 @@ namespace web_server {
//NOTE: Splitting in multiple parts in order to use less RAM. Higher than 2000 apparently crashes the ESP8266
char content[2000];
// Current size (with Lorawan):
// INFO - Header size : 1826 - Body size : 2005 - Script size : 1904
// INFO - Header size : 1685 - Body1 size : 843 - Body2 size : 1395 - Script size : 1918
snprintf_P(content, sizeof(content), header_template, sensor::co2, config::ampel_name(), wifi::local_ip,
csv_writer::filename);
......@@ -214,9 +213,10 @@ namespace web_server {
// Body
snprintf_P(content, sizeof(content), body1_template, config::ampel_name(), sensor::co2, sensor::temperature,
sensor::humidity, sensor::timestamp, config::measurement_timestep, csv_writer::last_successful_write,
config::csv_interval, csv_writer::getAvailableSpace() / 1024, mqtt::connected ? "Yes" : "No",
mqtt::last_successful_publish, config::mqtt_sending_interval);
sensor::humidity, sensor::timestamp, config::measurement_timestep, config::is_csv_active() ? "" : "hidden",
csv_writer::last_successful_write, config::csv_interval, csv_writer::getAvailableSpace() / 1024,
config::is_mqtt_active() ? "" : "hidden", mqtt::connected ? "Yes" : "No", mqtt::last_successful_publish,
config::mqtt_sending_interval);
Serial.print(F(" - Body1 size : "));
Serial.print(strlen(content));
......@@ -224,8 +224,8 @@ namespace web_server {
snprintf_P(content, sizeof(content), body2_template,
#if defined(ESP32)
lorawan::connected ? "Yes" : "No", config::lorawan_frequency_plan, lorawan::last_transmission,
config::lorawan_sending_interval,
config::is_lorawan_active() ? "" : "hidden", lorawan::connected ? "Yes" : "No", config::lorawan_frequency_plan,
lorawan::last_transmission, config::lorawan_sending_interval,
#endif
config::temperature_offset, config::auto_calibrate_sensor ? "Yes" : "No", config::ampel_name(),
config::ampel_name(), wifi::local_ip, wifi::local_ip, ampel.macAddress, ESP.getFreeHeap(),
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment