Propagate updates to all the parent folders

This commit is contained in:
Luis Ángel San Martín 2023-10-19 19:34:02 +02:00
parent 14fccb01d0
commit 682f5761b2

View File

@ -1292,13 +1292,22 @@ qulonglong DBHelper::insert(ComicDB *comic, QSqlDatabase &db, bool insertAllInfo
query.bindValue(":path", comic->path);
query.exec();
// loop through parents and update their updated field
// TODO: use stored procedures
QSqlQuery updateFolder(db);
updateFolder.prepare("UPDATE folder SET "
"updated = :updated "
"WHERE id = :id ");
updateFolder.bindValue(":updated", added);
updateFolder.bindValue(":id", comic->parentId);
updateFolder.exec();
auto currentParentId = comic->parentId;
while (currentParentId != 1 && currentParentId != 0) {
updateFolder.bindValue(":updated", added);
updateFolder.bindValue(":id", currentParentId);
updateFolder.exec();
auto f = loadFolder(currentParentId, db);
currentParentId = f.parentId;
}
//----
return query.lastInsertId().toULongLong();
}