aboutsummaryrefslogtreecommitdiffstats
path: root/src/controllers/users_controller.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/controllers/users_controller.rs')
-rw-r--r--src/controllers/users_controller.rs83
1 files changed, 41 insertions, 42 deletions
diff --git a/src/controllers/users_controller.rs b/src/controllers/users_controller.rs
index 0dee68a..4713705 100644
--- a/src/controllers/users_controller.rs
+++ b/src/controllers/users_controller.rs
@@ -1,21 +1,15 @@
+use models::{NewUser, User};
use rocket::{
- response::{Flash, Redirect},
request::{FlashMessage, Form},
- Route
-};
-use models::{
- NewUser,
- User
-};
-use utils::{
- DbConn,
- Page
+ response::{Flash, Redirect},
+ Route,
};
+use utils::{DbConn, Page};
#[derive(BartDisplay)]
#[template = "templates/users.html"]
pub struct UsersTemplate {
- users: Vec<User>
+ users: Vec<User>,
}
implement_responder_for!(UsersTemplate);
@@ -26,15 +20,15 @@ fn index(flash: Option<FlashMessage>, conn: DbConn) -> Page<UsersTemplate> {
title: String::from("Users"),
flash: flash,
content: UsersTemplate {
- users: User::all(conn).unwrap()
- }
+ users: User::all(conn).unwrap(),
+ },
}
}
#[derive(BartDisplay)]
#[template = "templates/edit_user.html"]
pub struct EditUserTemplate {
- user: User
+ user: User,
}
implement_responder_for!(EditUserTemplate);
@@ -45,8 +39,8 @@ fn edit(id: i32, conn: DbConn) -> Page<EditUserTemplate> {
title: String::from("Edit users"),
flash: None,
content: EditUserTemplate {
- user: User::by_id(id, &conn).unwrap()
- }
+ user: User::by_id(id, &conn).unwrap(),
+ },
}
}
@@ -55,19 +49,19 @@ fn delete(id: i32, route: &Route, conn: DbConn) -> Flash<Redirect> {
match User::delete(id, conn) {
Ok(user) => Flash::success(
Redirect::to(route.base.path()),
- format!("User {} was successfully deleted.", user.username)
+ format!("User {} was successfully deleted.", user.username),
),
Err(msg) => Flash::error(
Redirect::to(route.base.path()),
- format!("Error deleting user: {}", msg)
- )
+ format!("Error deleting user: {}", msg),
+ ),
}
}
#[derive(BartDisplay)]
#[template = "templates/new_user.html"]
pub struct NewUserTemplate {
- user: NewUser
+ user: NewUser,
}
implement_responder_for!(NewUserTemplate);
@@ -78,8 +72,8 @@ fn new(flash: Option<FlashMessage>) -> Page<NewUserTemplate> {
title: String::from("New user"),
flash: flash,
content: NewUserTemplate {
- user: Default::default()
- }
+ user: Default::default(),
+ },
}
}
@@ -89,7 +83,7 @@ struct RegisterUserForm {
realname: Option<String>,
email: Option<String>,
password: String,
- password_confirm: String
+ password_confirm: String,
}
impl RegisterUserForm {
@@ -102,7 +96,7 @@ impl RegisterUserForm {
username: self.username.clone(),
realname: self.realname.clone(),
email: self.email.clone(),
- password: self.password.clone()
+ password: self.password.clone(),
})
}
}
@@ -117,27 +111,33 @@ impl RegisterUserForm {
username: self.username.clone(),
realname: self.realname.clone(),
email: self.email.clone(),
- password: self.password.clone()
+ password: self.password.clone(),
})
}
}
}
-#[post("/create", data="<user>")]
+#[post("/create", data = "<user>")]
fn create(user: Form<RegisterUserForm>, route: &Route, conn: DbConn) -> Flash<Redirect> {
match user.get().new_user() {
- Ok(new_user) => {
- match User::create(&new_user, conn) {
- Ok(_) => Flash::success(Redirect::to(route.base.path()), "User successfully created!"),
- Err(_) => Flash::error(Redirect::to("/"), "Could not create user!")
- }
+ Ok(new_user) => match User::create(&new_user, conn) {
+ Ok(_) => Flash::success(
+ Redirect::to(route.base.path()),
+ "User successfully created!",
+ ),
+ Err(_) => Flash::error(Redirect::to("/"), "Could not create user!"),
},
- Err(msg) => Flash::error(Redirect::to(&format!("{}/new", route.base.path())), &msg)
+ Err(msg) => Flash::error(Redirect::to(&format!("{}/new", route.base.path())), &msg),
}
}
-#[post("/<id>/update", data="<user_form>")]
-fn update(id: i32, user_form: Form<RegisterUserForm>, route: &Route, conn: DbConn) -> Flash<Redirect> {
+#[post("/<id>/update", data = "<user_form>")]
+fn update(
+ id: i32,
+ user_form: Form<RegisterUserForm>,
+ route: &Route,
+ conn: DbConn,
+) -> Flash<Redirect> {
match user_form.get().attrs() {
Ok(attrs) => {
if let Ok(mut user) = User::by_id(id, &conn) {
@@ -156,26 +156,25 @@ fn update(id: i32, user_form: Form<RegisterUserForm>, route: &Route, conn: DbCon
match User::update(&user, &conn) {
Ok(user) => Flash::success(
Redirect::to(route.base.path()),
- format!("User {} updated successfully", user.username)
+ format!("User {} updated successfully", user.username),
),
Err(msg) => Flash::error(
Redirect::to(route.base.path()),
- format!("User {} was not updated! {}", user.username, msg)
- )
-
+ format!("User {} was not updated! {}", user.username, msg),
+ ),
}
}
else {
Flash::error(
Redirect::to(route.base.path()),
- "Can't delete users which does not exist"
+ "Can't delete users which does not exist",
)
}
- },
+ }
Err(msg) => Flash::error(
Redirect::to(route.base.path()),
- format!("Invalid form data: {}", msg)
- )
+ format!("Invalid form data: {}", msg),
+ ),
}
}