#include "CalendarFreeBusy.h" using namespace std; void CalendarFreeBusyObject::SaveObjectData(string *SaveData){ string DataLine = ""; string DataLineProcessed = ""; *SaveData += "BEGIN:VFREEBUSY\n"; // Process the UID. if (UniqueID.size() > 0){ if (UniqueIDTokens.size() > 0){ DataLine += "UID;"; DataLine += UniqueIDTokens; } else { DataLine += "UID"; } DataLine += ":"; DataLine += UniqueID; DataLine += "\n"; DataLineProcessed = OutputText(&DataLine); *SaveData += DataLineProcessed; DataLine.clear(); DataLineProcessed.clear(); } // Process the DTSTAMP. if (DateTimeStampData.size() > 0){ if (DateTimeStampTokens.size() > 0){ DataLine += "DTSTAMP;"; DataLine += DateTimeStampTokens; } else { DataLine += "DTSTAMP"; } DataLine += ":"; DataLine += DateTimeStampData; DataLine += "\n"; DataLineProcessed = OutputText(&DataLine); *SaveData += DataLineProcessed; DataLine.clear(); DataLineProcessed.clear(); } // Process the CONTACT value. if (ContactList.size() > 0){ if (ContactList[0].size() > 0){ DataLine += "CONTACT"; if (ContactListAltRep[0].size() > 0){ DataLine += ";ALTREP=\""; DataLine += ContactListAltRep[0]; DataLine += "\""; } if (ContactListLanguage[0].size() > 0){ DataLine += ";LANGUAGE="; DataLine += ContactListLanguage[0]; } if (ContactListTokens[0].size() > 0){ DataLine += ";"; DataLine += ContactListTokens[0]; } DataLine += ":"; DataLine += ContactList[0]; DataLine += "\n"; DataLineProcessed = OutputText(&DataLine); *SaveData += DataLineProcessed; DataLine.clear(); DataLineProcessed.clear(); } } // Process the DTSTART. if (DateTimeStartData.size() > 0){ DataLine += "DTSTART"; if (DateTimeStartDataValue.size() > 0){ DataLine += ";VALUE="; DataLine += DateTimeStartDataValue; } if (DateTimeStartDataTimeZoneID.size() > 0){ DataLine += ";TZID="; DataLine += DateTimeStartDataTimeZoneID; } if (DateTimeStartDataTokens.size() > 0){ DataLine += ";"; DataLine += DateTimeStartDataTokens; } DataLine += ":"; DataLine += DateTimeStartData; DataLine += "\n"; DataLineProcessed = OutputText(&DataLine); *SaveData += DataLineProcessed; DataLine.clear(); DataLineProcessed.clear(); } // Process the DTEND. if (DateTimeEndData.size() > 0){ DataLine += "DTEND"; if (DateTimeEndDataValue.size() > 0){ DataLine += ";VALUE="; DataLine += DateTimeEndDataValue; } if (DateTimeEndDataTimeZoneID.size() > 0){ DataLine += ";TZID="; DataLine += DateTimeEndDataTimeZoneID; } if (DateTimeEndDataTokens.size() > 0){ DataLine += ";"; DataLine += DateTimeEndDataTokens; } DataLine += ":"; DataLine += DateTimeEndData; DataLine += "\n"; DataLineProcessed = OutputText(&DataLine); *SaveData += DataLineProcessed; DataLine.clear(); DataLineProcessed.clear(); } // Process the ORGANIZER value. if (OrganiserData.size() > 0){ DataLine += "ORGANIZER"; if (OrganiserDataCommonName.size() > 0){ DataLine += ";CN="; DataLine += OrganiserDataCommonName; } if (OrganiserDataDirectoryEntry.size() > 0){ DataLine += ";DIR=\""; DataLine += OrganiserDataDirectoryEntry; DataLine += "\""; } if (OrganiserDataSentByParam.size() > 0){ DataLine += ";SENT-BY=\""; DataLine += OrganiserDataSentByParam; DataLine += "\""; } if (OrganiserDataLanguage.size() > 0){ DataLine += ";LANGUAGE="; DataLine += OrganiserDataLanguage; } if (OrganiserDataTokens.size() > 0){ DataLine += ";"; DataLine += OrganiserDataTokens; } DataLine += ":"; DataLine += OrganiserData; DataLine += "\n"; DataLineProcessed = OutputText(&DataLine); *SaveData += DataLineProcessed; DataLine.clear(); DataLineProcessed.clear(); } *SaveData += "END:VFREEBUSY\n"; }