X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Fobjects%2Fcalendarfreebusy%2FCalendarFreeBusy-Save.cpp;h=4d0fa73e785a12add2e62494420123d8ec1891cb;hb=70ed651ee4e950f44eb581e754869e40b9e5c744;hp=d14ea57bc0d604852347cbd006f40026fcae94ee;hpb=0e734d02c42c09e69cbaba95ae25586d10d3abe7;p=xestiacalendar%2F.git diff --git a/source/objects/calendarfreebusy/CalendarFreeBusy-Save.cpp b/source/objects/calendarfreebusy/CalendarFreeBusy-Save.cpp index d14ea57..4d0fa73 100644 --- a/source/objects/calendarfreebusy/CalendarFreeBusy-Save.cpp +++ b/source/objects/calendarfreebusy/CalendarFreeBusy-Save.cpp @@ -1,110 +1,128 @@ +// CalendarFreeBusy-Save.cpp - CalendarFreeBusy class save functions +// +// (c) 2016-2017 Xestia Software Development. +// +// This file is part of Xestia Calendar. +// +// Xestia Calendar is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by the +// Free Software Foundation, version 3 of the license. +// +// Xestia Calendar is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with Xestia Calendar. If not, see + #include "CalendarFreeBusy.h" using namespace std; -void CalendarFreeBusyObject::SaveObjectData(string *SaveData){ +void CalendarFreeBusyObject::SaveObjectData(string *saveData){ - string DataLine = ""; - string DataLineProcessed = ""; + string dataLine = ""; + string dataLineProcessed = ""; - *SaveData += "BEGIN:VFREEBUSY\n"; + *saveData += "BEGIN:VFREEBUSY\n"; // Process the UID. - if (UniqueID.size() > 0){ + if (uniqueID.size() > 0){ - if (UniqueIDTokens.size() > 0){ + if (uniqueIDTokens.size() > 0){ - DataLine += "UID;"; - DataLine += UniqueIDTokens; + dataLine += "UID;"; + dataLine += uniqueIDTokens; } else { - DataLine += "UID"; + dataLine += "UID"; } - DataLine += ":"; - DataLine += UniqueID; - DataLine += "\n"; + dataLine += ":"; + dataLine += uniqueID; + dataLine += "\n"; - DataLineProcessed = OutputText(&DataLine); + dataLineProcessed = OutputText(&dataLine); - *SaveData += DataLineProcessed; + *saveData += dataLineProcessed; - DataLine.clear(); - DataLineProcessed.clear(); + dataLine.clear(); + dataLineProcessed.clear(); } // Process the DTSTAMP. - if (DateTimeStampData.size() > 0){ + if (dateTimeStampData.size() > 0){ - if (DateTimeStampTokens.size() > 0){ + if (dateTimeStampTokens.size() > 0){ - DataLine += "DTSTAMP;"; - DataLine += DateTimeStampTokens; + dataLine += "DTSTAMP;"; + dataLine += dateTimeStampTokens; } else { - DataLine += "DTSTAMP"; + dataLine += "DTSTAMP"; } - DataLine += ":"; - DataLine += DateTimeStampData; - DataLine += "\n"; + dataLine += ":"; + dataLine += dateTimeStampData; + dataLine += "\n"; - DataLineProcessed = OutputText(&DataLine); + dataLineProcessed = OutputText(&dataLine); - *SaveData += DataLineProcessed; + *saveData += dataLineProcessed; - DataLine.clear(); - DataLineProcessed.clear(); + dataLine.clear(); + dataLineProcessed.clear(); } // Process the CONTACT value. - if (ContactList.size() > 0){ + if (contactList.size() > 0){ - if (ContactList[0].size() > 0){ + if (contactList[0].size() > 0){ - DataLine += "CONTACT"; + dataLine += "CONTACT"; - if (ContactListAltRep[0].size() > 0){ + if (contactListAltRep[0].size() > 0){ - DataLine += ";ALTREP=\""; - DataLine += ContactListAltRep[0]; - DataLine += "\""; + dataLine += ";ALTREP=\""; + dataLine += contactListAltRep[0]; + dataLine += "\""; } - if (ContactListLanguage[0].size() > 0){ + if (contactListLanguage[0].size() > 0){ - DataLine += ";LANGUAGE="; - DataLine += ContactListLanguage[0]; + dataLine += ";LANGUAGE="; + dataLine += contactListLanguage[0]; } - if (ContactListTokens[0].size() > 0){ + if (contactListTokens[0].size() > 0){ - DataLine += ";"; - DataLine += ContactListTokens[0]; + dataLine += ";"; + dataLine += contactListTokens[0]; } - DataLine += ":"; - DataLine += ContactList[0]; - DataLine += "\n"; + dataLine += ":"; + dataLine += contactList[0]; + dataLine += "\n"; - DataLineProcessed = OutputText(&DataLine); + dataLineProcessed = OutputText(&dataLine); - *SaveData += DataLineProcessed; + *saveData += dataLineProcessed; - DataLine.clear(); - DataLineProcessed.clear(); + dataLine.clear(); + dataLineProcessed.clear(); } @@ -112,262 +130,262 @@ void CalendarFreeBusyObject::SaveObjectData(string *SaveData){ // Process the DTSTART. - if (DateTimeStartData.size() > 0){ + if (dateTimeStartData.size() > 0){ - DataLine += "DTSTART"; + dataLine += "DTSTART"; - if (DateTimeStartDataValue.size() > 0){ + if (dateTimeStartDataValue.size() > 0){ - DataLine += ";VALUE="; - DataLine += DateTimeStartDataValue; + dataLine += ";VALUE="; + dataLine += dateTimeStartDataValue; } - if (DateTimeStartDataTimeZoneID.size() > 0){ + if (dateTimeStartDataTimeZoneID.size() > 0){ - DataLine += ";TZID="; - DataLine += DateTimeStartDataTimeZoneID; + dataLine += ";TZID="; + dataLine += dateTimeStartDataTimeZoneID; } - if (DateTimeStartDataTokens.size() > 0){ + if (dateTimeStartDataTokens.size() > 0){ - DataLine += ";"; - DataLine += DateTimeStartDataTokens; + dataLine += ";"; + dataLine += dateTimeStartDataTokens; } - DataLine += ":"; - DataLine += DateTimeStartData; - DataLine += "\n"; + dataLine += ":"; + dataLine += dateTimeStartData; + dataLine += "\n"; - DataLineProcessed = OutputText(&DataLine); + dataLineProcessed = OutputText(&dataLine); - *SaveData += DataLineProcessed; + *saveData += dataLineProcessed; - DataLine.clear(); - DataLineProcessed.clear(); + dataLine.clear(); + dataLineProcessed.clear(); } // Process the DTEND. - if (DateTimeEndData.size() > 0){ + if (dateTimeEndData.size() > 0){ - DataLine += "DTEND"; + dataLine += "DTEND"; - if (DateTimeEndDataValue.size() > 0){ + if (dateTimeEndDataValue.size() > 0){ - DataLine += ";VALUE="; - DataLine += DateTimeEndDataValue; + dataLine += ";VALUE="; + dataLine += dateTimeEndDataValue; } - if (DateTimeEndDataTimeZoneID.size() > 0){ + if (dateTimeEndDataTimeZoneID.size() > 0){ - DataLine += ";TZID="; - DataLine += DateTimeEndDataTimeZoneID; + dataLine += ";TZID="; + dataLine += dateTimeEndDataTimeZoneID; } - if (DateTimeEndDataTokens.size() > 0){ + if (dateTimeEndDataTokens.size() > 0){ - DataLine += ";"; - DataLine += DateTimeEndDataTokens; + dataLine += ";"; + dataLine += dateTimeEndDataTokens; } - DataLine += ":"; - DataLine += DateTimeEndData; - DataLine += "\n"; + dataLine += ":"; + dataLine += dateTimeEndData; + dataLine += "\n"; - DataLineProcessed = OutputText(&DataLine); + dataLineProcessed = OutputText(&dataLine); - *SaveData += DataLineProcessed; + *saveData += dataLineProcessed; - DataLine.clear(); - DataLineProcessed.clear(); + dataLine.clear(); + dataLineProcessed.clear(); } // Process the ORGANIZER value. - if (OrganiserData.size() > 0){ + if (organiserData.size() > 0){ - DataLine += "ORGANIZER"; + dataLine += "ORGANIZER"; - if (OrganiserDataCommonName.size() > 0){ + if (organiserDataCommonName.size() > 0){ - DataLine += ";CN="; - DataLine += OrganiserDataCommonName; + dataLine += ";CN="; + dataLine += organiserDataCommonName; } - if (OrganiserDataDirectoryEntry.size() > 0){ + if (organiserDataDirectoryEntry.size() > 0){ - DataLine += ";DIR=\""; - DataLine += OrganiserDataDirectoryEntry; - DataLine += "\""; + dataLine += ";DIR=\""; + dataLine += organiserDataDirectoryEntry; + dataLine += "\""; } - if (OrganiserDataSentByParam.size() > 0){ + if (organiserDataSentByParam.size() > 0){ - DataLine += ";SENT-BY=\""; - DataLine += OrganiserDataSentByParam; - DataLine += "\""; + dataLine += ";SENT-BY=\""; + dataLine += organiserDataSentByParam; + dataLine += "\""; } - if (OrganiserDataLanguage.size() > 0){ + if (organiserDataLanguage.size() > 0){ - DataLine += ";LANGUAGE="; - DataLine += OrganiserDataLanguage; + dataLine += ";LANGUAGE="; + dataLine += organiserDataLanguage; } - if (OrganiserDataTokens.size() > 0){ + if (organiserDataTokens.size() > 0){ - DataLine += ";"; - DataLine += OrganiserDataTokens; + dataLine += ";"; + dataLine += organiserDataTokens; } - DataLine += ":"; - DataLine += OrganiserData; - DataLine += "\n"; + dataLine += ":"; + dataLine += organiserData; + dataLine += "\n"; - DataLineProcessed = OutputText(&DataLine); + dataLineProcessed = OutputText(&dataLine); - *SaveData += DataLineProcessed; + *saveData += dataLineProcessed; - DataLine.clear(); - DataLineProcessed.clear(); + dataLine.clear(); + dataLineProcessed.clear(); } // Process the URL value. - if (URLData.size() > 0){ + if (urlData.size() > 0){ - DataLine += "URL"; + dataLine += "URL"; - if (URLDataTokens.size() > 0){ + if (urlDataTokens.size() > 0){ - DataLine += ";"; - DataLine += URLDataTokens; + dataLine += ";"; + dataLine += urlDataTokens; } - DataLine += ":"; - DataLine += URLData; - DataLine += "\n"; + dataLine += ":"; + dataLine += urlData; + dataLine += "\n"; - DataLineProcessed = OutputText(&DataLine); + dataLineProcessed = OutputText(&dataLine); - *SaveData += DataLineProcessed; + *saveData += dataLineProcessed; - DataLine.clear(); - DataLineProcessed.clear(); + dataLine.clear(); + dataLineProcessed.clear(); } // Process the ATTENDEE value. - if (AttendeeList.size() > 0){ + if (attendeeList.size() > 0){ - for (int AttendeeListSeek = 0; AttendeeListSeek < AttendeeList.size(); - AttendeeListSeek++){ + for (int attendeeListSeek = 0; attendeeListSeek < attendeeList.size(); + attendeeListSeek++){ - DataLine += "ATTENDEE"; + dataLine += "ATTENDEE"; - if (AttendeeListMember[AttendeeListSeek].size() > 0){ + if (attendeeListMember[attendeeListSeek].size() > 0){ - DataLine += ";MEMBER=\""; - DataLine += AttendeeListMember[AttendeeListSeek]; - DataLine += "\""; + dataLine += ";MEMBER=\""; + dataLine += attendeeListMember[attendeeListSeek]; + dataLine += "\""; } - if (AttendeeListDelegatedFrom[AttendeeListSeek].size() > 0){ + if (attendeeListDelegatedFrom[attendeeListSeek].size() > 0){ - DataLine += ";DELEGATED-FROM=\""; - DataLine += AttendeeListDelegatedFrom[AttendeeListSeek]; - DataLine += "\""; + dataLine += ";DELEGATED-FROM=\""; + dataLine += attendeeListDelegatedFrom[attendeeListSeek]; + dataLine += "\""; } - if (AttendeeListDelegatedTo[AttendeeListSeek].size() > 0){ + if (attendeeListDelegatedTo[attendeeListSeek].size() > 0){ - DataLine += ";DELEGATED-TO=\""; - DataLine += AttendeeListDelegatedTo[AttendeeListSeek]; - DataLine += "\""; + dataLine += ";DELEGATED-TO=\""; + dataLine += attendeeListDelegatedTo[attendeeListSeek]; + dataLine += "\""; } - if (AttendeeListRole[AttendeeListSeek].size() > 0){ + if (attendeeListRole[attendeeListSeek].size() > 0){ - DataLine += ";ROLE="; - DataLine += AttendeeListRole[AttendeeListSeek]; + dataLine += ";ROLE="; + dataLine += attendeeListRole[attendeeListSeek]; } - if (AttendeeListRSVP[AttendeeListSeek].size() > 0){ + if (attendeeListRSVP[attendeeListSeek].size() > 0){ - DataLine += ";RSVP="; - DataLine += AttendeeListRSVP[AttendeeListSeek]; + dataLine += ";RSVP="; + dataLine += attendeeListRSVP[attendeeListSeek]; } - if (AttendeeListDirectoryEntry[AttendeeListSeek].size() > 0){ + if (attendeeListDirectoryEntry[attendeeListSeek].size() > 0){ - DataLine += ";DIR=\""; - DataLine += AttendeeListDirectoryEntry[AttendeeListSeek]; - DataLine += "\""; + dataLine += ";DIR=\""; + dataLine += attendeeListDirectoryEntry[attendeeListSeek]; + dataLine += "\""; } - if (AttendeeListSentBy[AttendeeListSeek].size() > 0){ + if (attendeeListSentBy[attendeeListSeek].size() > 0){ - DataLine += ";SENT-BY=\""; - DataLine += AttendeeListSentBy[AttendeeListSeek]; - DataLine += "\""; + dataLine += ";SENT-BY=\""; + dataLine += attendeeListSentBy[attendeeListSeek]; + dataLine += "\""; } - if (AttendeeListCommonName[AttendeeListSeek].size() > 0){ + if (attendeeListCommonName[attendeeListSeek].size() > 0){ - DataLine += ";CN=\""; - DataLine += AttendeeListCommonName[AttendeeListSeek]; - DataLine += "\""; + dataLine += ";CN=\""; + dataLine += attendeeListCommonName[attendeeListSeek]; + dataLine += "\""; } - if (AttendeeListCalendarUserType[AttendeeListSeek].size() > 0){ + if (attendeeListCalendarUserType[attendeeListSeek].size() > 0){ - DataLine += ";CUTYPE="; - DataLine += AttendeeListCalendarUserType[AttendeeListSeek]; + dataLine += ";CUTYPE="; + dataLine += attendeeListCalendarUserType[attendeeListSeek]; } - if (AttendeeListParticipationStatus[AttendeeListSeek].size() > 0){ + if (attendeeListParticipationStatus[attendeeListSeek].size() > 0){ - DataLine += ";PARTSTAT="; - DataLine += AttendeeListParticipationStatus[AttendeeListSeek]; + dataLine += ";PARTSTAT="; + dataLine += attendeeListParticipationStatus[attendeeListSeek]; } - if (AttendeeListLanguage[AttendeeListSeek].size() > 0){ + if (attendeeListLanguage[attendeeListSeek].size() > 0){ - DataLine += ";LANGUAGE="; - DataLine += AttendeeListLanguage[AttendeeListSeek]; + dataLine += ";LANGUAGE="; + dataLine += attendeeListLanguage[attendeeListSeek]; } - if (AttendeeListTokens[AttendeeListSeek].size() > 0){ + if (attendeeListTokens[attendeeListSeek].size() > 0){ - DataLine += ";"; - DataLine += AttendeeListTokens[AttendeeListSeek]; + dataLine += ";"; + dataLine += attendeeListTokens[attendeeListSeek]; } @@ -388,45 +406,45 @@ void CalendarFreeBusyObject::SaveObjectData(string *SaveData){ // Process the COMMENT value. - if (CommentList.size() > 0){ + if (commentList.size() > 0){ - for (int CommentListSeek = 0; CommentListSeek < CommentList.size(); - CommentListSeek++){ + for (int commentListSeek = 0; commentListSeek < commentList.size(); + commentListSeek++){ - DataLine += "COMMENT"; + dataLine += "COMMENT"; - if (CommentListAltRep[CommentListSeek].size() > 0){ + if (commentListAltRep[commentListSeek].size() > 0){ - DataLine += ";ALTREP=\""; - DataLine += CommentListAltRep[CommentListSeek]; - DataLine += "\""; + dataLine += ";ALTREP=\""; + dataLine += commentListAltRep[commentListSeek]; + dataLine += "\""; } - if (CommentListLanguage[CommentListSeek].size() > 0){ + if (commentListLanguage[commentListSeek].size() > 0){ - DataLine += ";LANGUAGE="; - DataLine += CommentListLanguage[CommentListSeek]; + dataLine += ";LANGUAGE="; + dataLine += commentListLanguage[commentListSeek]; } - if (CommentListTokens[CommentListSeek].size() > 0){ + if (commentListTokens[commentListSeek].size() > 0){ - DataLine += ";"; - DataLine += CommentListTokens[CommentListSeek]; + dataLine += ";"; + dataLine += commentListTokens[commentListSeek]; } - DataLine += ":"; - DataLine += CommentList[CommentListSeek]; - DataLine += "\n"; + dataLine += ":"; + dataLine += commentList[commentListSeek]; + dataLine += "\n"; - DataLineProcessed = OutputText(&DataLine); + dataLineProcessed = OutputText(&dataLine); - *SaveData += DataLineProcessed; + *saveData += dataLineProcessed; - DataLine.clear(); - DataLineProcessed.clear(); + dataLine.clear(); + dataLineProcessed.clear(); } @@ -434,42 +452,103 @@ void CalendarFreeBusyObject::SaveObjectData(string *SaveData){ // Process the FREEBUSY value. - if (FreeBusyList.size() > 0){ + if (freeBusyList.size() > 0){ - for (int FreeBusyListSeek = 0; FreeBusyListSeek < FreeBusyList.size(); - FreeBusyListSeek++){ + for (int freeBusyListSeek = 0; freeBusyListSeek < freeBusyList.size(); + freeBusyListSeek++){ - DataLine += "FREEBUSY"; + dataLine += "FREEBUSY"; - if (FreeBusyListType[FreeBusyListSeek].size() > 0){ + if (freeBusyListType[freeBusyListSeek].size() > 0){ - DataLine += ";FBTYPE="; - DataLine += FreeBusyListType[FreeBusyListSeek]; + dataLine += ";FBTYPE="; + dataLine += freeBusyListType[freeBusyListSeek]; } - if (FreeBusyListTokens[FreeBusyListSeek].size() > 0){ + if (freeBusyListTokens[freeBusyListSeek].size() > 0){ - DataLine += ";"; - DataLine += FreeBusyListTokens[FreeBusyListSeek]; + dataLine += ";"; + dataLine += freeBusyListTokens[freeBusyListSeek]; } - DataLine += ":"; - DataLine += FreeBusyList[FreeBusyListSeek]; - DataLine += "\n"; + dataLine += ":"; + dataLine += freeBusyList[freeBusyListSeek]; + dataLine += "\n"; - DataLineProcessed = OutputText(&DataLine); + dataLineProcessed = OutputText(&dataLine); - *SaveData += DataLineProcessed; + *saveData += dataLineProcessed; - DataLine.clear(); - DataLineProcessed.clear(); + dataLine.clear(); + dataLineProcessed.clear(); } } - *SaveData += "END:VFREEBUSY\n"; + // Process the REQUEST-STATUS value. + + if (requestStatusData.size() > 0){ + + for (int requestStatusDataSeek = 0; requestStatusDataSeek < requestStatusData.size(); + requestStatusDataSeek++){ + + dataLine += "REQUEST-STATUS"; + + if (requestStatusLanguage[requestStatusDataSeek].size() > 0){ + + dataLine += ";LANGUAGE="; + dataLine += requestStatusLanguage[requestStatusDataSeek]; + + } + + if (requestStatusTokens[requestStatusDataSeek].size() > 0){ + + dataLine += ";"; + dataLine += requestStatusTokens[requestStatusDataSeek]; + + } + + dataLine += ":"; + dataLine += requestStatusData[requestStatusDataSeek]; + dataLine += "\n"; + + dataLineProcessed = OutputText(&dataLine); + + *saveData += dataLineProcessed; + + dataLine.clear(); + dataLineProcessed.clear(); + + } + + } + + // Process the X-Token values. + + if (xTokensData.size() > 0){ + + for (int xTokenSeek = 0; xTokenSeek < xTokensData.size(); + xTokenSeek++){ + + dataLine += xTokensDataTokens[xTokenSeek]; + dataLine += ":"; + dataLine += xTokensData[xTokenSeek]; + dataLine += "\n"; + + dataLineProcessed = OutputText(&dataLine); + + *saveData += dataLineProcessed; + + dataLine.clear(); + dataLineProcessed.clear(); + + } + + } + + *saveData += "END:VFREEBUSY\n"; } \ No newline at end of file