X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Fobjects%2Fcalendartask%2FCalendarTask-Save.cpp;h=a2ce3777db80441c9e1a02956d43f3a36ffa5fea;hb=07760ba35c0ee6e949e3e21ae4e67df2817e44ea;hp=5563801157fd57ef82d9897f37226382baf19ff8;hpb=ee34a74f978b302e82402380515fd16e564d9389;p=xestiacalendar%2F.git diff --git a/source/objects/calendartask/CalendarTask-Save.cpp b/source/objects/calendartask/CalendarTask-Save.cpp index 5563801..a2ce377 100644 --- a/source/objects/calendartask/CalendarTask-Save.cpp +++ b/source/objects/calendartask/CalendarTask-Save.cpp @@ -611,6 +611,322 @@ void CalendarTaskObject::SaveObjectData(string *SaveData){ } + // Process the RRULE value. + + if (RecurranceRuleData.size() > 0){ + + DataLine += "RRULE"; + + if (RecurranceRuleDataTokens.size() > 0){ + + DataLine += ";"; + DataLine += RecurranceRuleDataTokens; + + } + + DataLine += ":"; + DataLine += RecurranceRuleData; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + + // Process the DUE value. + + if (DueData.size() > 0){ + + DataLine += "DUE"; + + if (DueDataTimeZoneID.size() > 0){ + + DataLine += ";TZID="; + DataLine += DueDataTimeZoneID; + + } + + if (DueDataValue.size() > 0){ + + DataLine += ";VALUE="; + DataLine += DueDataValue; + + } + + if (SummaryDataTokens.size() > 0){ + + DataLine += ";"; + DataLine += DueDataTokens; + + } + + DataLine += ":"; + DataLine += DueData; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + + // Process the ATTACH values. + + if (AttachList.size() > 0){ + + for (int AttachListSeek = 0; AttachListSeek < AttachList.size(); + AttachListSeek++){ + + DataLine += "ATTACH"; + + if (AttachListFormatType[AttachListSeek].size() > 0){ + + DataLine += ";FMTTYPE="; + DataLine += AttachListFormatType[AttachListSeek]; + + } + + if (AttachListValue[AttachListSeek].size() > 0){ + + DataLine += ";VALUE="; + DataLine += AttachListValue[AttachListSeek]; + + } + + if (AttachListEncoding[AttachListSeek].size() > 0){ + + DataLine += ";ENCODING="; + DataLine += AttachListEncoding[AttachListSeek]; + + } + + if (AttachListTokens[AttachListSeek].size() > 0){ + + DataLine += ";"; + DataLine += AttachListTokens[AttachListSeek]; + + } + + DataLine += ":"; + DataLine += AttachList[AttachListSeek]; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + + } + + // Process the ATTENDEE value. + + if (AttendeeList.size() > 0){ + + for (int AttendeeListSeek = 0; AttendeeListSeek < AttendeeList.size(); + AttendeeListSeek++){ + + DataLine += "ATTENDEE"; + + if (AttendeeListMember[AttendeeListSeek].size() > 0){ + + DataLine += ";MEMBER=\""; + DataLine += AttendeeListMember[AttendeeListSeek]; + DataLine += "\""; + + } + + if (AttendeeListDelegatedFrom[AttendeeListSeek].size() > 0){ + + DataLine += ";DELEGATED-FROM=\""; + DataLine += AttendeeListDelegatedFrom[AttendeeListSeek]; + DataLine += "\""; + + } + + if (AttendeeListDelegatedTo[AttendeeListSeek].size() > 0){ + + DataLine += ";DELEGATED-TO=\""; + DataLine += AttendeeListDelegatedTo[AttendeeListSeek]; + DataLine += "\""; + + } + + if (AttendeeListRole[AttendeeListSeek].size() > 0){ + + DataLine += ";ROLE="; + DataLine += AttendeeListRole[AttendeeListSeek]; + + } + + if (AttendeeListRSVP[AttendeeListSeek].size() > 0){ + + DataLine += ";RSVP="; + DataLine += AttendeeListRSVP[AttendeeListSeek]; + + } + + if (AttendeeListDirectoryEntry[AttendeeListSeek].size() > 0){ + + DataLine += ";DIR=\""; + DataLine += AttendeeListDirectoryEntry[AttendeeListSeek]; + DataLine += "\""; + + } + + if (AttendeeListSentBy[AttendeeListSeek].size() > 0){ + + DataLine += ";SENT-BY=\""; + DataLine += AttendeeListSentBy[AttendeeListSeek]; + DataLine += "\""; + + } + + if (AttendeeListCommonName[AttendeeListSeek].size() > 0){ + + DataLine += ";CN=\""; + DataLine += AttendeeListCommonName[AttendeeListSeek]; + DataLine += "\""; + + } + + if (AttendeeListCalendarUserType[AttendeeListSeek].size() > 0){ + + DataLine += ";CUTYPE="; + DataLine += AttendeeListCalendarUserType[AttendeeListSeek]; + + } + + if (AttendeeListParticipationStatus[AttendeeListSeek].size() > 0){ + + DataLine += ";PARTSTAT="; + DataLine += AttendeeListParticipationStatus[AttendeeListSeek]; + + } + + if (AttendeeListLanguage[AttendeeListSeek].size() > 0){ + + DataLine += ";LANGUAGE="; + DataLine += AttendeeListLanguage[AttendeeListSeek]; + + } + + if (AttendeeListTokens[AttendeeListSeek].size() > 0){ + + DataLine += ";"; + DataLine += AttendeeListTokens[AttendeeListSeek]; + + } + + DataLine += ":"; + DataLine += AttendeeList[AttendeeListSeek]; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + + } + + // Process the CATEGORIES value. + + if (CategoriesList.size() > 0){ + + for (int CategoriesListSeek = 0; CategoriesListSeek < CategoriesList.size(); + CategoriesListSeek++){ + + DataLine += "CATEGORIES"; + + if (CategoriesListLanguage[CategoriesListSeek].size() > 0){ + + DataLine += ";LANGUAGE="; + DataLine += CategoriesListLanguage[CategoriesListSeek]; + + } + + if (CategoriesListTokens[CategoriesListSeek].size() > 0){ + + DataLine += ";"; + DataLine += CategoriesListTokens[CategoriesListSeek]; + + } + + DataLine += ":"; + DataLine += CategoriesList[CategoriesListSeek]; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + + } + + // Process the COMMENT value. + + if (CommentList.size() > 0){ + + for (int CommentListSeek = 0; CommentListSeek < CommentList.size(); + CommentListSeek++){ + + DataLine += "COMMENT"; + + if (CommentListAltRep[CommentListSeek].size() > 0){ + + DataLine += ";ALTREP=\""; + DataLine += CommentListAltRep[CommentListSeek]; + DataLine += "\""; + + } + + if (CommentListLanguage[CommentListSeek].size() > 0){ + + DataLine += ";LANGUAGE="; + DataLine += CommentListLanguage[CommentListSeek]; + + } + + if (CommentListTokens[CommentListSeek].size() > 0){ + + DataLine += ";"; + DataLine += CommentListTokens[CommentListSeek]; + + } + + DataLine += ":"; + DataLine += CommentList[CommentListSeek]; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + + } + *SaveData += "END:VTODO\n"; } \ No newline at end of file