bool AlarmActionFound = false;
bool AlarmTriggerFound = false;
bool AlarmDurationFound = false;
+ bool AlarmDescriptionFound = false;
DataReceived = ProcessTextVectors(&EventAlarmName[SeekCount],
&EventAlarmData[SeekCount], false, "ACTION");
}
+ // Process the data from DESCRIPTION.
+
+ DataReceived = ProcessTextVectors(&EventAlarmName[SeekCount], &EventAlarmData[SeekCount], false, "DESCRIPTION");
+
+ if (DataReceived.begin() != DataReceived.end() &&
+ (NewAlarmData.AlarmType == CALENDARALARM_DISPLAY ||
+ NewAlarmData.AlarmType == CALENDARALARM_EMAIL)){
+
+ bool TokenData = false;
+ string PropertyTokens;
+
+ PropertyNameData = (string*)&DataReceived.begin()->first;
+
+ PropertyData = SplitValues(*PropertyNameData);
+
+ for(map<string,string>::iterator iter = PropertyData.begin();
+ iter != PropertyData.end(); iter++){
+
+ if (iter->first == "ALTREP"){
+
+ NewAlarmData.DescriptionAltRep = iter->second;
+
+ } else if (iter->first == "LANGUAGE"){
+
+ NewAlarmData.DescriptionLanguage = iter->second;
+
+ } else {
+
+ if (TokenData == false){
+ TokenData = true;
+ } else {
+ PropertyTokens += ";";
+ }
+
+ PropertyTokens += iter->first;
+ PropertyTokens += "=";
+ PropertyTokens += iter->second;
+
+ }
+
+ }
+
+ if (PropertyTokens.size() > 0){
+ NewAlarmData.DescriptionTokens = PropertyTokens;
+ }
+
+ NewAlarmData.DescriptionData = DataReceived.begin()->second;
+ AlarmDescriptionFound = true;
+
+ }
+
+ // TODO: Implement SUMMARY.
+
// Process data from DURATION.
DataReceived = ProcessTextVectors(&EventAlarmName[SeekCount], &EventAlarmData[SeekCount], false, "DURATION");
CalendarAlarmData.push_back(NewAlarmData);
+ } else if (NewAlarmData.AlarmType == CALENDARALARM_DISPLAY &&
+ AlarmActionFound == true &&
+ AlarmTriggerFound == true &&
+ AlarmDescriptionFound == true){
+
+ CalendarAlarmData.push_back(NewAlarmData);
+
}
SeekCount++;