// WebSiteData.cpp
//
// Behandelt Anfragen zur WebSite: data
// 

#include "EnergyWebServer.h"
#include "EnergySensor.h"
#include "UrsHelpers.h"
#include "Relais.h"

void EnergyWebServerClass::handleData(AsyncWebServerRequest * request) {
  // Parameter auswerten
  // =====================================================================
  if (request->hasArg(F("switchOn"))) // Relais einschalten
    Relais.setState(RelaisState::on);
  if (request->hasArg(F("switchOff"))) // Relais ausschalten
    Relais.setState(RelaisState::off);
  if (request->hasArg(F("reset")))  // Verbrauchszähler zurücksetzen (geschieht in loop())
    energySensorShouldReset = true;

  // Antwort zusammenstellen
  // =====================================================================
  // Energie-Messwerte
  String responseString = EnergySensor.getLastReading().toString();

  // Relais
  responseString += Relais.isOn() ? ";on" : ";off";
  
  // Antwort senden
  request->send(200, "text/plain", responseString);
};
