| 600 | } |
| 601 | |
| 602 | void FolderModel::updateFolderCompletedStatus(const QModelIndexList &list, bool status) |
| 603 | { |
| 604 | QString connectionName = ""; |
| 605 | { |
| 606 | QSqlDatabase db = DataBaseManagement::loadDatabase(_databasePath); |
| 607 | db.transaction(); |
| 608 | for (const auto &mi : list) { |
| 609 | auto item = static_cast<FolderItem *>(mi.internalPointer()); |
| 610 | item->setData(FolderModel::Completed, status); |
| 611 | |
| 612 | if (!isSubfolder) { |
| 613 | Folder f = DBHelper::loadFolder(item->id, db); |
| 614 | f.completed = status; |
| 615 | DBHelper::update(f, db); |
| 616 | } |
| 617 | } |
| 618 | db.commit(); |
| 619 | connectionName = db.connectionName(); |
| 620 | } |
| 621 | QSqlDatabase::removeDatabase(connectionName); |
| 622 | |
| 623 | emit dataChanged(index(list.first().row(), FolderModel::Name), index(list.last().row(), FolderModel::Updated)); |
| 624 | } |
| 625 | |
| 626 | void FolderModel::updateFolderFinishedStatus(const QModelIndexList &list, bool status) |
| 627 | { |
no test coverage detected