add cancellation, trip_type and notes to cal export
This commit is contained in:
@ -343,6 +343,10 @@ WHERE trip_details.id=?
|
||||
Ok(())
|
||||
}
|
||||
|
||||
pub fn is_cancelled(&self) -> bool {
|
||||
self.max_people == 0
|
||||
}
|
||||
|
||||
pub async fn get_ics_feed(db: &SqlitePool) -> String {
|
||||
let mut calendar = ICalendar::new("2.0", "ics-rs");
|
||||
|
||||
@ -355,7 +359,20 @@ WHERE trip_details.id=?
|
||||
event.day.replace('-', ""),
|
||||
event.planned_starting_time.replace(':', "")
|
||||
)));
|
||||
vevent.push(Summary::new(event.name));
|
||||
let mut name = String::new();
|
||||
if event.is_cancelled() {
|
||||
name.push_str("ABGESAGT :-( ");
|
||||
}
|
||||
name.push_str(&format!("{} ", event.name));
|
||||
|
||||
let tripdetails = event.trip_details(db).await;
|
||||
if let Some(triptype) = tripdetails.triptype(db).await {
|
||||
name.push_str(&format!("• {} ", triptype.name))
|
||||
}
|
||||
if let Some(notes) = tripdetails.notes {
|
||||
name.push_str(&format!("({notes}) "))
|
||||
}
|
||||
vevent.push(Summary::new(name));
|
||||
calendar.add_event(vevent);
|
||||
}
|
||||
let mut buf = Vec::new();
|
||||
|
Reference in New Issue
Block a user