diff --git a/src/WebApi_config.cpp b/src/WebApi_config.cpp index a2233d26..84bce235 100644 --- a/src/WebApi_config.cpp +++ b/src/WebApi_config.cpp @@ -171,7 +171,12 @@ void WebApiConfigClass::onConfigUpload(AsyncWebServerRequest* request, String fi if (!index) { // open the file on first call and store the file handle in the request object - request->_tempFile = LittleFS.open(CONFIG_FILENAME, "w"); + if (!request->hasParam("file")) { + request->send(500); + return; + } + String name = "/" + request->getParam("file")->value(); + request->_tempFile = LittleFS.open(name, "w"); } if (len) { diff --git a/webapp/src/locales/de.json b/webapp/src/locales/de.json index 981146aa..9d3e7a91 100644 --- a/webapp/src/locales/de.json +++ b/webapp/src/locales/de.json @@ -412,6 +412,8 @@ "BackupHeader": "Sicherung: Sicherung der Konfigurationsdatei", "BackupConfig": "Sicherung der Konfigurationsdatei", "Backup": "Sichern", + "Restore": "Wiederherstellen", + "NoFileSelected": "Keine Datei Ausgewählt", "RestoreHeader": "Wiederherstellen: Wiederherstellen der Konfigurationsdatei", "Back": "Zurück", "UploadSuccess": "Erfolgreich hochgeladen", diff --git a/webapp/src/locales/en.json b/webapp/src/locales/en.json index 1cefd495..bc32197e 100644 --- a/webapp/src/locales/en.json +++ b/webapp/src/locales/en.json @@ -412,6 +412,8 @@ "BackupHeader": "Backup: Configuration File Backup", "BackupConfig": "Backup the configuration file", "Backup": "Backup", + "Restore": "Restore", + "NoFileSelected": "No file selected", "RestoreHeader": "Restore: Restore the Configuration File", "Back": "Back", "UploadSuccess": "Upload Success", diff --git a/webapp/src/locales/fr.json b/webapp/src/locales/fr.json index 78b5e0d7..6346989b 100644 --- a/webapp/src/locales/fr.json +++ b/webapp/src/locales/fr.json @@ -412,6 +412,8 @@ "BackupHeader": "Sauvegarder le fichier de configuration", "BackupConfig": "Fichier de configuration", "Backup": "Sauvegarder", + "Restore": "Restore", + "NoFileSelected": "No file selected", "RestoreHeader": "Restaurer le fichier de configuration", "Back": "Retour", "UploadSuccess": "Succès du téléversement", diff --git a/webapp/src/views/ConfigAdminView.vue b/webapp/src/views/ConfigAdminView.vue index f3690cdc..d3a57a81 100644 --- a/webapp/src/views/ConfigAdminView.vue +++ b/webapp/src/views/ConfigAdminView.vue @@ -51,8 +51,19 @@