more Progress on WebUI
This commit is contained in:
@@ -5,8 +5,9 @@ AsyncWebServer webServer(80);
|
||||
const char *PARAM_MESSAGE = "message";
|
||||
|
||||
String processor(const String &var);
|
||||
void WebserverPost_Callback(AsyncWebServerRequest *request);
|
||||
void WebserverPOST_Callback(AsyncWebServerRequest *request);
|
||||
void WebserverNotFound_Callback(AsyncWebServerRequest *request);
|
||||
void Webserver_Callback(AsyncWebServerRequest *request);
|
||||
|
||||
void initWebUI()
|
||||
{
|
||||
@@ -16,14 +17,10 @@ void initWebUI()
|
||||
return;
|
||||
}
|
||||
|
||||
// Route to load style.css file
|
||||
webServer.serveStatic("/", LittleFS, "/").setDefaultFile("index.htm");
|
||||
webServer.serveStatic("/static/", LittleFS, "/static/");
|
||||
webServer.onNotFound(WebserverNotFound_Callback);
|
||||
|
||||
webServer.on("/index.htm", HTTP_GET, [](AsyncWebServerRequest *request)
|
||||
{ request->send(LittleFS, "/index.htm", String(), false, processor); });
|
||||
|
||||
webServer.on("/", HTTP_POST, WebserverPost_Callback);
|
||||
webServer.on("/index.htm", HTTP_GET, Webserver_Callback);
|
||||
webServer.on("/", HTTP_POST, WebserverPOST_Callback);
|
||||
|
||||
webServer.begin();
|
||||
}
|
||||
@@ -34,6 +31,78 @@ void UpdateWebUI()
|
||||
|
||||
String processor(const String &var)
|
||||
{
|
||||
if (var == "TANK_REMAIN_CAPACITY")
|
||||
return String((PersistenceData.tankRemain_µl / 10) / LubeConfig.tankCapacity_ml);
|
||||
if (var == "LUBE_DISTANCE_NORMAL")
|
||||
return String(LubeConfig.DistancePerLube_Default);
|
||||
if (var == "LUBE_DISTANCE_RAIN")
|
||||
return String(LubeConfig.DistancePerLube_Rain);
|
||||
if (var == "TANK_CAPACITY")
|
||||
return String(LubeConfig.tankCapacity_ml);
|
||||
if (var == "AMOUNT_PER_DOSE")
|
||||
return String(LubeConfig.amountPerDose_µl);
|
||||
if (var == "TANK_REMIND")
|
||||
return String(LubeConfig.TankRemindAtPercentage);
|
||||
if (var == "PULSE_PER_REV")
|
||||
return String(LubeConfig.PulsePerRevolution);
|
||||
if (var == "TIRE_WIDTH_MM")
|
||||
return String(LubeConfig.TireWidth_mm);
|
||||
if (var == "TIRE_RATIO")
|
||||
return String(LubeConfig.TireWidthHeight_Ratio);
|
||||
if (var == "RIM_DIAMETER")
|
||||
return String(LubeConfig.RimDiameter_Inch);
|
||||
if (var == "DISTANCE_PER_REV")
|
||||
return String(LubeConfig.DistancePerRevolution_mm);
|
||||
if (var == "BLEEDING_PULSES")
|
||||
return String(LubeConfig.BleedingPulses);
|
||||
if (var == "SPEED_SOURCE")
|
||||
return String(SpeedSourceString[LubeConfig.SpeedSource]);
|
||||
if (var == "GPS_BAUD")
|
||||
return String(GPSBaudRateString[LubeConfig.GPSBaudRate]);
|
||||
#if PCB_REVISION == 13
|
||||
if (var == "CAN_SOURCE")
|
||||
return String(CANSourceString[LubeConfig.CANSource]);
|
||||
#endif
|
||||
if (var == "CONFIG_CHECKSUM")
|
||||
return String(LubeConfig.checksum, 16);
|
||||
if (var == "WRITE_CYCLE_COUNT")
|
||||
return String(PersistenceData.writeCycleCounter);
|
||||
if (var == "TANK_REMAIN_UL")
|
||||
return String(PersistenceData.tankRemain_µl);
|
||||
if (var == "TRAVEL_DISTANCE_HIGHRES")
|
||||
return String(PersistenceData.TravelDistance_highRes);
|
||||
if (var == "PERSISTANCE_CHECKSUM")
|
||||
return String(PersistenceData.checksum, 16);
|
||||
|
||||
if (var == "SHOW_IMPULSE_SETTINGS")
|
||||
return LubeConfig.SpeedSource == SOURCE_IMPULSE ? "" : "hidden";
|
||||
if (var == "SHOW_CAN_SETTINGS")
|
||||
return LubeConfig.SpeedSource == SOURCE_CAN ? "" : "hidden";
|
||||
if (var == "SHOW_GPS_SETTINGS")
|
||||
return LubeConfig.SpeedSource == SOURCE_GPS ? "" : "hidden";
|
||||
|
||||
if (var == "SOURCE_SELECT_OPTIONS")
|
||||
{
|
||||
String temp;
|
||||
for (uint32_t i = 0; i < SpeedSourceString_Elements; i++)
|
||||
temp = temp + "<option value=\"" + i + "\">" + SpeedSourceString[i] + "</option>";
|
||||
return temp;
|
||||
}
|
||||
|
||||
if (var == "CANSOURCE_SELECT_OPTIONS")
|
||||
{
|
||||
String temp;
|
||||
for (uint32_t i = 0; i < CANSourceString_Elements; i++)
|
||||
temp = temp + "<option value=\"" + i + "\">" + CANSourceString[i] + "</option>";
|
||||
return temp;
|
||||
}
|
||||
if (var == "GPSBAUD_SELECT_OPTIONS")
|
||||
{
|
||||
String temp;
|
||||
for (uint32_t i = 0; i < GPSBaudRateString_Elements; i++)
|
||||
temp = temp + "<option value=\"" + i + "\">" + GPSBaudRateString[i] + "</option>";
|
||||
return temp;
|
||||
}
|
||||
|
||||
if (var == "PLACEHOLDER")
|
||||
return "placeholder";
|
||||
@@ -41,13 +110,18 @@ String processor(const String &var)
|
||||
return String();
|
||||
}
|
||||
|
||||
void WebserverPost_Callback(AsyncWebServerRequest *request)
|
||||
void Webserver_Callback(AsyncWebServerRequest *request)
|
||||
{
|
||||
request->send(LittleFS, "/index.htm", String(), false, processor);
|
||||
}
|
||||
|
||||
void WebserverPOST_Callback(AsyncWebServerRequest *request)
|
||||
{
|
||||
String message;
|
||||
if (request->hasParam(PARAM_MESSAGE, true))
|
||||
{
|
||||
message = request->getParam(PARAM_MESSAGE, true)->value();
|
||||
Serial.printf("POST: %s", message);
|
||||
Serial.printf("POST: %s", message.c_str());
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user