.
This commit is contained in:
+18
-12
@@ -208,6 +208,11 @@ void cMainWindow::initDB()
|
||||
" cast STRING,"
|
||||
" crew STRING,"
|
||||
" genre STRING,"
|
||||
" imdbid STRING,"
|
||||
" freebasemid STRING,"
|
||||
" freebaseid STRING,"
|
||||
" tvdbid INTEGER,"
|
||||
" tvrageid INTEGER,"
|
||||
" status STRING,"
|
||||
" download STRING,"
|
||||
" cliffhanger BOOL);");
|
||||
@@ -341,15 +346,6 @@ void cMainWindow::convertSeries()
|
||||
lpSerie = 0;
|
||||
}
|
||||
}
|
||||
/*
|
||||
qint16 _id();
|
||||
QDate airDate();
|
||||
QString name();
|
||||
QString overview();
|
||||
qint16 id();
|
||||
QString posterPath();
|
||||
qint16 seasonNumber();
|
||||
*/
|
||||
|
||||
void cMainWindow::loadSeriesDB()
|
||||
{
|
||||
@@ -388,6 +384,11 @@ void cMainWindow::loadSeriesDB()
|
||||
" serie.cast cast,"
|
||||
" serie.crew crew,"
|
||||
" serie.genre genre,"
|
||||
" serie.imdbid imdbid,"
|
||||
" serie.freebasemid freebasemid,"
|
||||
" serie.freebaseid freebaseid,"
|
||||
" serie.tvdbid tvdbid,"
|
||||
" serie.tvrageid tvrageid,"
|
||||
" serie.status status,"
|
||||
" serie.download download,"
|
||||
" serie.cliffhanger cliffhanger,"
|
||||
@@ -460,6 +461,11 @@ void cMainWindow::loadSeriesDB()
|
||||
lpSerie->setCast(query.value("cast").toString().split("|"));
|
||||
lpSerie->setCrew(query.value("crew").toString().split("|"));
|
||||
lpSerie->setGenre(query.value("genre").toString());
|
||||
lpSerie->setIMDBID(query.value("imdbid").toString());
|
||||
lpSerie->setFreebaseMID(query.value("freebasemid").toString());
|
||||
lpSerie->setFreebaseID(query.value("freebaseid").toString());
|
||||
lpSerie->setTVDBID(query.value("tvdbid").toInt());
|
||||
lpSerie->setTVRageID(query.value("tvrageid").toInt());
|
||||
lpSerie->setStatus(query.value("status").toString());
|
||||
lpSerie->setDownload(query.value("download").toString());
|
||||
lpSerie->setCliffhanger(query.value("cliffhanger").toBool());
|
||||
@@ -1361,7 +1367,6 @@ void cMainWindow::onActionEdit()
|
||||
{
|
||||
QModelIndex index = ui->m_lpSeriesList1->selectionModel()->selectedRows().at(0);
|
||||
|
||||
// cSerie* lpSerie = m_lpSeriesListModel->itemFromIndex(ui->m_lpSeriesList1->selectionModel()->selectedRows().at(0))->data(Qt::UserRole).value<cSerie*>();
|
||||
cSerie* lpSerie = m_lpSeriesListModel->itemFromIndex(index)->data(Qt::UserRole).value<cSerie*>();
|
||||
if(!lpSerie)
|
||||
return;
|
||||
@@ -1381,8 +1386,9 @@ void cMainWindow::onActionEdit()
|
||||
lpSerie->del(m_db);
|
||||
lpSerie->save(m_db);
|
||||
|
||||
emit m_lpSeriesListModel->layoutChanged();
|
||||
|
||||
// emit m_lpSeriesListModel->layoutChanged();
|
||||
emit ui->m_lpSeriesList1->model()->layoutChanged();
|
||||
emit ui->m_lpSeriesList2->model()->layoutChanged();
|
||||
delete lpDialog;
|
||||
}
|
||||
|
||||
|
||||
+62
-2
@@ -25,6 +25,11 @@ cSerie::cSerie() :
|
||||
m_iVoteCount(-1),
|
||||
m_szOverview(""),
|
||||
m_firstAired(QDate(1900, 1, 1)),
|
||||
m_szIMDBID(""),
|
||||
m_szFreebaseMID(""),
|
||||
m_szFreebaseID(""),
|
||||
m_iTVDBID(-1),
|
||||
m_iTVRageID(-1),
|
||||
m_szStatus(""),
|
||||
m_szDownload(""),
|
||||
m_bCliffhanger(false)
|
||||
@@ -311,6 +316,56 @@ QStringList cSerie::genre()
|
||||
return(m_szGenre);
|
||||
}
|
||||
|
||||
void cSerie::setIMDBID(const QString& szIMDBID)
|
||||
{
|
||||
m_szIMDBID = szIMDBID;
|
||||
}
|
||||
|
||||
QString cSerie::IMDBID()
|
||||
{
|
||||
return(m_szIMDBID);
|
||||
}
|
||||
|
||||
void cSerie::setFreebaseMID(const QString& szFreebaseMID)
|
||||
{
|
||||
m_szFreebaseMID = szFreebaseMID;
|
||||
}
|
||||
|
||||
QString cSerie::freebaseMID()
|
||||
{
|
||||
return(m_szFreebaseMID);
|
||||
}
|
||||
|
||||
void cSerie::setFreebaseID(const QString& szFreebaseID)
|
||||
{
|
||||
m_szFreebaseID = szFreebaseID;
|
||||
}
|
||||
|
||||
QString cSerie::freebaseID()
|
||||
{
|
||||
return(m_szFreebaseID);
|
||||
}
|
||||
|
||||
void cSerie::setTVDBID(const qint16& iTVDBID)
|
||||
{
|
||||
m_iTVDBID = iTVDBID;
|
||||
}
|
||||
|
||||
qint16 cSerie::tvdbID()
|
||||
{
|
||||
return(m_iTVDBID);
|
||||
}
|
||||
|
||||
void cSerie::setTVRageID(const qint16& iTVRageID)
|
||||
{
|
||||
m_iTVRageID = iTVRageID;
|
||||
}
|
||||
|
||||
qint16 cSerie::tvrageID()
|
||||
{
|
||||
return(m_iTVRageID);
|
||||
}
|
||||
|
||||
void cSerie::setStatus(const QString& szStatus)
|
||||
{
|
||||
m_szStatus = szStatus;
|
||||
@@ -430,8 +485,8 @@ bool cSerie::save(QSqlDatabase &db)
|
||||
QSqlQuery querySeason;
|
||||
QSqlQuery queryEpisode;
|
||||
|
||||
querySerie.prepare("INSERT INTO serie (seriesID,seriesName,originalName,backdropPath,createdBy,homepage,lastAired,languages,networks,nrEpisodes,nrSeasons,originCountries,originalLanguage,popularity,posterPath,productionCompanies,type,voteAverage,voteCount,overview,firstAired,cast,crew,genre,status,download,cliffhanger)"
|
||||
" VALUES (:seriesID,:seriesName,:originalName,:backdropPath,:createdBy,:homepage,:lastAired,:languages,:networks,:nrEpisodes,:nrSeasons,:originCountries,:originalLanguage,:popularity,:posterPath,:productionCompanies,:type,:voteAverage,:voteCount,:overview,:firstAired,:cast,:crew,:genre,:status,:download,:cliffhanger);");
|
||||
querySerie.prepare("INSERT INTO serie (seriesID,seriesName,originalName,backdropPath,createdBy,homepage,lastAired,languages,networks,nrEpisodes,nrSeasons,originCountries,originalLanguage,popularity,posterPath,productionCompanies,type,voteAverage,voteCount,overview,firstAired,cast,crew,genre,imdbid,freebasemid,freebaseid,tvdbid,tvrageid,status,download,cliffhanger)"
|
||||
" VALUES (:seriesID,:seriesName,:originalName,:backdropPath,:createdBy,:homepage,:lastAired,:languages,:networks,:nrEpisodes,:nrSeasons,:originCountries,:originalLanguage,:popularity,:posterPath,:productionCompanies,:type,:voteAverage,:voteCount,:overview,:firstAired,:cast,:crew,:genre,:imdbid,:freebasemid,:freebaseid,:tvdbid,:tvrageid,:status,:download,:cliffhanger);");
|
||||
querySeason.prepare("INSERT INTO season (_id,airDate,name,overview,id,posterPath,seasonNumber,seriesID) VALUES (:_id,:airDate,:name,:overview,:id,:posterPath,:seasonNumber,:seriesID);");
|
||||
queryEpisode.prepare("INSERT INTO episode (id,name,episodeNumber,airDate,guestStars,overview,productioncode,seasonNumber,seasonID,seriesID,stillPath,voteAverage,voteCount,crew,state)"
|
||||
" VALUES (:id,:name,:episodeNumber,:airDate,:guestStars,:overview,:productioncode,:seasonNumber,:seasonID,:seriesID,:stillPath,:voteAverage,:voteCount,:crew,:state);");
|
||||
@@ -465,6 +520,11 @@ bool cSerie::save(QSqlDatabase &db)
|
||||
querySerie.bindValue(":cast", cast().join("|"));
|
||||
querySerie.bindValue(":crew", crew().join("|"));
|
||||
querySerie.bindValue(":genre", genre().join(","));
|
||||
querySerie.bindValue(":imdbid", IMDBID());
|
||||
querySerie.bindValue(":freebasemid", freebaseMID());
|
||||
querySerie.bindValue(":freebaseid", freebaseID());
|
||||
querySerie.bindValue(":tvdbid", tvdbID());
|
||||
querySerie.bindValue("tvrageid", tvrageID());
|
||||
querySerie.bindValue(":status", status());
|
||||
querySerie.bindValue(":download", download());
|
||||
querySerie.bindValue(":cliffhanger", cliffhanger());
|
||||
|
||||
@@ -94,6 +94,21 @@ public:
|
||||
void setGenre(const QStringList& szGenre);
|
||||
QStringList genre();
|
||||
|
||||
void setIMDBID(const QString& szIMDBID);
|
||||
QString IMDBID();
|
||||
|
||||
void setFreebaseMID(const QString& szFreebaseMID);
|
||||
QString freebaseMID();
|
||||
|
||||
void setFreebaseID(const QString& szFreebaseID);
|
||||
QString freebaseID();
|
||||
|
||||
void setTVDBID(const qint16& iTVDBID);
|
||||
qint16 tvdbID();
|
||||
|
||||
void setTVRageID(const qint16& iTVRageID);
|
||||
qint16 tvrageID();
|
||||
|
||||
void setStatus(const QString& szStatus);
|
||||
QString status();
|
||||
|
||||
@@ -155,6 +170,11 @@ private:
|
||||
QStringList m_szCast;
|
||||
QStringList m_szCrew;
|
||||
QStringList m_szGenre;
|
||||
QString m_szIMDBID;
|
||||
QString m_szFreebaseMID;
|
||||
QString m_szFreebaseID;
|
||||
qint16 m_iTVDBID;
|
||||
qint16 m_iTVRageID;
|
||||
QString m_szStatus;
|
||||
QString m_szDownload;
|
||||
bool m_bCliffhanger;
|
||||
|
||||
+11
-2
@@ -325,7 +325,7 @@ cSerie* cTheMovieDBV3::loadSerie(const qint32 &iID, const QString& szLanguage)
|
||||
{
|
||||
cSerie* lpSerie = 0;
|
||||
QNetworkAccessManager networkManager;
|
||||
QNetworkRequest request(QUrl(QString("https://api.themoviedb.org/3/tv/%1?api_key=%2&language=%3&append_to_response=credits").arg(iID).arg(m_szToken).arg(szLanguage)));
|
||||
QNetworkRequest request(QUrl(QString("https://api.themoviedb.org/3/tv/%1?api_key=%2&language=%3&append_to_response=credits,external_ids").arg(iID).arg(m_szToken).arg(szLanguage)));
|
||||
|
||||
request.setRawHeader("Content-Type", "application/json");
|
||||
request.setRawHeader("Authorization", QString("Bearer %1").arg(m_szToken).toUtf8());
|
||||
@@ -403,8 +403,17 @@ cSerie* cTheMovieDBV3::loadSerie(const qint32 &iID, const QString& szLanguage)
|
||||
lpSerie->setVoteAverage(jsonObj["vote_average"].toDouble());
|
||||
lpSerie->setVoteCount(jsonObj["vote_count"].toInt());
|
||||
|
||||
QJsonObject creditsObj = jsonObj["credits"].toObject();
|
||||
QJsonObject idsObj = jsonObj["external_ids"].toObject();
|
||||
if(!idsObj.isEmpty())
|
||||
{
|
||||
lpSerie->setIMDBID(idsObj["imdb_id"].toString());
|
||||
lpSerie->setFreebaseMID(idsObj["freebase_mid"].toString());
|
||||
lpSerie->setFreebaseID(idsObj["freebase_id"].toString());
|
||||
lpSerie->setTVDBID(idsObj["tvdb_id"].toInt());
|
||||
lpSerie->setTVRageID(idsObj["tvrage_id"].toInt());
|
||||
}
|
||||
|
||||
QJsonObject creditsObj = jsonObj["credits"].toObject();
|
||||
if(!creditsObj.isEmpty())
|
||||
{
|
||||
QJsonArray jsonArrayCast = creditsObj["cast"].toArray();
|
||||
|
||||
Reference in New Issue
Block a user