mirror of
https://github.com/alexhopeoconnor/WiFiManager.git
synced 2026-10-22 02:32:10 +10:00
fixes #581
adds htmlentities to ssid outputs, limited replacements for now
This commit is contained in:
+22
-4
@@ -975,7 +975,7 @@ String WiFiManager::WiFiManager::getScanItemOut(){
|
|||||||
|
|
||||||
if (_minimumQuality == -1 || _minimumQuality < rssiperc) {
|
if (_minimumQuality == -1 || _minimumQuality < rssiperc) {
|
||||||
String item = HTTP_ITEM_STR;
|
String item = HTTP_ITEM_STR;
|
||||||
item.replace(FPSTR(T_v), WiFi.SSID(indices[i])); // ssid no encoding
|
item.replace(FPSTR(T_v), htmlEntities(WiFi.SSID(indices[i]))); // ssid no encoding
|
||||||
if(tok_e) item.replace(FPSTR(T_e), encryptionTypeStr(enc_type));
|
if(tok_e) item.replace(FPSTR(T_e), encryptionTypeStr(enc_type));
|
||||||
if(tok_r) item.replace(FPSTR(T_r), (String)rssiperc); // rssi percentage 0-100
|
if(tok_r) item.replace(FPSTR(T_r), (String)rssiperc); // rssi percentage 0-100
|
||||||
if(tok_R) item.replace(FPSTR(T_R), (String)WiFi.RSSI(indices[i])); // rssi db
|
if(tok_R) item.replace(FPSTR(T_R), (String)WiFi.RSSI(indices[i])); // rssi db
|
||||||
@@ -1422,7 +1422,7 @@ String WiFiManager::getInfoData(String id){
|
|||||||
#endif
|
#endif
|
||||||
else if(id==F("apssid")){
|
else if(id==F("apssid")){
|
||||||
p = FPSTR(HTTP_INFO_apssid);
|
p = FPSTR(HTTP_INFO_apssid);
|
||||||
p.replace(FPSTR(T_1),(String)WiFi_SSID());
|
p.replace(FPSTR(T_1),htmlEntities((String)WiFi_SSID()));
|
||||||
}
|
}
|
||||||
else if(id==F("apbssid")){
|
else if(id==F("apbssid")){
|
||||||
p = FPSTR(HTTP_INFO_apbssid);
|
p = FPSTR(HTTP_INFO_apbssid);
|
||||||
@@ -1597,11 +1597,11 @@ void WiFiManager::reportStatus(String &page){
|
|||||||
if (WiFi.status()==WL_CONNECTED){
|
if (WiFi.status()==WL_CONNECTED){
|
||||||
str = FPSTR(HTTP_STATUS_ON);
|
str = FPSTR(HTTP_STATUS_ON);
|
||||||
str.replace(FPSTR(T_i),WiFi.localIP().toString());
|
str.replace(FPSTR(T_i),WiFi.localIP().toString());
|
||||||
str.replace(FPSTR(T_v),WiFi_SSID());
|
str.replace(FPSTR(T_v),htmlEntities(WiFi_SSID()));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
str = FPSTR(HTTP_STATUS_OFF);
|
str = FPSTR(HTTP_STATUS_OFF);
|
||||||
str.replace(FPSTR(T_v),WiFi_SSID());
|
str.replace(FPSTR(T_v),htmlEntities(WiFi_SSID()));
|
||||||
if(_lastconxresult == WL_STATION_WRONG_PASSWORD){
|
if(_lastconxresult == WL_STATION_WRONG_PASSWORD){
|
||||||
// wrong password
|
// wrong password
|
||||||
str.replace(FPSTR(T_c),"D"); // class
|
str.replace(FPSTR(T_c),"D"); // class
|
||||||
@@ -2183,6 +2183,24 @@ boolean WiFiManager::validApPassword(){
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* encode htmlentities
|
||||||
|
* @since $dev
|
||||||
|
* @param string str string to replace entities
|
||||||
|
* @return string encoded string
|
||||||
|
*/
|
||||||
|
String WiFiManager::htmlEntities(String str) {
|
||||||
|
str.replace("&","&");
|
||||||
|
str.replace("<","<");
|
||||||
|
str.replace(">",">");
|
||||||
|
// str.replace("'","'");
|
||||||
|
// str.replace("\"",""");
|
||||||
|
// str.replace("/": "/");
|
||||||
|
// str.replace("`": "`");
|
||||||
|
// str.replace("=": "=");
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* [getWLStatusString description]
|
* [getWLStatusString description]
|
||||||
* @access public
|
* @access public
|
||||||
|
|||||||
@@ -228,6 +228,8 @@ class WiFiManager
|
|||||||
void debugSoftAPConfig();
|
void debugSoftAPConfig();
|
||||||
// debug output platform info and versioning
|
// debug output platform info and versioning
|
||||||
void debugPlatformInfo();
|
void debugPlatformInfo();
|
||||||
|
String htmlEntities(String str);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
std::unique_ptr<DNSServer> dnsServer;
|
std::unique_ptr<DNSServer> dnsServer;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user