allow cancel of events #522
@ -154,4 +154,14 @@ ORDER BY read_at DESC, created_at DESC;
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub(crate) async fn delete_by_action(db: &sqlx::Pool<Sqlite>, action: &str) {
|
||||||
|
sqlx::query!(
|
||||||
|
"DELETE FROM notification WHERE action_after_reading=? and read_at = null",
|
||||||
|
action
|
||||||
|
)
|
||||||
|
.execute(db)
|
||||||
|
.await
|
||||||
|
.unwrap();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -232,6 +232,12 @@ WHERE day=?
|
|||||||
.await;
|
.await;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
Notification::delete_by_action(
|
||||||
|
db,
|
||||||
|
&format!("remove_user_trip_with_trip_details_id:{}", trip_details_id),
|
||||||
|
)
|
||||||
|
.await;
|
||||||
}
|
}
|
||||||
|
|
||||||
let trip_details = TripDetails::find_by_id(db, trip_details_id).await.unwrap();
|
let trip_details = TripDetails::find_by_id(db, trip_details_id).await.unwrap();
|
||||||
|
@ -77,6 +77,12 @@ WHERE day = ? AND planned_starting_time = ?
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if self.max_people == 0 {
|
||||||
|
// Cox cancelled event, thus it's probably bad weather. Don't bother with sending
|
||||||
|
// notifications
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if Trip::find_by_trip_details(db, self.id).await.is_none() {
|
if Trip::find_by_trip_details(db, self.id).await.is_none() {
|
||||||
// This trip_details belongs to a planned_event, no need to do anything
|
// This trip_details belongs to a planned_event, no need to do anything
|
||||||
return;
|
return;
|
||||||
|
Loading…
Reference in New Issue
Block a user