bool CFanart::Unpack() { CXBMCTinyXML doc; doc.Parse(m_xml); m_fanart.clear(); TiXmlElement *fanart = doc.FirstChildElement("fanart"); while (fanart) { std::string url = XMLUtils::GetAttribute(fanart, "url"); TiXmlElement *fanartThumb = fanart->FirstChildElement("thumb"); while (fanartThumb) { if (!fanartThumb->NoChildren()) { SFanartData data; if (url.empty()) { data.strImage = fanartThumb->FirstChild()->ValueStr(); data.strPreview = XMLUtils::GetAttribute(fanartThumb, "preview"); } else { data.strImage = URIUtils::AddFileToFolder(url, fanartThumb->FirstChild()->ValueStr()); if (fanartThumb->Attribute("preview")) data.strPreview = URIUtils::AddFileToFolder(url, fanartThumb->Attribute("preview")); } data.strResolution = XMLUtils::GetAttribute(fanartThumb, "dim"); ParseColors(XMLUtils::GetAttribute(fanartThumb, "colors"), data.strColors); m_fanart.push_back(data); } fanartThumb = fanartThumb->NextSiblingElement("thumb"); } fanart = fanart->NextSiblingElement("fanart"); } return true; }