#include #include namespace db { uint32_t insert_events(sql::Database *db, const ical::IcalObject *object) { DEBUG << *object; uint32_t event_id; for(auto const& event : object->get_events()) { stmt::Statement insert_object = stmt::Statement::insert().table("events").columns("uid, summary, dtstart, dtend").values().row(event->get_db_row()).close(); DEBUG << insert_object.str(); db->exec(insert_object.str()); event_id = db->execAndGet("SELECT last_insert_rowid();"); DEBUG << event_id; for(auto const& alarm : event->get_alarms()) { insert_alarm(db, &alarm, event_id); } } return 0; } uint32_t insert_alarm(sql::Database *db, const ical::Alarm *alarm, const uint32_t event_id) { std::vector row = alarm->get_db_row(); row.push_back(std::to_string(event_id)); stmt::Statement insert_alarm = stmt::Statement::insert().table("alarms").columns("action, description, absolute_trigger, eventID").values().row(row).close(); DEBUG << insert_alarm.str(); db->exec(insert_alarm.str()); return 0; } }