diff --git a/src/WebCfgServer.cpp b/src/WebCfgServer.cpp index 541d633..a0c972a 100644 --- a/src/WebCfgServer.cpp +++ b/src/WebCfgServer.cpp @@ -269,6 +269,18 @@ void WebCfgServer::initialize() { return buildMqttConfigHtml(request); } + else if (value == "mqttcaconfig") + { + return buildMqttSSLConfigHtml(request, 0); + } + else if (value == "mqttcrtconfig") + { + return buildMqttSSLConfigHtml(request, 1); + } + else if (value == "mqttkeyconfig") + { + return buildMqttSSLConfigHtml(request, 2); + } else if (value == "nukicfg") { return buildNukiConfigHtml(request); @@ -394,7 +406,14 @@ void WebCfgServer::initialize() { String message = ""; bool restart = processArgs(request, message); - return buildConfirmHtml(request, message, 3, true); + if(request->hasParam("mqttssl")) + { + return buildConfirmHtml(request, message, 3, true, "/get?page=mqttconfig"); + } + else + { + return buildConfirmHtml(request, message, 3, true); + } } else if (value == "savegpiocfg") { @@ -1098,7 +1117,7 @@ esp_err_t WebCfgServer::handleOtaUpload(PsychicRequest *request, const String& f } } -esp_err_t WebCfgServer::buildConfirmHtml(PsychicRequest *request, const String &message, uint32_t redirectDelay, bool redirect) +esp_err_t WebCfgServer::buildConfirmHtml(PsychicRequest *request, const String &message, uint32_t redirectDelay, bool redirect, String redirectTo) { PsychicStreamResponse response(request, "text/html"); response.beginSend(); @@ -1112,7 +1131,7 @@ esp_err_t WebCfgServer::buildConfirmHtml(PsychicRequest *request, const String & else { String delay(redirectDelay * 1000); - header = ""; + header = ""; } buildHtmlHeader(&response, header); response.print(message); @@ -3628,9 +3647,9 @@ esp_err_t WebCfgServer::buildMqttConfigHtml(PsychicRequest *request) { printCheckBox(&response, "OPENERCONT", "Set Nuki Opener Lock/Unlock action in Home Assistant to Continuous mode", _preferences->getBool(preference_opener_continuous_mode), ""); } - printTextarea(&response, "MQTTCA", "MQTT SSL CA Certificate (*, optional)", _preferences->getString(preference_mqtt_ca).c_str(), TLS_CA_MAX_SIZE, true, true); - printTextarea(&response, "MQTTCRT", "MQTT SSL Client Certificate (*, optional)", _preferences->getString(preference_mqtt_crt).c_str(), TLS_CERT_MAX_SIZE, true, true); - printTextarea(&response, "MQTTKEY", "MQTT SSL Client Key (*, optional)", _preferences->getString(preference_mqtt_key).c_str(), TLS_KEY_MAX_SIZE, true, true); + response.print("