Import: Show errors when importing fails

Signed-off-by: Roopesh Chander <roop@roopc.net>
This commit is contained in:
Roopesh Chander 2018-10-29 02:03:30 +05:30
parent 3f97199f68
commit b5ef62ddee
1 changed files with 8 additions and 0 deletions

View File

@ -149,6 +149,8 @@ extension TunnelsListTableViewController: UIDocumentPickerDelegate {
print("Error adding configuration: \(tunnelConfiguration.interface.name)")
}
}
} else {
showErrorAlert(title: "Could not import", message: "The config file contained errors")
}
} else if (url.pathExtension == "zip") {
var unarchivedFiles: [(fileName: String, contents: Data)] = []
@ -161,6 +163,7 @@ extension TunnelsListTableViewController: UIDocumentPickerDelegate {
} catch (let error) {
print("Error opening zip archive: \(error)")
}
var numberOfConfigFilesWithErrors = 0
for unarchivedFile in unarchivedFiles {
if let fileBaseName = URL(string: unarchivedFile.fileName)?.deletingPathExtension().lastPathComponent,
let fileContents = String(data: unarchivedFile.contents, encoding: .utf8),
@ -170,8 +173,13 @@ extension TunnelsListTableViewController: UIDocumentPickerDelegate {
print("Error adding configuration: \(tunnelConfiguration.interface.name)")
}
}
} else {
numberOfConfigFilesWithErrors = numberOfConfigFilesWithErrors + 1
}
}
if (numberOfConfigFilesWithErrors > 0) {
showErrorAlert(title: "Could not import \(numberOfConfigFilesWithErrors) files", message: "\(numberOfConfigFilesWithErrors) of \(unarchivedFiles.count) files contained errors and were not imported")
}
}
}
}