+ dataLine += "RESOURCES";
+
+ if (resourcesDataAltRep[resourcesDataSeek].size() > 0){
+
+ dataLine += ";ALTREP=\"";
+ dataLine += resourcesDataAltRep[resourcesDataSeek];
+ dataLine += "\"";
+
+ }
+
+ if (resourcesDataLanguage[resourcesDataSeek].size() > 0){
+
+ dataLine += ";LANGUAGE=";
+ dataLine += resourcesDataLanguage[resourcesDataSeek];
+
+ }
+
+ if (resourcesDataTokens[resourcesDataSeek].size() > 0){
+
+ dataLine += ";";
+ dataLine += resourcesDataTokens[resourcesDataSeek];
+
+ }
+
+ dataLine += ":";
+ dataLine += resourcesData[resourcesDataSeek];
+ dataLine += "\n";
+
+ dataLineProcessed = OutputText(&dataLine);
+
+ *saveData += dataLineProcessed;
+
+ dataLine.clear();
+ dataLineProcessed.clear();
+
+ }
+
+ }
+
+ // Process the RDATE value.
+
+ if (recurranceDateData.size() > 0){
+
+ for (int recurranceDateDataSeek = 0; recurranceDateDataSeek < recurranceDateData.size();
+ recurranceDateDataSeek++){
+
+ dataLine += "RDATE";
+
+ if (recurranceDateDataValue[recurranceDateDataSeek].size() > 0){
+
+ dataLine += ";VALUE=";
+ dataLine += recurranceDateDataValue[recurranceDateDataSeek];
+
+ }
+
+ if (recurranceDateDataTimeZoneParam[recurranceDateDataSeek].size() > 0){
+
+ dataLine += ";TZID=";
+ dataLine += recurranceDateDataTimeZoneParam[recurranceDateDataSeek];
+
+ }
+
+ if (recurranceDateDataTokens[recurranceDateDataSeek].size() > 0){
+
+ dataLine += ";";
+ dataLine += recurranceDateDataTokens[recurranceDateDataSeek];
+
+ }
+
+ dataLine += ":";
+ dataLine += recurranceDateData[recurranceDateDataSeek];
+ dataLine += "\n";
+
+ dataLineProcessed = OutputText(&dataLine);
+
+ *saveData += dataLineProcessed;
+
+ dataLine.clear();
+ dataLineProcessed.clear();
+
+ }
+
+ }
+
+ // 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;