SetArtForItem(idEpisode, "episode", artwork);
- // query DB for any episodes matching idShow, Season and Episode
- CStdString strSQL = PrepareSQL("select files.playCount, files.lastPlayed from episode, files where files.idFile=episode.idFile and episode.c%02d=%i and episode.c%02d=%i AND episode.idShow=%i and episode.idEpisode!=%i and files.playCount > 0",VIDEODB_ID_EPISODE_SEASON, details.m_iSeason, VIDEODB_ID_EPISODE_EPISODE, details.m_iEpisode, idShow, idEpisode);
- m_pDS->query(strSQL.c_str());
-
- if (!m_pDS->eof())
- {
- int playCount = m_pDS->fv("files.playCount").get_asInt();
+ if (details.m_iEpisode != -1 && details.m_iSeason != -1)
+ { // query DB for any episodes matching idShow, Season and Episode
+ CStdString strSQL = PrepareSQL("select files.playCount, files.lastPlayed from episode, files where files.idFile=episode.idFile and episode.c%02d=%i and episode.c%02d=%i AND episode.idShow=%i and episode.idEpisode!=%i and files.playCount > 0",VIDEODB_ID_EPISODE_SEASON, details.m_iSeason, VIDEODB_ID_EPISODE_EPISODE, details.m_iEpisode, idShow, idEpisode);
+ m_pDS->query(strSQL.c_str());
- CDateTime lastPlayed;
- lastPlayed.SetFromDBDateTime(m_pDS->fv("files.lastPlayed").get_asString());
+ if (!m_pDS->eof())
+ {
+ int playCount = m_pDS->fv("files.playCount").get_asInt();
- int idFile = GetFileId(strFilenameAndPath);
+ CDateTime lastPlayed;
+ lastPlayed.SetFromDBDateTime(m_pDS->fv("files.lastPlayed").get_asString());
- // update with playCount and lastPlayed
- strSQL = PrepareSQL("update files set playCount=%i,lastPlayed='%s' where idFile=%i", playCount, lastPlayed.GetAsDBDateTime().c_str(), idFile);
- m_pDS->exec(strSQL.c_str());
- }
+ int idFile = GetFileId(strFilenameAndPath);
- m_pDS->close();
+ // update with playCount and lastPlayed
+ strSQL = PrepareSQL("update files set playCount=%i,lastPlayed='%s' where idFile=%i", playCount, lastPlayed.GetAsDBDateTime().c_str(), idFile);
+ m_pDS->exec(strSQL.c_str());
+ }
+ m_pDS->close();
+ }
// and insert the new row
CStdString sql = "update episode set " + GetValueString(details, VIDEODB_ID_EPISODE_MIN, VIDEODB_ID_EPISODE_MAX, DbEpisodeOffsets);
sql += PrepareSQL(" where idEpisode=%i", idEpisode);