diff --git a/src/model/event.rs b/src/model/event.rs index 3715ab1..f03ada6 100644 --- a/src/model/event.rs +++ b/src/model/event.rs @@ -105,6 +105,7 @@ pub struct EventUpdate<'a> { pub notes: Option<&'a str>, pub always_show: bool, pub is_locked: bool, + pub trip_type_id: Option, } impl Event { @@ -244,11 +245,12 @@ WHERE trip_details.id=? let was_already_cancelled = tripdetails.max_people == 0; sqlx::query!( - "UPDATE trip_details SET max_people = ?, notes = ?, always_show = ?, is_locked = ? WHERE id = ?", + "UPDATE trip_details SET max_people = ?, notes = ?, always_show = ?, is_locked = ?, trip_type_id = ? WHERE id = ?", update.max_people, update.notes, update.always_show, update.is_locked, + update.trip_type_id, self.trip_details_id ) .execute(db) diff --git a/src/tera/admin/event.rs b/src/tera/admin/event.rs index 7fa5303..cefde95 100644 --- a/src/tera/admin/event.rs +++ b/src/tera/admin/event.rs @@ -49,6 +49,7 @@ struct UpdateEventForm<'r> { notes: Option<&'r str>, always_show: bool, is_locked: bool, + trip_type: Option, } #[put("/planned-event", data = "")] @@ -64,6 +65,7 @@ async fn update( notes: data.notes, always_show: data.always_show, is_locked: data.is_locked, + trip_type_id: data.trip_type, }; match Event::find_by_id(db, data.id).await { Some(planned_event) => { diff --git a/templates/planned.html.tera b/templates/planned.html.tera index 8e94636..0ff4851 100644 --- a/templates/planned.html.tera +++ b/templates/planned.html.tera @@ -220,6 +220,7 @@ {{ macros::input(label='Anzahl Steuerleute', name='planned_amount_cox', type='number', value=event.planned_amount_cox, required=true, min='0') }} {{ macros::checkbox(label='Immer anzeigen', name='always_show', id=event.id,checked=event.always_show) }} {{ macros::checkbox(label='Gesperrt', name='is_locked', id=event.id,checked=event.is_locked) }} + {{ macros::select(label='Typ', name='trip_type', data=trip_types, default='Reguläre Ausfahrt', selected_id=event.trip_type_id) }} {{ macros::input(label='Anmerkungen', name='notes', type='input', value=event.notes) }}