1
0
mirror of https://github.com/laurent22/joplin.git synced 2025-07-16 00:14:34 +02:00

Handle switching API domain

This commit is contained in:
Laurent Cozic
2017-01-11 15:18:56 +01:00
parent ad3c59577e
commit 603d5e1370
17 changed files with 162 additions and 62 deletions

View File

@ -31,6 +31,7 @@ Application::Application(int &argc, char **argv) :
qDebug() << "Config dir:" << paths::configDir();
qDebug() << "Database file:" << paths::databaseFile();
qDebug() << "SSL:" << QSslSocket::sslLibraryBuildVersionString() << QSslSocket::sslLibraryVersionNumber();
jop::db().initialize(paths::databaseFile());
@ -152,9 +153,21 @@ void Application::dispatcher_loginClicked(const QString &apiBaseUrl, const QStri
qDebug() << apiBaseUrl << email << password;
dispatcher().emitLoginStarted();
QString newBaseUrl = filters::apiBaseUrl(apiBaseUrl);
Settings settings;
if (newBaseUrl != settings.value("api.baseUrl").toString()) {
// TODO: add confirmation dialog
qDebug() << "Base URL has changed from" << settings.value("api.baseUrl").toString() << "to" << newBaseUrl;
BaseModel::deleteAll(jop::FoldersTable);
BaseModel::deleteAll(jop::ChangesTable);
settings.remove("lastRevId");
settings.setValue("clientId", uuid::createUuid());
}
settings.setValue("user.email", filters::email(email));
settings.setValue("api.baseUrl", filters::apiBaseUrl(apiBaseUrl));
settings.setValue("api.baseUrl", newBaseUrl);
api_.setBaseUrl(apiBaseUrl);
@ -168,6 +181,9 @@ void Application::dispatcher_logoutClicked() {
Settings settings;
settings.setValue("session.id", "");
api_.setSessionId("");
synchronizer_.setSessionId("");
view_.showPage("login");
}