diff --git a/src/model/user/mod.rs b/src/model/user/mod.rs index a75432b..1361fd3 100644 --- a/src/model/user/mod.rs +++ b/src/model/user/mod.rs @@ -532,17 +532,19 @@ ASKÖ Ruderverein Donau Linz", self.name), } } - pub async fn reset_pw(&self, db: &SqlitePool) { + pub async fn reset_pw(&self, db: &SqlitePool, changed_by: &ManageUserUser) { sqlx::query!("UPDATE user SET pw = null where id = ?", self.id) .execute(db) .await .unwrap(); //Okay, because we can only create a User of a valid id // TODO: add responsible person - ActivityBuilder::new(&format!("Passwort von User {self} wurde zurückgesetzt.")) - .relevant_for_user(self) - .save(db) - .await; + ActivityBuilder::new(&format!( + "{changed_by} hat das Passwort von User {self} zurückgesetzt." + )) + .relevant_for_user(self) + .save(db) + .await; } pub async fn update_pw(&self, db: &SqlitePool, pw: &str) { @@ -551,12 +553,10 @@ ASKÖ Ruderverein Donau Linz", self.name), .execute(db) .await .unwrap(); //Okay, because we can only create a User of a valid id - ActivityBuilder::new(&format!( - "Passwort von User {self} wurde erfolgreich geändert." - )) - .relevant_for_user(self) - .save(db) - .await; + ActivityBuilder::new(&format!("{self} hat sein Passwort geändert.")) + .relevant_for_user(self) + .save(db) + .await; } fn get_hashed_pw(pw: &str) -> String { diff --git a/src/tera/admin/user.rs b/src/tera/admin/user.rs index 4a5c04f..9e61844 100644 --- a/src/tera/admin/user.rs +++ b/src/tera/admin/user.rs @@ -276,7 +276,7 @@ async fn resetpw(db: &State, admin: ManageUserUser, user: i32) -> Fl format!("{} has resetted the pw for {}", admin.user.name, user.name), ) .await; - user.reset_pw(db).await; + user.reset_pw(db, &admin).await; Flash::success( Redirect::to("/admin/user"), format!("Passwort von {} zurückgesetzt", user.name),