}
+ if (NodeFound == false){
+
+ return UserPrincipalURI;
+
+ }
+
// Look for response.
if (NodeFound == false){ return UserPrincipalURI; } else { NodeFound = false; }
}
+ if (NodeFound == false){
+
+ return CalendarHomeURI;
+
+ }
+
// Look for response.
if (NodeFound == false){ return CalendarHomeURI; } else { NodeFound = false; }
}
+ if (NodeFound == false){
+
+ return CalendarList;
+
+ }
+
for (NodeResponse = NodeSeek->children;
NodeResponse != nullptr;
NodeResponse = NodeResponse->next)
}
+ // Get the calendar tag URL.
+
+ NodeData = xmlCopyNode(NodeMatch, 1);
+
+ string CalendarTagURL = "";
+
+ if (!MatchXMLNameTransverse(&NodeData, "propstat")){ continue; }
+ if (!MatchXMLNameTransverse(&NodeData, "prop")){ continue; }
+ if (MatchXMLNameTransverse(&NodeData, "sync-token")){
+
+ CalendarTagURL = FetchXMLData(&NodeData);
+
+ }
+
// Insert the calendar information into the
// list if all the information is there.
CalendarList.CalColour.insert(make_pair(ResponseCount, CalendarColour));
CalendarList.Order.insert(make_pair(ResponseCount, CalendarOrder));
CalendarList.Tag.insert(make_pair(ResponseCount, CalendarTag));
+ CalendarList.TagURL.insert(make_pair(ResponseCount, CalendarTagURL));
ResponseCount++;
}
+ if (NodeFound == false){
+
+ return EntryETag;
+
+ }
+
// Look for response.
if (NodeFound == false){ return EntryETag; } else { NodeFound = false; }