allow 'always_show' when creating events
This commit is contained in:
		| @@ -233,6 +233,7 @@ WHERE trip_details.id=? | ||||
|         db: &SqlitePool, | ||||
|         name: &str, | ||||
|         planned_amount_cox: i32, | ||||
|         always_show: bool, | ||||
|         trip_details: &TripDetails, | ||||
|     ) { | ||||
|         if trip_details.always_show { | ||||
| @@ -245,6 +246,10 @@ WHERE trip_details.id=? | ||||
|             .await; | ||||
|         } | ||||
|  | ||||
|         if always_show && !trip_details.always_show { | ||||
|             trip_details.set_always_show(db, true).await; | ||||
|         } | ||||
|  | ||||
|         sqlx::query!( | ||||
|             "INSERT INTO planned_event(name, planned_amount_cox, trip_details_id) VALUES(?, ?, ?)", | ||||
|             name, | ||||
|   | ||||
| @@ -173,6 +173,17 @@ WHERE day = ? AND planned_starting_time = ? | ||||
|         query.last_insert_rowid() | ||||
|     } | ||||
|  | ||||
|     pub async fn set_always_show(&self, db: &SqlitePool, value: bool) { | ||||
|         sqlx::query!( | ||||
|             "UPDATE trip_details SET always_show = ? WHERE id = ?", | ||||
|             value, | ||||
|             self.id | ||||
|         ) | ||||
|         .execute(db) | ||||
|         .await | ||||
|         .unwrap(); //Okay, as planned_event can only be created with proper DB backing | ||||
|     } | ||||
|  | ||||
|     pub async fn is_full(&self, db: &SqlitePool) -> bool { | ||||
|         let amount_currently_registered = sqlx::query!( | ||||
|             "SELECT COUNT(*) as count FROM user_trip WHERE trip_details_id = ?", | ||||
|   | ||||
| @@ -18,6 +18,7 @@ use crate::model::{ | ||||
| struct AddEventForm<'r> { | ||||
|     name: &'r str, | ||||
|     planned_amount_cox: i32, | ||||
|     always_show: bool, | ||||
|     tripdetails: TripDetailsToAdd<'r>, | ||||
| } | ||||
|  | ||||
| @@ -34,7 +35,14 @@ async fn create( | ||||
|                                                                                     //just created | ||||
|                                                                                     //the object | ||||
|  | ||||
|     Event::create(db, data.name, data.planned_amount_cox, &trip_details).await; | ||||
|     Event::create( | ||||
|         db, | ||||
|         data.name, | ||||
|         data.planned_amount_cox, | ||||
|         data.always_show, | ||||
|         &trip_details, | ||||
|     ) | ||||
|     .await; | ||||
|  | ||||
|     Flash::success(Redirect::to("/planned"), "Event hinzugefügt") | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user