Merge branch 'single_query_playcounts'
[vuplus_xbmc] / xbmc / video / VideoInfoTag.cpp
index 7fe8bae..d15c1ea 100644 (file)
@@ -79,6 +79,7 @@ void CVideoInfoTag::Reset()
   m_playCount = 0;
   m_fEpBookmark = 0;
   m_basePath = "";
+  m_parentPathID = -1;
 }
 
 bool CVideoInfoTag::Save(TiXmlNode *node, const CStdString &tag, bool savePathInfo)
@@ -305,6 +306,7 @@ void CVideoInfoTag::Archive(CArchive& ar)
     ar << m_strShowLink;
     ar << m_fEpBookmark;
     ar << m_basePath;
+    ar << m_parentPathID;
   }
   else
   {
@@ -371,6 +373,7 @@ void CVideoInfoTag::Archive(CArchive& ar)
     ar >> m_strShowLink;
     ar >> m_fEpBookmark;
     ar >> m_basePath;
+    ar >> m_parentPathID;
   }
 }
 
@@ -387,10 +390,13 @@ void CVideoInfoTag::Serialize(CVariant& value)
   value["votes"] = m_strVotes;
   value["studio"] = m_strStudio;
   value["trailer"] = m_strTrailer;
+  value["cast"] = CVariant(CVariant::VariantTypeArray);
   for (unsigned int i = 0; i < m_cast.size(); ++i)
   {
-    value["cast"][i]["name"] = m_cast[i].strName;
-    value["cast"][i]["role"] = m_cast[i].strRole;
+    CVariant actor;
+    actor["name"] = m_cast[i].strName;
+    actor["role"] = m_cast[i].strRole;
+    value["cast"].push_back(actor);
   }
   value["set"] = m_strSet;
   value["runtime"] = m_strRuntime;
@@ -400,6 +406,7 @@ void CVideoInfoTag::Serialize(CVariant& value)
   value["mpaa"] = m_strMPAARating;
   value["filenameandpath"] = m_strFileNameAndPath;
   value["originaltitle"] = m_strOriginalTitle;
+  value["sorttitle"] = m_strSortTitle;
   value["episodeguide"] = m_strEpisodeGuide;
   value["premiered"] = m_strPremiered;
   value["status"] = m_strStatus;