generated from jmgiacalone/esp32-template
Delete profile now works.
This commit is contained in:
35
src/main.cpp
35
src/main.cpp
@@ -145,9 +145,9 @@ String getProfilesList(void)
|
|||||||
settings.begin("profiles");
|
settings.begin("profiles");
|
||||||
list = settings.getString("list");
|
list = settings.getString("list");
|
||||||
Serial.println(list);
|
Serial.println(list);
|
||||||
deserializeJson(jsonList, list);
|
// deserializeJson(jsonList, list);
|
||||||
settings.end();
|
settings.end();
|
||||||
serializeJson(jsonList,list);
|
// serializeJson(jsonList,list);
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -197,21 +197,26 @@ boolean deleteProfile(AsyncWebServerRequest * request)
|
|||||||
{
|
{
|
||||||
bool res = false;
|
bool res = false;
|
||||||
int params = request->params();
|
int params = request->params();
|
||||||
if(params == 1){
|
if(params > 0){
|
||||||
settings.begin("profiles");
|
String list;
|
||||||
JsonDocument jsonList;
|
JsonDocument jsonList;
|
||||||
String name = request->getParam("name",true)->value();
|
String name = request->getParam("name",true)->value();
|
||||||
deserializeJson(jsonList,settings.getString("list"));
|
settings.begin("profiles");
|
||||||
if(jsonList.containsKey(name)){
|
list = settings.getString("list");
|
||||||
//remove from list
|
Serial.printf("Removing %s from %s.\n",name,list.c_str());
|
||||||
jsonList.remove(name);
|
deserializeJson(jsonList,list.c_str());
|
||||||
String list;
|
JsonArray aList = jsonList.as<JsonArray>();
|
||||||
serializeJson(jsonList,list);
|
Serial.println(aList.size());
|
||||||
settings.putString("list",list);
|
for (JsonArray::iterator it=aList.begin(); it!=aList.end(); ++it) {
|
||||||
//remove profile
|
String n = (*it).as<String>();
|
||||||
settings.remove(name.c_str());
|
Serial.println(n);
|
||||||
res = true;
|
if (n.equals(name)) {
|
||||||
}
|
aList.remove(it);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
serializeJson(aList,list);
|
||||||
|
settings.putString("list",list);
|
||||||
|
res=true;
|
||||||
settings.end();
|
settings.end();
|
||||||
}
|
}
|
||||||
return res;
|
return res;
|
||||||
|
|||||||
Reference in New Issue
Block a user