Compare commits

..

No commits in common. "6b8892788002dfce535c0d2ea03d923dc10b59ea" and "49b2305cdb1282931e7eaf9ea02f1e8413c64572" have entirely different histories.

2 changed files with 18 additions and 29 deletions

View File

@ -76,30 +76,23 @@ impl Trip {
.await;
if same_starting_datetime.len() > 1 {
for notify in same_starting_datetime {
// don't notify oneself
if notify.id == trip_details.id {
continue;
}
// don't notify people who have cancelled their trip
if notify.cancelled(db) {
continue;
}
if let Some(trip) = Trip::find_by_trip_details(db, notify.id).await {
let user = User::find_by_id(db, trip.cox_id as i32).await.unwrap();
Notification::create(
db,
&user,
&format!(
"{} hat eine Ausfahrt zur selben Zeit ({} um {}) wie du erstellt",
cox.user.name, trip.day, trip.planned_starting_time
),
"Neue Ausfahrt zur selben Zeit",
None,
None,
)
.await;
if notify.id != trip_details.id {
// notify everyone except oneself
if let Some(trip) = Trip::find_by_trip_details(db, notify.id).await {
let user = User::find_by_id(db, trip.cox_id as i32).await.unwrap();
Notification::create(
db,
&user,
&format!(
"{} hat eine Ausfahrt zur selben Zeit ({} um {}) wie du erstellt",
cox.user.name, trip.day, trip.planned_starting_time
),
"Neue Ausfahrt zur selben Zeit",
None,
None,
)
.await;
}
}
}
}

View File

@ -94,10 +94,6 @@ WHERE day = ? AND planned_starting_time = ?
.await.unwrap()
}
pub fn cancelled(&self, db: &SqlitePool) -> bool {
self.max_people == 0
}
/// This function is called when a person registers to a trip or when the cox changes the
/// amount of free places.
pub async fn check_free_spaces(&self, db: &SqlitePool) {
@ -106,7 +102,7 @@ WHERE day = ? AND planned_starting_time = ?
return;
}
if self.cancelled(db) {
if self.max_people == 0 {
// Cox cancelled event, thus it's probably bad weather. Don't bother with sending
// notifications
return;