forked from Ruderverein-Donau-Linz/rowt
		
	craete log if user creates a new event
This commit is contained in:
		@@ -9,8 +9,12 @@ use serde::Serialize;
 | 
			
		||||
use sqlx::{FromRow, Row, SqlitePool};
 | 
			
		||||
 | 
			
		||||
use super::{
 | 
			
		||||
    notification::Notification, role::Role, tripdetails::TripDetails, triptype::TripType,
 | 
			
		||||
    user::User,
 | 
			
		||||
    log::Log,
 | 
			
		||||
    notification::Notification,
 | 
			
		||||
    role::Role,
 | 
			
		||||
    tripdetails::TripDetails,
 | 
			
		||||
    triptype::TripType,
 | 
			
		||||
    user::{EventUser, User},
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#[derive(Serialize, Clone, FromRow, Debug, PartialEq)]
 | 
			
		||||
@@ -242,6 +246,7 @@ WHERE trip_details.id=?
 | 
			
		||||
 | 
			
		||||
    pub async fn create(
 | 
			
		||||
        db: &SqlitePool,
 | 
			
		||||
        user: &EventUser,
 | 
			
		||||
        name: &str,
 | 
			
		||||
        planned_amount_cox: i32,
 | 
			
		||||
        always_show: bool,
 | 
			
		||||
@@ -270,6 +275,15 @@ WHERE trip_details.id=?
 | 
			
		||||
        .execute(db)
 | 
			
		||||
        .await
 | 
			
		||||
        .unwrap(); //Okay, as TripDetails can only be created with proper DB backing
 | 
			
		||||
 | 
			
		||||
        Log::create(
 | 
			
		||||
            db,
 | 
			
		||||
            format!(
 | 
			
		||||
                "{} created event {} on {} at {}.",
 | 
			
		||||
                user.user.name, name, trip_details.day, trip_details.planned_starting_time
 | 
			
		||||
            ),
 | 
			
		||||
        )
 | 
			
		||||
        .await;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    //TODO: create unit test
 | 
			
		||||
 
 | 
			
		||||
@@ -26,7 +26,7 @@ struct AddEventForm<'r> {
 | 
			
		||||
async fn create(
 | 
			
		||||
    db: &State<SqlitePool>,
 | 
			
		||||
    data: Form<AddEventForm<'_>>,
 | 
			
		||||
    _admin: EventUser,
 | 
			
		||||
    user: EventUser,
 | 
			
		||||
) -> Flash<Redirect> {
 | 
			
		||||
    let data = data.into_inner();
 | 
			
		||||
 | 
			
		||||
@@ -37,6 +37,7 @@ async fn create(
 | 
			
		||||
 | 
			
		||||
    Event::create(
 | 
			
		||||
        db,
 | 
			
		||||
        &user,
 | 
			
		||||
        data.name,
 | 
			
		||||
        data.planned_amount_cox,
 | 
			
		||||
        data.always_show,
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user