From 0a2d6fc06fc1988f860ab81fe53d1e6dae470407 Mon Sep 17 00:00:00 2001 From: Harald Eilertsen Date: Sun, 23 Aug 2020 15:03:13 +0200 Subject: Implement deleting screenings from web ui. --- src/controllers/screening.rs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/controllers') diff --git a/src/controllers/screening.rs b/src/controllers/screening.rs index b76ae65..9e78130 100644 --- a/src/controllers/screening.rs +++ b/src/controllers/screening.rs @@ -22,7 +22,7 @@ use crate::{ }; use std::result::Result; -use rocket::{get, post}; +use rocket::{delete, get, post}; use rocket::request::{Form, FromForm}; use rocket::response::Redirect; use rocket_contrib::{ @@ -82,3 +82,14 @@ pub fn create_screening(db: db::Connection, screening: Form) - db.create_screening(dbg!(screening.room_id), dbg!(screening.film_id), date, start_time, end_time)?; Ok(Redirect::to("/screenings")) } + +#[derive(FromForm)] +pub struct DeleteScreeningForm { + screening_id: i32, +} + +#[delete("/", format = "application/x-www-form-urlencoded", data = "")] +pub fn delete(db: db::Connection, screening: Form) -> Result> { + db.delete_screening(screening.screening_id)?; + Ok(Redirect::to("/screenings")) +} -- cgit v1.2.3