summaryrefslogtreecommitdiffstats
path: root/searchdialog.cpp
diff options
context:
space:
mode:
authorArno <arno@disconnect.de>2021-05-28 07:57:05 +0200
committerArno <arno@disconnect.de>2021-05-28 07:57:05 +0200
commit62d3ca1482b202d2883eeb5e17e72300e8612477 (patch)
tree56df6cb9936f3621cd279427e95fb7e15065df57 /searchdialog.cpp
parent058ba694d3796673fdf044d6e4e0642ff8866dbc (diff)
downloadSheMov-62d3ca1482b202d2883eeb5e17e72300e8612477.tar.gz
SheMov-62d3ca1482b202d2883eeb5e17e72300e8612477.tar.bz2
SheMov-62d3ca1482b202d2883eeb5e17e72300e8612477.zip
Make Origin MD5sums searchable
First, add a QAction to copy the MD5sum from FSWidget to Clipboard. Then enhance the SearchDialog to support MD5sums from files_origin *only*.
Diffstat (limited to 'searchdialog.cpp')
-rw-r--r--searchdialog.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/searchdialog.cpp b/searchdialog.cpp
index 5c155b9..788c468 100644
--- a/searchdialog.cpp
+++ b/searchdialog.cpp
@@ -122,6 +122,23 @@ void FilenamesAndMetadata::search(){
if(ctr == 0){
appendEmpty(filenameItem);
}
+
+ //search md5sums
+ QSqlQuery md5sumQ(db);
+ md5sumQ.prepare("SELECT tfilename, iseriespart_id, series.tseries_name, seriesparts.tsubtitle FROM files, files_origin, seriesparts, series WHERE files_origin.cmd5sum = :md5 AND files_origin.ifiles_id = files.ifiles_id AND files.iseriespart_id = seriesparts.iseriesparts_id AND seriesparts.iseries_id = series.iseries_id");
+ md5sumQ.bindValue(":md5", mSearch->text());
+ SmTreeItem *md5Item = new SmTreeItem(QVariantList() << tr("MD5 Sums") << QVariant() << QVariant(), root);
+ root->appendChild(md5Item);
+ ctr = 0;
+ md5sumQ.exec();
+ while(md5sumQ.next()){
+ ++ctr;
+ appendChild(md5sumQ.value(1), md5sumQ.value(0), md5sumQ.value(2), md5sumQ.value(3), md5Item);
+ }
+ if(ctr == 0){
+ appendEmpty(md5Item);
+ }
+
mModel->setRoot(root);
mResult->expandAll();
}