allow admin to create user
This commit is contained in:
		| @@ -57,6 +57,29 @@ async fn update( | ||||
|     Flash::success(Redirect::to("/admin/user"), "Successfully updated user") | ||||
| } | ||||
|  | ||||
| pub fn routes() -> Vec<Route> { | ||||
|     routes![index, resetpw, update] | ||||
| #[derive(FromForm)] | ||||
| struct UserAddForm { | ||||
|     name: String, | ||||
|     is_guest: bool, | ||||
| } | ||||
|  | ||||
| #[post("/user/new", data = "<data>")] | ||||
| async fn create( | ||||
|     db: &State<SqlitePool>, | ||||
|     data: Form<UserAddForm>, | ||||
|     _admin: AdminUser, | ||||
| ) -> Flash<Redirect> { | ||||
|     if User::create(db, data.name.clone(), data.is_guest).await { | ||||
|         //TODO: fix clone() above | ||||
|         Flash::success(Redirect::to("/admin/user"), "Successfully created user") | ||||
|     } else { | ||||
|         Flash::error( | ||||
|             Redirect::to("/admin/user"), | ||||
|             format!("User {} already exists", data.name), | ||||
|         ) | ||||
|     } | ||||
| } | ||||
|  | ||||
| pub fn routes() -> Vec<Route> { | ||||
|     routes![index, resetpw, update, create] | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user