Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Added DTSTART property for saving data from a CalendarJournalObject.
[xestiacalendar/.git] / source / objects / calendarjournal / CalendarJournal-Save.cpp
1 #include "CalendarJournal.h"
3 using namespace std;
5 void CalendarJournalObject::SaveObjectData(string *SaveData){
7         string DataLine = "";
8         string DataLineProcessed = "";
9         
10         *SaveData += "BEGIN:VJOURNAL\n";
11         
12         // Process the UID.
13         
14         if (UniqueID.size() > 0){
15                 
16                 if (UniqueIDTokens.size() > 0){
17                 
18                         DataLine += "UID;";
19                         DataLine += UniqueIDTokens;
20                         
21                 } else {
23                         DataLine += "UID";
24                         
25                 }
27                 DataLine += ":";
28                 DataLine += UniqueID;
29                 DataLine += "\n";
30                 
31                 DataLineProcessed = OutputText(&DataLine);
32                 
33                 *SaveData += DataLineProcessed;
34                 
35                 DataLine.clear();
36                 DataLineProcessed.clear();
37                 
38         }
39         
40         // Process the DTSTAMP.
41         
42         if (DateTimeStampData.size() > 0){
43                 
44                 if (DateTimeStampTokens.size() > 0){
45                 
46                         DataLine += "DTSTAMP;";
47                         DataLine += DateTimeStampTokens;
48                         
49                 } else {
51                         DataLine += "DTSTAMP";
52                         
53                 }
55                 DataLine += ":";
56                 DataLine += DateTimeStampData;
57                 DataLine += "\n";
58                 
59                 DataLineProcessed = OutputText(&DataLine);
60                 
61                 *SaveData += DataLineProcessed;
62                 
63                 DataLine.clear();
64                 DataLineProcessed.clear();
65                 
66         }
67         
68         // Process the SUMMARY.
69         
70         if (SummaryData.size() > 0){
71                 
72                 DataLine += "SUMMARY";
73                 
74                 if (SummaryDataAltRep.size() > 0){
75                 
76                         DataLine += ";ALTREP=\"";
77                         DataLine += SummaryDataAltRep;
78                         DataLine += "\"";
79                         
80                 }
81                 
82                 if (SummaryDataLanguage.size() > 0){
83                 
84                         DataLine += ";LANGUAGE=";
85                         DataLine += SummaryDataLanguage;                        
86                         
87                 }
88                 
89                 if (SummaryDataTokens.size() > 0){
90                 
91                         DataLine += ";";
92                         DataLine += SummaryDataTokens;
93                         
94                 }
95                 
96                 DataLine += ":";
97                 DataLine += SummaryData;
98                 DataLine += "\n";
99                 
100                 DataLineProcessed = OutputText(&DataLine);
101                 
102                 *SaveData += DataLineProcessed;
104                 DataLine.clear();
105                 DataLineProcessed.clear();
106                 
107         }
108         
109         // Process the CLASS.
110         
111         if (ClassData.size() > 0){
112                 
113                 DataLine += "CLASS";
114                 
115                 if (ClassDataTokens.size() > 0){
116                 
117                         DataLine += ";";
118                         DataLine += ClassDataTokens;
119                         
120                 }
121                 
122                 DataLine += ":";
123                 DataLine += ClassData;
124                 DataLine += "\n";
125                 
126                 DataLineProcessed = OutputText(&DataLine);
127                 
128                 *SaveData += DataLineProcessed;
130                 DataLine.clear();
131                 DataLineProcessed.clear();
132                 
133         }
134         
135         // Process the DTSTART.
136         
137         if (DateTimeStartData.size() > 0){
138                 
139                 DataLine += "DTSTART";
140                 
141                 if (DateTimeStartDataValue.size() > 0){
142                 
143                         DataLine += ";VALUE=";
144                         DataLine += DateTimeStartDataValue;                     
145                         
146                 }
147                 
148                 if (DateTimeStartDataTimeZoneID.size() > 0){
149                 
150                         DataLine += ";TZID=";
151                         DataLine += DateTimeStartDataTimeZoneID;                        
152                         
153                 }
154                 
155                 if (DateTimeStartDataTokens.size() > 0){
156                 
157                         DataLine += ";";
158                         DataLine += DateTimeStartDataTokens;
159                         
160                 }
162                 DataLine += ":";
163                 DataLine += DateTimeStartData;
164                 DataLine += "\n";
165                 
166                 DataLineProcessed = OutputText(&DataLine);
167                 
168                 *SaveData += DataLineProcessed;
169                 
170                 DataLine.clear();
171                 DataLineProcessed.clear();
172                 
173         }
174         
175         *SaveData += "END:VJOURNAL\n";
176         
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