| 
						
						
						
					 | 
				
				 | 
				
					@ -1,6 +1,9 @@ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					#include <ical/Event.h>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					#include <ical/Alarm.h>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					#include <db/db.h>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					namespace ical { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  Event::Event(icalcomponent* event_component) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    parse(event_component); | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -8,8 +11,8 @@ namespace ical { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  void Event::parse(icalcomponent* event_component) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    uid = icalcomponent_get_uid(event_component); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    dtstart = icalcomponent_get_dtstart(event_component); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    dtend = icalcomponent_get_dtend(event_component); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    dtstart = icaltime_as_timet(icalcomponent_get_dtstart(event_component)); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    dtend = icaltime_as_timet(icalcomponent_get_dtend(event_component)); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    summary = std::string(icalcomponent_get_summary(event_component)); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    parse_alarms(event_component); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -24,31 +27,38 @@ namespace ical { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  std::string get_uid() const { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  std::string Event::get_uid() const { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return uid; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  std::string get_summary() const { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  std::string Event::get_summary() const { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return summary; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  icaltimetype get_dtstart() const { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  uint32_t Event::get_dtstart() const { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return dtstart; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  icaltimetype get_dtend() const { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  uint32_t Event::get_dtend() const { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return dtend; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  std::vector<Alarm> get_alarms() const { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  std::vector<Alarm> Event::get_alarms() const { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return alarms; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  std::vector<std::string> Event::get_db_row() const { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    return {db_safe(uid), | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            db_safe(summary), | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            db_safe(std::to_string(dtstart)), | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            db_safe(std::to_string(dtend))}; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  std::string Event::print() const { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    std::string s = ""; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    s += "UID:     " + uid + "\n"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    s += "DTSTART: " + std::string(icaltime_as_ical_string(dtstart)) + "\n"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    s += "DTEND:   " + std::string(icaltime_as_ical_string(dtend)) + "\n"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    s += "DTSTART: " + std::to_string(dtstart) + "\n"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    s += "DTEND:   " + std::to_string(dtend) + "\n"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    s += "SUMMARY: " + summary + "\n"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    s += "ALARMS:\n"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    for(auto const& a : alarms) { | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |