Lines Matching defs:event

41 void DumpEvent(const Event &event)
43 LOG_DEBUG("id :%{private}d", event.id.value_or(-1));
44 LOG_DEBUG("type :%{private}d", event.type);
45 LOG_DEBUG("title :%{private}s", event.title.value_or("[null]").c_str());
46 if (event.location) {
47 auto location = event.location.value();
54 if (event.service) {
55 auto service = event.service.value();
62 if (event.recurrenceRule.has_value()) {
63 LOG_DEBUG("recurrenceRule.recurrenceFrequency: %{private}d", event.recurrenceRule.value().recurrenceFrequency);
65 LOG_DEBUG("startTime :%{private}s", std::to_string(event.startTime).c_str());
66 LOG_DEBUG("endTime :%{private}s", std::to_string(event.endTime).c_str());
67 LOG_DEBUG("isAllDay :%{private}d", event.isAllDay.value_or(0));
69 for (const auto &attendee : event.attendees) {
74 LOG_DEBUG("timeZone :%{private}s", event.timeZone.value_or("[null]").c_str());
75 LOG_DEBUG("description :%{private}s", event.description.value_or("[null]").c_str());
78 void BuildEventLocation(DataShare::DataShareValuesBucket &valuesBucket, const Event &event)
80 if (!event.location) {
83 auto location = event.location.value();
97 void BuildEventService(DataShare::DataShareValuesBucket &valuesBucket, const Event &event)
99 if (!event.service) {
102 const auto service = event.service.value();
160 std::string GetRule(const Event &event)
162 const time_t now = event.startTime / 1000;
165 RecurrenceType recurrenceFrequency = event.recurrenceRule.value().recurrenceFrequency;
167 rrule = "FREQ=DAILY" + GetEventRRule(event) + ";WKST=SU";
169 rrule = "FREQ=WEEKLY" + GetEventRRule(event) + ";WKST=SU;BYDAY=";
171 rrule += GetWeeklyRule(event, *time);
174 rrule = "FREQ=MONTHLY" + GetEventRRule(event) + ";WKST=SU";
176 rrule += GetMonthlyRule(event, *time);
179 rrule = "FREQ=YEARLY" + GetEventRRule(event) + ";WKST=SU";
181 rrule += GetYearlyRule(event, *time);
188 std::string GetEventRRule(const Event &event)
190 auto recurrenceRule = event.recurrenceRule.value();
193 rrule += ";UNTIL=" + GetUTCTime(event.recurrenceRule.value().expire.value());
204 std::string GetWeeklyRule(const Event &event, const std::tm &time)
208 auto rRuleValue = event.recurrenceRule.value();
223 std::string GetMonthlyRule(const Event &event, const std::tm &time)
227 auto rruleValue = event.recurrenceRule.value();
247 std::string GetYearlyRule(const Event &event, const std::tm &time)
252 auto rruleValue = event.recurrenceRule.value();
344 void BuildEventRecurrenceRule(DataShare::DataShareValuesBucket &valuesBucket, const Event &event)
346 if (!event.recurrenceRule.has_value()) {
350 std::string rrule = GetRule(event);
355 if (event.recurrenceRule.value().excludedDates.has_value()) {
356 const auto excludedDateStr = GetUTCTimes(event.recurrenceRule.value().excludedDates.value());
361 DataShare::DataShareValuesBucket BuildValueEvent(const Event &event, int calendarId, int channelId)
366 LOG_DEBUG("title %{private}s", event.title.value_or("").c_str());
367 valuesBucket.Put("title", event.title.value_or(""));
368 valuesBucket.Put("important_event_type", event.type);
369 valuesBucket.Put("dtstart", event.startTime);
370 valuesBucket.Put("dtend", event.endTime);
373 BuildEventLocation(valuesBucket, event);
374 BuildEventService(valuesBucket, event);
375 BuildEventRecurrenceRule(valuesBucket, event);
377 LOG_DEBUG("description %{private}s", event.description.value_or("").c_str());
379 if (event.description.has_value()) {
380 valuesBucket.Put("description", event.description.value());
382 if (event.timeZone.has_value()) {
383 valuesBucket.Put("eventTimezone", event.timeZone.value());
385 if (event.isAllDay.has_value()) {
386 valuesBucket.Put("allDay", event.isAllDay.value());
388 if (event.identifier.has_value()) {
389 valuesBucket.Put("identifier", event.identifier.value());
391 if (event.isLunar.has_value()) {
392 valuesBucket.Put("event_calendar_type", event.isLunar.value());
749 void ResultSetToEvent(Event &event, DataShareResultSetPtr &resultSet, const std::set<std::string>& columns)
751 GetValueOptional(resultSet, "_id", event.id);
755 event.type = static_cast<EventType>(type);
758 GetValueOptional(resultSet, "title", event.title);
762 GetValue(resultSet, "dtstart", event.startTime);
766 GetValue(resultSet, "dtend", event.endTime);
771 event.isAllDay = static_cast<bool>(isAllDay);
774 GetValueOptional(resultSet, "description", event.description);
777 GetValueOptional(resultSet, "eventTimezone", event.timeZone);
780 event.location = ResultSetToLocation(resultSet);
783 event.service = ResultSetToEventService(resultSet);
786 event.recurrenceRule = ResultSetToRecurrenceRule(resultSet);
790 GetValueOptional(resultSet, "identifier", event.identifier);
796 event.isLunar = static_cast<bool>(isLunar);
815 Event event;
816 ResultSetToEvent(event, resultSet, columns);
817 events.emplace_back(event);