diff --git a/WiFiManager.cpp b/WiFiManager.cpp index d84e753..e758692 100644 --- a/WiFiManager.cpp +++ b/WiFiManager.cpp @@ -560,15 +560,18 @@ void WiFiManager::handleWifi(boolean scan) { DEBUG_WM(WiFi.SSID(indices[i])); DEBUG_WM(WiFi.RSSI(indices[i])); int quality = getRSSIasQuality(WiFi.RSSI(indices[i])); + uint8_t enc_type = WiFi.encryptionType(indices[i]); if (_minimumQuality == -1 || _minimumQuality < quality) { String item = FPSTR(HTTP_ITEM); String rssiQ; rssiQ += quality; - item.replace("{v}", WiFi.SSID(indices[i])); - item.replace("{r}", rssiQ); - item.replace("{q}", (String)round(map(quality,0,100,1,4))); - if (WiFi.encryptionType(indices[i]) != ENC_TYPE_NONE) { + item.replace("{v}", WiFi.SSID(indices[i])); // ssid no encoding + item.replace("{R}", (String)WiFi.RSSI(indices[i])); // rssi + item.replace("{e}", encryptionTypeStr(enc_type)); + item.replace("{r}", rssiQ); // qualitypercent + item.replace("{q}", (String)round(map(quality,0,100,1,4))); //quality icon 1-4 + if (enc_type != ENC_TYPE_NONE) { item.replace("{i}", "l"); } else { item.replace("{i}", ""); @@ -616,7 +619,7 @@ void WiFiManager::handleWifi(boolean scan) { snprintf(parLength, 5, "%d", _params[i]->getValueLength()); pitem.replace("{l}", parLength); pitem.replace("{v}", _params[i]->getValue()); - pitem.replace("{c}", _params[i]->getCustomHTML()); + pitem.replace("{c}", _params[i]->getCustomHTML()); // additional attributes not html } else { pitem = _params[i]->getCustomHTML(); } @@ -929,6 +932,23 @@ boolean WiFiManager::validApPassword(){ return true; } +String WiFiManager::encryptionTypeStr(uint8_t authmode) { + switch(authmode) { + case ENC_TYPE_NONE: + return "None"; + case ENC_TYPE_WEP: + return "WEP"; + case ENC_TYPE_TKIP: + return "WPA_PSK"; + case ENC_TYPE_CCMP: + return "WPA2_PSK"; + case ENC_TYPE_AUTO: + return "WPA_WPA2_PSK"; + default: + return "Unknown"; + } +} + // set mode without persistent bool WiFiManager::wifimode(WiFiMode_t m) { if(wifi_get_opmode() == (uint8) m) { diff --git a/WiFiManager.h b/WiFiManager.h index f021a23..f6ad1ec 100644 --- a/WiFiManager.h +++ b/WiFiManager.h @@ -24,15 +24,24 @@ extern "C" { const char HTTP_HEAD[] PROGMEM = "{v}"; // const char HTTP_STYLE[] PROGMEM = ""; -const char HTTP_STYLE[] PROGMEM = ""; + const char HTTP_SCRIPT[] PROGMEM = ""; -const char HTTP_HEAD_END[] PROGMEM = "
"; +const char HTTP_HEAD_END[] PROGMEM = "
"; const char HTTP_PORTAL_OPTIONS[] PROGMEM = "



"; const char HTTP_ITEM[] PROGMEM = "
{v}
"; //const char HTTP_ITEM_PADLOCK[] PROGMEM = ""; @@ -40,8 +49,8 @@ const char HTTP_FORM_START[] PROGMEM = "
{p}"; const char HTTP_FORM_PARAM[] PROGMEM = "
"; const char HTTP_FORM_END[] PROGMEM = "
"; -const char HTTP_SCAN_LINK[] PROGMEM = "
"; -const char HTTP_SAVED[] PROGMEM = "
Credentials Saved
Trying to connect ESP to network.
If it fails reconnect to AP to try again
"; +const char HTTP_SCAN_LINK[] PROGMEM = "
"; +const char HTTP_SAVED[] PROGMEM = "
Saving Credentials
Trying to connect ESP to network.
If it fails reconnect to AP to try again
"; const char HTTP_END[] PROGMEM = "
"; #define WIFI_MANAGER_MAX_PARAMS 10 @@ -208,6 +217,7 @@ class WiFiManager boolean isIp(String str); String toStringIp(IPAddress ip); boolean validApPassword(); + String encryptionTypeStr(uint8_t authmode); boolean connect; boolean configPortalActive = false; diff --git a/extras/WiFiManager.template.html b/extras/WiFiManager.template.html index e15593b..2a49be3 100644 --- a/extras/WiFiManager.template.html +++ b/extras/WiFiManager.template.html @@ -6,15 +6,125 @@ {v} - +