diff --git a/src/librssguard/database/databasedriver.h b/src/librssguard/database/databasedriver.h index 1bba300a6..3a1c6551b 100755 --- a/src/librssguard/database/databasedriver.h +++ b/src/librssguard/database/databasedriver.h @@ -28,6 +28,7 @@ class DatabaseDriver : public QObject { explicit DatabaseDriver(QObject* parent = nullptr); // API. + virtual QString location() const = 0; virtual QString humanDriverType() const = 0; virtual QString qtDriverCode() const = 0; virtual DriverType driverType() const = 0; diff --git a/src/librssguard/database/mariadbdriver.cpp b/src/librssguard/database/mariadbdriver.cpp index de3dac58e..4c286f479 100755 --- a/src/librssguard/database/mariadbdriver.cpp +++ b/src/librssguard/database/mariadbdriver.cpp @@ -62,6 +62,11 @@ MariaDbDriver::MariaDbError MariaDbDriver::testConnection(const QString& hostnam } } +QString MariaDbDriver::location() const { + return QSL("%1/%2").arg(qApp->settings()->value(GROUP(Database), SETTING(Database::MySQLHostname)).toString(), + qApp->settings()->value(GROUP(Database), SETTING(Database::MySQLDatabase)).toString()); +} + QString MariaDbDriver::interpretErrorCode(MariaDbDriver::MariaDbError error_code) const { switch (error_code) { case MariaDbError::Ok: diff --git a/src/librssguard/database/mariadbdriver.h b/src/librssguard/database/mariadbdriver.h index cf2fc0081..294d8255a 100755 --- a/src/librssguard/database/mariadbdriver.h +++ b/src/librssguard/database/mariadbdriver.h @@ -24,6 +24,7 @@ class MariaDbDriver : public DatabaseDriver { MariaDbError testConnection(const QString& hostname, int port, const QString& w_database, const QString& username, const QString& password); + virtual QString location() const; virtual QString humanDriverType() const; virtual QString qtDriverCode() const; virtual DriverType driverType() const; diff --git a/src/librssguard/database/sqlitedriver.cpp b/src/librssguard/database/sqlitedriver.cpp index 958daccc4..8980f402e 100755 --- a/src/librssguard/database/sqlitedriver.cpp +++ b/src/librssguard/database/sqlitedriver.cpp @@ -16,6 +16,10 @@ SqliteDriver::SqliteDriver(bool in_memory, QObject* parent) m_fileBasedDatabaseInitialized(false), m_inMemoryDatabaseInitialized(false) {} +QString SqliteDriver::location() const { + return m_databaseFilePath; +} + DatabaseDriver::DriverType SqliteDriver::driverType() const { return DriverType::SQLite; } diff --git a/src/librssguard/database/sqlitedriver.h b/src/librssguard/database/sqlitedriver.h index 4a8e001bb..2b581383c 100755 --- a/src/librssguard/database/sqlitedriver.h +++ b/src/librssguard/database/sqlitedriver.h @@ -11,6 +11,7 @@ class SqliteDriver : public DatabaseDriver { public: explicit SqliteDriver(bool in_memory, QObject* parent = nullptr); + virtual QString location() const; virtual DriverType driverType() const; virtual bool vacuumDatabase(); virtual bool saveDatabase(); diff --git a/src/librssguard/definitions/definitions.h b/src/librssguard/definitions/definitions.h index c3f462cdb..019a85786 100755 --- a/src/librssguard/definitions/definitions.h +++ b/src/librssguard/definitions/definitions.h @@ -160,7 +160,7 @@ #define APP_DB_SQLITE_DRIVER "QSQLITE" #define APP_DB_SQLITE_INIT "db_init_sqlite.sql" -#define APP_DB_SQLITE_PATH "database/local" +#define APP_DB_SQLITE_PATH "database" #define APP_DB_SQLITE_FILE "database.db" // Keep this in sync with schema versions declared in SQL initialization code. diff --git a/src/librssguard/gui/dialogs/formabout.cpp b/src/librssguard/gui/dialogs/formabout.cpp index cb7fb63b0..445da145b 100644 --- a/src/librssguard/gui/dialogs/formabout.cpp +++ b/src/librssguard/gui/dialogs/formabout.cpp @@ -2,9 +2,12 @@ #include "gui/dialogs/formabout.h" +#include "database/databasedriver.h" +#include "database/databasefactory.h" #include "definitions/definitions.h" #include "exceptions/applicationexception.h" #include "gui/guiutilities.h" +#include "miscellaneous/application.h" #include "miscellaneous/iconfactory.h" #include "miscellaneous/settingsproperties.h" #include "miscellaneous/textfactory.h" @@ -33,9 +36,7 @@ void FormAbout::loadSettingsAndPaths() { m_ui.m_txtPathsSettingsType->setText(tr("NOT portable")); } - m_ui.m_txtPathsDatabaseRoot->setText(QDir::toNativeSeparators(qApp->userDataFolder() + - QDir::separator() + - QString(APP_DB_SQLITE_PATH))); + m_ui.m_txtPathsDatabaseRoot->setText(qApp->database()->driver()->location()); m_ui.m_txtPathsSettingsFile->setText(QDir::toNativeSeparators(qApp->settings()->fileName())); m_ui.m_txtPathsSkinsRoot->setText(QDir::toNativeSeparators(qApp->skins()->customSkinBaseFolder())); } diff --git a/src/librssguard/gui/dialogs/formabout.ui b/src/librssguard/gui/dialogs/formabout.ui index 95448c4f4..bfd5ace83 100644 --- a/src/librssguard/gui/dialogs/formabout.ui +++ b/src/librssguard/gui/dialogs/formabout.ui @@ -235,7 +235,7 @@ p, li { white-space: pre-wrap; } 0 0 - 83 + 98 69 @@ -305,7 +305,7 @@ p, li { white-space: pre-wrap; } 0 0 - 83 + 98 69 @@ -472,7 +472,7 @@ p, li { white-space: pre-wrap; } - Database root path + Database location