Updates for XML schema compliance.

Added tags for additional info in TCX file and a tries to use a
valid value for sport type/activity based on user defined meta
data.
This commit is contained in:
Dean Junk
2013-01-26 07:04:27 -06:00
committed by Mark Liversedge
parent 72818a2710
commit f688ec1cfa
2 changed files with 11 additions and 2 deletions

View File

@@ -286,6 +286,7 @@ PwxFileReader::writeRideFile(MainWindow *main, const RideFile *ride, QFile &file
// pwx
QDomElement pwx = doc.createElementNS("http://www.peaksware.com/PWX/1/0", "pwx");
pwx.setAttribute("creator", "Golden Cheetah");
pwx.setAttribute("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance");
pwx.setAttribute("xmlns:xsd", "http://www.w3.org/2001/XMLSchema");
pwx.setAttribute("xsi:schemaLocation", "http://www.peaksware.com/PWX/1/0 http://www.peaksware.com/PWX/1/0/pwx.xsd");
@@ -312,8 +313,12 @@ PwxFileReader::writeRideFile(MainWindow *main, const RideFile *ride, QFile &file
// sport
QString sport = ride->getTag("Sport", "Bike");
if (sport == QObject::tr("Biking") || sport == QObject::tr("Cycling") || sport == QObject::tr("Cycle") || sport == QObject::tr("Bike")) {
sport = "Bike";
}
QDomElement sportType = doc.createElement("sportType");
text = doc.createTextNode(sport); sportType.appendChild(text);
text = doc.createTextNode(sport);
sportType.appendChild(text);
root.appendChild(sportType);
// notes

View File

@@ -66,10 +66,14 @@ TcxFileReader::writeRideFile(MainWindow *mainWindow, const RideFile *ride, QFile
doc.appendChild(tcx);
// activities, we just serialise one ride
QString sport = ride->getTag("Sport", "Biking");
if (sport == QObject::tr("Biking") || sport == QObject::tr("Cycling") || sport == QObject::tr("Cycle") || sport == QObject::tr("Bike")) {
sport = "Biking";
}
QDomElement activities = doc.createElement("Activities");
tcx.appendChild(activities);
QDomElement activity = doc.createElement("Activity");
activity.setAttribute("Sport", "Biking"); // was ride->getTag("Sport", "Biking") but must be Biking, Running or Other
activity.setAttribute("Sport", sport); // was ride->getTag("Sport", "Biking") but must be Biking, Running or Other
activities.appendChild(activity);
// time