Moved processor

This commit is contained in:
2026-05-24 15:54:04 +02:00
parent 8fbbfc90cd
commit b8d5ba041b
4 changed files with 33 additions and 22 deletions
+32
View File
@@ -41,6 +41,38 @@ ReadersWriterLock telemetryDataLock;
ReadersWriterLock otaStatusLock; ReadersWriterLock otaStatusLock;
// ======================
// Template Processor
// ======================
/**
* @brief Template processor for substituting variables in HTML/JavaScript templates.
*
* Replaces template placeholders with values from preferences.
* Used by AsyncWebServer when serving template files.
*
* @param var The template variable name to replace
* @return String The value to substitute, or empty string if not found
*/
String processor(const String& var)
{
if (var == level_sensor_range_key) {
return String(prefs.getFloat(level_sensor_range_key, -1));
} else if (var == water_level_min_key) {
return String(prefs.getFloat(water_level_min_key, -1));
} else if (var == water_level_max_key) {
return String(prefs.getFloat(water_level_max_key, -1));
} else if (var == water_volume_key) {
return String(prefs.getFloat(water_volume_key, -1));
} else if (var == ssid_key) {
return String(prefs.getString(ssid_key, ""));
}
return String("");
}
// ====================== // ======================
// Webserver Setup // Webserver Setup
// ====================== // ======================
+1
View File
@@ -11,6 +11,7 @@ void setup_routes();
void webserver_task(void *pvParameters); void webserver_task(void *pvParameters);
void handle_update_wifi_credentials(AsyncWebServerRequest* request); void handle_update_wifi_credentials(AsyncWebServerRequest* request);
void handle_update_sensor_settings(AsyncWebServerRequest* request); void handle_update_sensor_settings(AsyncWebServerRequest* request);
String processor(const String& var);
#endif // ASYNC_WEBSERVER_H #endif // ASYNC_WEBSERVER_H
-21
View File
@@ -1,30 +1,9 @@
#include <Arduino.h> #include <Arduino.h>
#include "tools.h" #include "tools.h"
#include <Elog.h> #include <Elog.h>
#include "../global_data/defines.h"
#include <Preferences.h>
#include "log.h" #include "log.h"
#include "esp_sntp.h" #include "esp_sntp.h"
extern Preferences prefs;
String processor(const String& var)
{
if (var == level_sensor_range_key) {
return String(prefs.getFloat(level_sensor_range_key, -1));
} else if (var == water_level_min_key) {
return String(prefs.getFloat(water_level_min_key, -1));
} else if (var == water_level_max_key) {
return String(prefs.getFloat(water_level_max_key, -1));
} else if (var == water_volume_key) {
return String(prefs.getFloat(water_volume_key, -1));
} else if (var == ssid_key) {
return String(prefs.getString(ssid_key, ""));
}
return String("");
}
void get_time_task(void* parameter) { void get_time_task(void* parameter) {
LOG(ELOG_LEVEL_DEBUG, "Starting GetTimeTask"); LOG(ELOG_LEVEL_DEBUG, "Starting GetTimeTask");
LOG(ELOG_LEVEL_DEBUG, "Trying to get time from Internet"); LOG(ELOG_LEVEL_DEBUG, "Trying to get time from Internet");
-1
View File
@@ -4,7 +4,6 @@
void printSuffix(Print* _logOutput, int logLevel); void printSuffix(Print* _logOutput, int logLevel);
void print_prefix(Print* _logOutput, int logLevel); void print_prefix(Print* _logOutput, int logLevel);
String processor(const String& var);
void get_time_task(void* parameter); void get_time_task(void* parameter);
void onTimeSync(struct timeval* tv); void onTimeSync(struct timeval* tv);