mirror of
https://github.com/YACReader/yacreader
synced 2025-05-28 03:10:27 -04:00
Return invalid databases if the database doesn't exist
This commit is contained in:
parent
d70ea49c53
commit
7249988837
@ -120,7 +120,10 @@ QSqlDatabase DataBaseManagement::createDatabase(QString dest)
|
|||||||
|
|
||||||
QSqlDatabase DataBaseManagement::loadDatabase(QString path)
|
QSqlDatabase DataBaseManagement::loadDatabase(QString path)
|
||||||
{
|
{
|
||||||
// TODO check path
|
if (!QFile::exists(path + "/library.ydb")) {
|
||||||
|
return QSqlDatabase();
|
||||||
|
}
|
||||||
|
|
||||||
QString threadId = QString::number((long long)QThread::currentThreadId(), 16);
|
QString threadId = QString::number((long long)QThread::currentThreadId(), 16);
|
||||||
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE", path + threadId);
|
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE", path + threadId);
|
||||||
db.setDatabaseName(path + "/library.ydb");
|
db.setDatabaseName(path + "/library.ydb");
|
||||||
@ -134,7 +137,10 @@ QSqlDatabase DataBaseManagement::loadDatabase(QString path)
|
|||||||
|
|
||||||
QSqlDatabase DataBaseManagement::loadDatabaseFromFile(QString filePath)
|
QSqlDatabase DataBaseManagement::loadDatabaseFromFile(QString filePath)
|
||||||
{
|
{
|
||||||
// TODO check path
|
if (!QFile::exists(filePath)) {
|
||||||
|
return QSqlDatabase();
|
||||||
|
}
|
||||||
|
|
||||||
QString threadId = QString::number((long long)QThread::currentThreadId(), 16);
|
QString threadId = QString::number((long long)QThread::currentThreadId(), 16);
|
||||||
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE", filePath + threadId);
|
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE", filePath + threadId);
|
||||||
db.setDatabaseName(filePath);
|
db.setDatabaseName(filePath);
|
||||||
@ -196,7 +202,7 @@ bool DataBaseManagement::createTables(QSqlDatabase &database)
|
|||||||
// new 7.0 fields
|
// new 7.0 fields
|
||||||
|
|
||||||
"hasBeenOpened BOOLEAN DEFAULT 0,"
|
"hasBeenOpened BOOLEAN DEFAULT 0,"
|
||||||
"rating INTEGER DEFAULT 0," // TODO_METADATA change type to REAL with two decimals
|
"rating REAL DEFAULT 0," // changed to REAL from INTEGER (9.13)
|
||||||
"currentPage INTEGER DEFAULT 1, "
|
"currentPage INTEGER DEFAULT 1, "
|
||||||
"bookmark1 INTEGER DEFAULT -1, "
|
"bookmark1 INTEGER DEFAULT -1, "
|
||||||
"bookmark2 INTEGER DEFAULT -1, "
|
"bookmark2 INTEGER DEFAULT -1, "
|
||||||
@ -401,6 +407,7 @@ void DataBaseManagement::exportComicsInfo(QString source, QString dest)
|
|||||||
QSqlDatabase::removeDatabase(connectionName);
|
QSqlDatabase::removeDatabase(connectionName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO_METADATA: validate imported info
|
||||||
bool DataBaseManagement::importComicsInfo(QString source, QString dest)
|
bool DataBaseManagement::importComicsInfo(QString source, QString dest)
|
||||||
{
|
{
|
||||||
QString error;
|
QString error;
|
||||||
|
Loading…
Reference in New Issue
Block a user