diff --git a/WiFiManager.cpp b/WiFiManager.cpp index 06e7481..8ac235c 100644 --- a/WiFiManager.cpp +++ b/WiFiManager.cpp @@ -131,15 +131,17 @@ void WiFiManager::setupConfigPortal() { } -boolean WiFiManager::autoConnect() { +boolean WiFiManager::autoConnect(boolean showStaticIPFields) { String ssid = "ESP" + String(ESP.getChipId()); - return autoConnect(ssid.c_str(), NULL); + return autoConnect(ssid.c_str(), NULL, showStaticIPFields); } -boolean WiFiManager::autoConnect(char const *apName, char const *apPassword) { +boolean WiFiManager::autoConnect(char const *apName, char const *apPassword, boolean showStaticIPFields) { DEBUG_WM(F("")); DEBUG_WM(F("AutoConnect")); + _sta_show_static_fields = showStaticIPFields; + // read eeprom for ssid and pass //String ssid = getSSID(); //String pass = getPassword(); @@ -498,14 +500,14 @@ void WiFiManager::handleWifi(boolean scan) { page += "
"; } - if (_sta_static_ip) { + if (_sta_show_static_fields) { String item = FPSTR(HTTP_FORM_PARAM); item.replace("{i}", "ip"); item.replace("{n}", "ip"); item.replace("{p}", "Static IP"); item.replace("{l}", "15"); - item.replace("{v}", _sta_static_ip.toString()); + item.replace("{v}", (_sta_static_ip ? _sta_static_ip.toString() : "")); page += item; @@ -514,7 +516,7 @@ void WiFiManager::handleWifi(boolean scan) { item.replace("{n}", "gw"); item.replace("{p}", "Static Gateway"); item.replace("{l}", "15"); - item.replace("{v}", _sta_static_gw.toString()); + item.replace("{v}", (_sta_static_gw ? _sta_static_gw.toString() : "")); page += item; @@ -523,7 +525,7 @@ void WiFiManager::handleWifi(boolean scan) { item.replace("{n}", "sn"); item.replace("{p}", "Subnet"); item.replace("{l}", "15"); - item.replace("{v}", _sta_static_sn.toString()); + item.replace("{v}", (_sta_static_sn ? _sta_static_sn.toString() : "")); page += item; diff --git a/WiFiManager.h b/WiFiManager.h index bd67c05..3edff0a 100644 --- a/WiFiManager.h +++ b/WiFiManager.h @@ -35,7 +35,7 @@ const char HTTP_SCAN_LINK[] PROGMEM = "