X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Fobjects%2Fcalendartask%2FCalendarTask-Save.cpp;h=f8ae4748816b681522252385f92dc26a60732bb5;hb=c8b7a9ab635283c6fca4ddcdbf9905919096423a;hp=3eac5458452f75d4393cf8dbd6f23a35971552d3;hpb=9ba0887b4a25b948518150470a5c17c9b235703e;p=xestiacalendar%2F.git diff --git a/source/objects/calendartask/CalendarTask-Save.cpp b/source/objects/calendartask/CalendarTask-Save.cpp index 3eac545..f8ae474 100644 --- a/source/objects/calendartask/CalendarTask-Save.cpp +++ b/source/objects/calendartask/CalendarTask-Save.cpp @@ -412,6 +412,32 @@ void CalendarTaskObject::SaveObjectData(string *SaveData){ } + // Process the DURATION value. + + if (DurationData.size() > 0){ + + DataLine += "DURATION"; + + if (DurationDataTokens.size() > 0){ + + DataLine += ";"; + DataLine += DurationDataTokens; + + } + + DataLine += ":"; + DataLine += DurationData; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + // Process the PRIORITY value. if (PriorityData > -1 && PriorityData < 10){ @@ -1185,6 +1211,429 @@ void CalendarTaskObject::SaveObjectData(string *SaveData){ } + // Process the VALARMS. + + if (CalendarAlarmData.size() > 0){ + + for (int CalendarAlarmDataSeek = 0; CalendarAlarmDataSeek < CalendarAlarmData.size(); + CalendarAlarmDataSeek++){ + + *SaveData += "BEGIN:VALARM\n"; + + // Process the ACTION VALARM value. + + DataLine += "ACTION"; + + if (CalendarAlarmData[CalendarAlarmDataSeek].AlarmActionTokens.size() > 0){ + + DataLine += ";"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AlarmActionTokens; + + } + + DataLine += ":"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AlarmAction; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + // Process the TRIGGER VALARM value. + + if (CalendarAlarmData[CalendarAlarmDataSeek].TriggerData.size() > 0){ + + DataLine += "TRIGGER"; + + if (CalendarAlarmData[CalendarAlarmDataSeek].TriggerRelated.size() > 0){ + + DataLine += ";RELATED="; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].TriggerRelated; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].TriggerValue.size() > 0){ + + DataLine += ";VALUE="; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].TriggerValue; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].TriggerTokens.size() > 0){ + + DataLine += ";"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].TriggerTokens; + + } + + DataLine += ":"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].TriggerData; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + + // Process the DURATION VALARM value. + + if (CalendarAlarmData[CalendarAlarmDataSeek].DurationData.size() > 0){ + + DataLine += "DURATION"; + + if (CalendarAlarmData[CalendarAlarmDataSeek].DurationTokens.size() > 0){ + + DataLine += ";"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].DurationTokens; + + } + + DataLine += ":"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].DurationData; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + + // Process the DESCRIPTION VALARM value. + + if (CalendarAlarmData[CalendarAlarmDataSeek].DescriptionData.size() > 0){ + + DataLine += "DESCRIPTION"; + + if (CalendarAlarmData[CalendarAlarmDataSeek].DescriptionAltRep.size() > 0){ + + DataLine += ";ALTREP=\""; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].DescriptionAltRep; + DataLine += "\""; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].DescriptionLanguage.size() > 0){ + + DataLine += ";LANGUAGE="; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].DescriptionLanguage; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].DescriptionTokens.size() > 0){ + + DataLine += ";"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].DescriptionTokens; + + } + + DataLine += ":"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].DescriptionData; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + + // Process the SUMMARY VALARM value. + + if (CalendarAlarmData[CalendarAlarmDataSeek].SummaryData.size() > 0){ + + DataLine += "SUMMARY"; + + if (CalendarAlarmData[CalendarAlarmDataSeek].SummaryAltRep.size() > 0){ + + DataLine += ";ALTREP=\""; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].SummaryAltRep; + DataLine += "\""; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].SummaryLanguage.size() > 0){ + + DataLine += ";LANGUAGE="; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].SummaryLanguage; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].SummaryTokens.size() > 0){ + + DataLine += ";"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].SummaryTokens; + + } + + DataLine += ":"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].SummaryData; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + + // Process the REPEAT VALARM value. + + if (CalendarAlarmData[CalendarAlarmDataSeek].RepeatData.size() > 0){ + + DataLine += "REPEAT"; + + if (CalendarAlarmData[CalendarAlarmDataSeek].RepeatTokens.size() > 0){ + + DataLine += ";"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].RepeatTokens; + + } + + DataLine += ":"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].RepeatData; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + + // Process the ATTENDEE VALARM values. + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttendeeList.size() > 0){ + + for (int AttendeeListSeek = 0; AttendeeListSeek < CalendarAlarmData[CalendarAlarmDataSeek].AttendeeList.size(); + AttendeeListSeek++){ + + DataLine += "ATTENDEE"; + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListMember[AttendeeListSeek].size() > 0){ + + DataLine += ";MEMBER=\""; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListMember[AttendeeListSeek]; + DataLine += "\""; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListDelegatedFrom[AttendeeListSeek].size() > 0){ + + DataLine += ";DELEGATED-FROM=\""; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListDelegatedFrom[AttendeeListSeek]; + DataLine += "\""; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListDelegatedTo[AttendeeListSeek].size() > 0){ + + DataLine += ";DELEGATED-TO=\""; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListDelegatedTo[AttendeeListSeek]; + DataLine += "\""; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListRole[AttendeeListSeek].size() > 0){ + + DataLine += ";ROLE="; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListRole[AttendeeListSeek]; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListRSVP[AttendeeListSeek].size() > 0){ + + DataLine += ";RSVP="; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListRSVP[AttendeeListSeek]; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListDirectoryEntry[AttendeeListSeek].size() > 0){ + + DataLine += ";DIR=\""; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListDirectoryEntry[AttendeeListSeek]; + DataLine += "\""; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListSentBy[AttendeeListSeek].size() > 0){ + + DataLine += ";SENT-BY=\""; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListSentBy[AttendeeListSeek]; + DataLine += "\""; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListCommonName[AttendeeListSeek].size() > 0){ + + DataLine += ";CN=\""; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListCommonName[AttendeeListSeek]; + DataLine += "\""; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListCalendarUserType[AttendeeListSeek].size() > 0){ + + DataLine += ";CUTYPE="; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListCalendarUserType[AttendeeListSeek]; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListParticipationStatus[AttendeeListSeek].size() > 0){ + + DataLine += ";PARTSTAT="; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListParticipationStatus[AttendeeListSeek]; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListLanguage[AttendeeListSeek].size() > 0){ + + DataLine += ";LANGUAGE="; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListLanguage[AttendeeListSeek]; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListTokens[AttendeeListSeek].size() > 0){ + + DataLine += ";"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttendeeListTokens[AttendeeListSeek]; + + } + + DataLine += ":"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttendeeList[AttendeeListSeek]; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + + } + + // Process the ATTACH VALARM values. + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttachList.size() > 0){ + + for (int AttachListSeek = 0; AttachListSeek < CalendarAlarmData[CalendarAlarmDataSeek].AttachList.size(); + AttachListSeek++){ + + DataLine += "ATTACH"; + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttachListFormatType[AttachListSeek].size() > 0){ + + DataLine += ";FMTTYPE="; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttachListFormatType[AttachListSeek]; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttachListValue[AttachListSeek].size() > 0){ + + DataLine += ";VALUE="; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttachListValue[AttachListSeek]; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttachListEncoding[AttachListSeek].size() > 0){ + + DataLine += ";ENCODING="; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttachListEncoding[AttachListSeek]; + + } + + if (CalendarAlarmData[CalendarAlarmDataSeek].AttachListTokens[AttachListSeek].size() > 0){ + + DataLine += ";"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttachListTokens[AttachListSeek]; + + } + + DataLine += ":"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].AttachList[AttachListSeek]; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + + } + + // Process the X-Token VALARM values. + + if (CalendarAlarmData[CalendarAlarmDataSeek].XTokensData.size() > 0){ + + for (int XTokenSeek = 0; XTokenSeek < CalendarAlarmData[CalendarAlarmDataSeek].XTokensData.size(); + XTokenSeek++){ + + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].XTokensDataTokens[XTokenSeek]; + DataLine += ":"; + DataLine += CalendarAlarmData[CalendarAlarmDataSeek].XTokensData[XTokenSeek]; + DataLine += "\n"; + + DataLineProcessed = OutputText(&DataLine); + + *SaveData += DataLineProcessed; + + DataLine.clear(); + DataLineProcessed.clear(); + + } + + } + + *SaveData += "END:VALARM\n"; + + } + + } + + // 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:VTODO\n"; } \ No newline at end of file