diff options
author | Arno <am@disconnect.de> | 2013-07-12 14:25:59 +0200 |
---|---|---|
committer | Arno <am@disconnect.de> | 2013-07-12 14:25:59 +0200 |
commit | 9954c11ac9bc51fe81cc9949ff9799ac87512d92 (patch) | |
tree | a0c546ea4cbf706cc602a1f3c019b2149740a6a6 /archivemodel.cpp | |
parent | 5b18830e0072d2d69b85697129be3e44d60f9235 (diff) | |
download | SheMov-9954c11ac9bc51fe81cc9949ff9799ac87512d92.tar.gz SheMov-9954c11ac9bc51fe81cc9949ff9799ac87512d92.tar.bz2 SheMov-9954c11ac9bc51fe81cc9949ff9799ac87512d92.zip |
Make PartNo and Subtitle editable
Diffstat (limited to 'archivemodel.cpp')
-rw-r--r-- | archivemodel.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/archivemodel.cpp b/archivemodel.cpp index 0a2c645..fe0ffff 100644 --- a/archivemodel.cpp +++ b/archivemodel.cpp @@ -95,6 +95,12 @@ QVariant ArchiveModel::data(const QModelIndex &index, int role) const{ if(role == SeriesPartIdRole){ return item->data(SeriesPartId); } + if(role == SeriesPartRole){ + return item->data(SeriesPart); + } + if(role == SubtitleRole){ + return item->data(Subtitle); + } return SmTreeModel::data(index, role); } @@ -448,6 +454,21 @@ void ArchiveModel::setMetadata(int partId, const QList<QVariant> &data){ mDb.commit(); } +bool ArchiveModel::setPartNo(int partId, int newPartId, const QString &subtitle){ + mDb.transaction(); + QSqlQuery updatePartNoQ(mDb); + updatePartNoQ.prepare("UPDATE seriesparts SET iseriespart = :npid, tsubtitle = :tsub WHERE iseriesparts_id = :pid"); + updatePartNoQ.bindValue(":pid", partId); + updatePartNoQ.bindValue(":npid", newPartId); + updatePartNoQ.bindValue(":tsub", subtitle); + if(!updatePartNoQ.exec()){ + mDb.rollback(); + return false; + } + mDb.commit(); + return true; +} + QStringList ArchiveModel::allSources() const{ QSqlQuery sQ("SELECT DISTINCT(tsourcemedium) FROM metadata ORDER BY tsourcemedium ASC", mDb); QStringList retval; |