bool CVideoLibrary::FillFileItemList(const CVariant ¶meterObject, CFileItemList &list) { CVideoDatabase videodatabase; if (videodatabase.Open()) { CStdString file = parameterObject["file"].asString(); int movieID = (int)parameterObject["movieid"].asInteger(-1); int episodeID = (int)parameterObject["episodeid"].asInteger(-1); int musicVideoID = (int)parameterObject["musicvideoid"].asInteger(-1); bool success = false; CFileItem fileItem; if (FillFileItem(file, fileItem)) { success = true; list.Add(CFileItemPtr(new CFileItem(fileItem))); } if (movieID > 0) { CVideoInfoTag details; videodatabase.GetMovieInfo("", details, movieID); if (!details.IsEmpty()) { list.Add(CFileItemPtr(new CFileItem(details))); success = true; } } if (episodeID > 0) { CVideoInfoTag details; if (videodatabase.GetEpisodeInfo("", details, episodeID) && !details.IsEmpty()) { list.Add(CFileItemPtr(new CFileItem(details))); success = true; } } if (musicVideoID > 0) { CVideoInfoTag details; videodatabase.GetMusicVideoInfo("", details, musicVideoID); if (!details.IsEmpty()) { list.Add(CFileItemPtr(new CFileItem(details))); success = true; } } videodatabase.Close(); return success; } return false; }
bool CVideoLibrary::FillFileItemList(const Value ¶meterObject, CFileItemList &list) { CVideoDatabase videodatabase; if ((parameterObject["movieid"].isInt() || parameterObject["episodeid"].isInt() || parameterObject["musicvideoid"].isInt()) && videodatabase.Open()) { int movieID = ParameterAsInt(parameterObject, -1, "movieid"); int episodeID = ParameterAsInt(parameterObject, -1, "episodeid"); int musicVideoID = ParameterAsInt(parameterObject, -1, "musicvideoid"); bool success = true; if (movieID > 0) { CVideoInfoTag details; videodatabase.GetMovieInfo("", details, movieID); if (!details.IsEmpty()) { CFileItemPtr item = CFileItemPtr(new CFileItem(details)); list.Add(item); success &= true; } success = false; } if (episodeID > 0) { CVideoInfoTag details; if (videodatabase.GetEpisodeInfo("", details, episodeID) && !details.IsEmpty()) { CFileItemPtr item = CFileItemPtr(new CFileItem(details)); list.Add(item); success &= true; } success = false; } if (musicVideoID > 0) { CVideoInfoTag details; videodatabase.GetMusicVideoInfo("", details, musicVideoID); if (!details.IsEmpty()) { CFileItemPtr item = CFileItemPtr(new CFileItem(details)); list.Add(item); success &= true; } success = false; } videodatabase.Close(); return success; } return false; }