From 76bb89940a3818456f535b7d4a8ba6ab9f382631 Mon Sep 17 00:00:00 2001 From: Arno Date: Sat, 6 Nov 2010 14:12:12 +0100 Subject: Bugfix in moveToBurn() Using the filename from the QModelIndex isn't enough to determine wether the file is a cover or not. A series can have more than one part. So check the real file type and only copy if it's not of type Movie. This fix should obsolete the new ConsistencyChecker :) --- filestreemodel.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'filestreemodel.cpp') diff --git a/filestreemodel.cpp b/filestreemodel.cpp index fd6264a..38ef000 100644 --- a/filestreemodel.cpp +++ b/filestreemodel.cpp @@ -38,6 +38,8 @@ FilesTreeModel::FilesTreeModel(QStringList &headers, QObject *parent) : SmTreeMo mFilesQuery->prepare("SELECT tfilename, cmd5sum FROM files WHERE iseriespart_id = :id"); mDeleteFileQuery = new QSqlQuery(mDb); mDeleteFileQuery->prepare("DELETE FROM files WHERE ifiles_id = :id"); + mFileTypeQuery = new QSqlQuery(mDb); + mFileTypeQuery->prepare("SELECT sifiletype FROM files WHERE cmd5sum = :md5"); //file types mFileTypes.insert(1, tr("Movie")); @@ -362,6 +364,19 @@ QMap FilesTreeModel::pictureMetaInfo(const QModelIndex &idx){ return retval; } +int FilesTreeModel::fileType(const QString &md5sum) const{ + if(md5sum == "00000000000000000000000000000000"){ + return -1; + } + mFileTypeQuery->bindValue(":md5", md5sum); + int retval = -1; + mFileTypeQuery->exec(); + while(mFileTypeQuery->next()){ + retval = mFileTypeQuery->value(0).toInt(); + } + return retval; +} + bool FilesTreeModel::addFile(const QString &fullPath, int type, int quality, int filePart, int seriesPartId, int dvd){ QFileInfo fi(fullPath); qint64 size = fi.size(); -- cgit v1.2.3-70-g09d2