Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
camelCase: Converted code in calendarjournal directory
[xestiacalendar/.git] / source / objects / calendarfreebusy / CalendarFreeBusy-Save.cpp
index ecf68e8..4d0fa73 100644 (file)
+// 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 <http://www.gnu.org/licenses/>
+
 #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,83 +130,425 @@ 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";
+               
+               if (dateTimeEndDataValue.size() > 0){
+               
+                       dataLine += ";VALUE=";
+                       dataLine += dateTimeEndDataValue;                       
+                       
+               }
+               
+               if (dateTimeEndDataTimeZoneID.size() > 0){
+               
+                       dataLine += ";TZID=";
+                       dataLine += dateTimeEndDataTimeZoneID;                  
+                       
+               }
+               
+               if (dateTimeEndDataTokens.size() > 0){
+               
+                       dataLine += ";";
+                       dataLine += dateTimeEndDataTokens;
+                       
+               }
+
+               dataLine += ":";
+               dataLine += dateTimeEndData;
+               dataLine += "\n";
+               
+               dataLineProcessed = OutputText(&dataLine);
+               
+               *saveData += dataLineProcessed;
+               
+               dataLine.clear();
+               dataLineProcessed.clear();
+               
+       }
+       
+       // Process the ORGANIZER value.
+       
+       if (organiserData.size() > 0){
+               
+               dataLine += "ORGANIZER";
+               
+               if (organiserDataCommonName.size() > 0){
+               
+                       dataLine += ";CN=";
+                       dataLine += organiserDataCommonName;
+                       
+               }
+
+               if (organiserDataDirectoryEntry.size() > 0){
+               
+                       dataLine += ";DIR=\"";
+                       dataLine += organiserDataDirectoryEntry;
+                       dataLine += "\"";
+                       
+               }
+               
+               if (organiserDataSentByParam.size() > 0){
+               
+                       dataLine += ";SENT-BY=\"";
+                       dataLine += organiserDataSentByParam;                   
+                       dataLine += "\"";
+                       
+               }
+               
+               if (organiserDataLanguage.size() > 0){
                
-               DataLine += "DTEND";
+                       dataLine += ";LANGUAGE=";
+                       dataLine += organiserDataLanguage;                      
+                       
+               }
                
-               if (DateTimeEndDataValue.size() > 0){
+               if (organiserDataTokens.size() > 0){
                
-                       DataLine += ";VALUE=";
-                       DataLine += DateTimeEndDataValue;                       
+                       dataLine += ";";
+                       dataLine += organiserDataTokens;
                        
                }
                
-               if (DateTimeEndDataTimeZoneID.size() > 0){
+               dataLine += ":";
+               dataLine += organiserData;
+               dataLine += "\n";
+               
+               dataLineProcessed = OutputText(&dataLine);
+               
+               *saveData += dataLineProcessed;
+
+               dataLine.clear();
+               dataLineProcessed.clear();
+               
+       }
+       
+       // Process the URL value.
+       
+       if (urlData.size() > 0){
+               
+               dataLine += "URL";
+
+               if (urlDataTokens.size() > 0){
+               
+                       dataLine += ";";
+                       dataLine += urlDataTokens;
+                       
+               }
+               
+               dataLine += ":";
+               dataLine += urlData;
+               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 += ";TZID=";
-                       DataLine += DateTimeEndDataTimeZoneID;                  
+                               dataLine += ";";
+                               dataLine += attendeeListTokens[attendeeListSeek];
                        
+                       }
+                               
+                       DataLine += ":";
+                       DataLine += AttendeeList[AttendeeListSeek];
+                       DataLine += "\n";
+               
+                       DataLineProcessed = OutputText(&DataLine);
+               
+                       *SaveData += DataLineProcessed;
+
+                       DataLine.clear();
+                       DataLineProcessed.clear();
+                               
                }
+                       
+       }
+       
+       // Process the COMMENT value.
+       
+       if (commentList.size() > 0){
                
-               if (DateTimeEndDataTokens.size() > 0){
+               for (int commentListSeek = 0; commentListSeek < commentList.size();
+                       commentListSeek++){
+       
+                       dataLine += "COMMENT";
+                       
+                       if (commentListAltRep[commentListSeek].size() > 0){
                
-                       DataLine += ";";
-                       DataLine += DateTimeEndDataTokens;
+                               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();
+                               
                }
+               
+       }
+       
+       // Process the FREEBUSY value.
+       
+       if (freeBusyList.size() > 0){
+               
+               for (int freeBusyListSeek = 0; freeBusyListSeek < freeBusyList.size();
+                       freeBusyListSeek++){
+       
+                       dataLine += "FREEBUSY";
+                       
+                       if (freeBusyListType[freeBusyListSeek].size() > 0){
+               
+                               dataLine += ";FBTYPE=";
+                               dataLine += freeBusyListType[freeBusyListSeek];
+                       
+                       }
+                       
+                       if (freeBusyListTokens[freeBusyListSeek].size() > 0){
+               
+                               dataLine += ";";
+                               dataLine += freeBusyListTokens[freeBusyListSeek];
+                       
+                       }
+                               
+                       dataLine += ":";
+                       dataLine += freeBusyList[freeBusyListSeek];
+                       dataLine += "\n";
+               
+                       dataLineProcessed = OutputText(&dataLine);
+               
+                       *saveData += dataLineProcessed;
 
-               DataLine += ":";
-               DataLine += DateTimeEndData;
-               DataLine += "\n";
+                       dataLine.clear();
+                       dataLineProcessed.clear();
+                               
+               }
+               
+       }
+       
+       // Process the REQUEST-STATUS value.
+       
+       if (requestStatusData.size() > 0){
                
-               DataLineProcessed = OutputText(&DataLine);
+               for (int requestStatusDataSeek = 0; requestStatusDataSeek < requestStatusData.size();
+                       requestStatusDataSeek++){
+       
+                       dataLine += "REQUEST-STATUS";
+                       
+                       if (requestStatusLanguage[requestStatusDataSeek].size() > 0){
                
-               *SaveData += DataLineProcessed;
+                               dataLine += ";LANGUAGE=";
+                               dataLine += requestStatusLanguage[requestStatusDataSeek];
+                       
+                       }
+                       
+                       if (requestStatusTokens[requestStatusDataSeek].size() > 0){
                
-               DataLine.clear();
-               DataLineProcessed.clear();
+                               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";
+       
+       *saveData += "END:VFREEBUSY\n";
        
 }
\ No newline at end of file
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy