Skip to content

Commit

Permalink
style(server): cargo fmt
Browse files Browse the repository at this point in the history
  • Loading branch information
yoyo930021 committed Mar 31, 2024
1 parent 4abcdf8 commit 4227206
Show file tree
Hide file tree
Showing 8 changed files with 178 additions and 104 deletions.
30 changes: 21 additions & 9 deletions src/modules/common.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,10 @@ use crate::{
models::{project::Project, user::User, user_email::UserEmail, user_session::UserSession},
modules::{EmptyResponse, EmptyResult, JsonResult},
utils::{
i18n::I18n, jwt::{self, LoginClaims}, lettre::send_email, rocket::{PrefixUri, UserAgent}
i18n::I18n,
jwt::{self, LoginClaims},
lettre::send_email,
rocket::{PrefixUri, UserAgent},
},
AppConfig, DbConn,
};
Expand Down Expand Up @@ -85,16 +88,25 @@ async fn login<'a>(
project.name_en.clone()
};

let body = i18n.tf("login.email.body", &[
("user", name.clone()),
("project", project_name.clone()),
("url", format!("{prefix_uri}/token/{login_token}")),
("email_from", email_from.clone())
]);
let body = i18n.tf(
"login.email.body",
&[
("user", name.clone()),
("project", project_name.clone()),
("url", format!("{prefix_uri}/token/{login_token}")),
("email_from", email_from.clone()),
],
);

let message = Message::builder()
.from(format!("ConfOps <{email_from}>").parse().expect("Failed to parse from email address"))
.to(format!("{name} <{to}>").parse().expect("Failed to parse to email address"))
.from(
format!("ConfOps <{email_from}>")
.parse()
.expect("Failed to parse from email address"),
)
.to(format!("{name} <{to}>")
.parse()
.expect("Failed to parse to email address"))
.subject(i18n.tf("login.email.subject", &[("project", project_name.clone())]))
.header(ContentType::TEXT_HTML)
.body(body)
Expand Down
4 changes: 1 addition & 3 deletions src/modules/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,7 @@ async fn catch_too_many_requests<'r>(request: &'r Request<'_>) -> AppError {
#[catch(500)]
async fn catch_internal<'r>(request: &'r Request<'_>) -> AppError {
let i18n = request.guard::<I18n>().await.expect("i18n failed!");
AppError::internal(
i18n.t("error.internal_server_error").to_string()
)
AppError::internal(i18n.t("error.internal_server_error").to_string())
}

impl<'r> Responder<'r, 'static> for EmptyResponse {
Expand Down
57 changes: 43 additions & 14 deletions src/modules/ticket/api.rs
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,9 @@ use crate::models::user::User;
use crate::modules::ticket::models::Ticket;
use crate::modules::ApiResult;
use crate::modules::{guard::AuthGuard, EmptyResponse, EmptyResult, JsonResult};
use crate::utils::i18n::I18n;
use crate::DataFolder;
use crate::DbConn;
use crate::utils::i18n::I18n;

#[get("/ticket/tickets")]
async fn all_tickets(mut conn: DbConn, auth: AuthGuard) -> JsonResult<Vec<TicketWithStatus>> {
Expand All @@ -57,13 +57,22 @@ pub struct TicketDetail {
}

#[get("/ticket/tickets/<ticket_id>")]
async fn get_ticket<'a>(mut conn: DbConn, auth: AuthGuard, i18n: I18n<'a>, ticket_id: i32) -> JsonResult<TicketDetail> {
async fn get_ticket<'a>(
mut conn: DbConn,
auth: AuthGuard,
i18n: I18n<'a>,
ticket_id: i32,
) -> JsonResult<TicketDetail> {
let AuthGuard { user, .. } = auth;
let ticket = Ticket::find(&mut conn, ticket_id)
.await
.map_err(|err| AppError::not_found(err.to_string()))?;
match ticket.is_user(&mut conn, &user).await {
Ok(false) => return Err(AppError::forbidden(i18n.t("ticket.error.not_join_to_this_ticket"))),
Ok(false) => {
return Err(AppError::forbidden(
i18n.t("ticket.error.not_join_to_this_ticket"),
))
}
Err(err) => return Err(AppError::forbidden(err.to_string())),
_ => (),
}
Expand Down Expand Up @@ -168,7 +177,11 @@ async fn process_ticket_flow<'a>(
.await
.map_err(|err| crate::error::AppError::not_found(err.to_string()))?;
match ticket.is_user(&mut conn, &user).await {
Ok(false) => return Err(AppError::forbidden(i18n.t("ticket.error.not_join_to_this_ticket"))),
Ok(false) => {
return Err(AppError::forbidden(
i18n.t("ticket.error.not_join_to_this_ticket"),
))
}
Err(err) => return Err(AppError::forbidden(err.to_string())),
_ => (),
}
Expand All @@ -182,7 +195,7 @@ async fn process_ticket_flow<'a>(
if let Some(flow_user_id) = &process_flow.user_id {
if flow_user_id != &user.id {
return Err(AppError::forbidden(
i18n.t("ticket.error.not_assign_to_this_flow")
i18n.t("ticket.error.not_assign_to_this_flow"),
));
}
}
Expand All @@ -200,7 +213,7 @@ async fn process_ticket_flow<'a>(
.map_err(|err| AppError::forbidden(err.to_string()))?;
if !is_schema_user {
return Err(AppError::forbidden(
i18n.t("ticket.error.not_assign_to_this_schema")
i18n.t("ticket.error.not_assign_to_this_schema"),
));
}

Expand Down Expand Up @@ -322,7 +335,11 @@ async fn get_schema<'a>(
.await
.map_err(|err| AppError::not_found(err.to_string()))?;
match schema.is_probably_join_user(&mut conn, &user).await {
Ok(false) => return Err(AppError::forbidden(i18n.t("ticket.error.not_probably_user_of_this_schema"))),
Ok(false) => {
return Err(AppError::forbidden(
i18n.t("ticket.error.not_probably_user_of_this_schema"),
))
}
Err(err) => return Err(AppError::forbidden(err.to_string())),
_ => (),
}
Expand All @@ -347,7 +364,11 @@ async fn get_probably_assign_user_in_schema_flow<'a>(
.await
.map_err(|err| AppError::not_found(err.to_string()))?;
match schema.is_probably_join_user(&mut conn, &user).await {
Ok(false) => return Err(AppError::forbidden(i18n.t("ticket.error.not_probably_user_of_this_schema"))),
Ok(false) => {
return Err(AppError::forbidden(
i18n.t("ticket.error.not_probably_user_of_this_schema"),
))
}
Err(err) => return Err(AppError::forbidden(err.to_string())),
_ => (),
}
Expand Down Expand Up @@ -383,7 +404,11 @@ async fn add_ticket_for_schema<'a>(
.map_err(|err| AppError::not_found(err.to_string()))?;

match schema.is_probably_join_user(&mut conn, &user).await {
Ok(false) => return Err(AppError::forbidden(i18n.t("ticket.error.not_join_to_this_ticket"))),
Ok(false) => {
return Err(AppError::forbidden(
i18n.t("ticket.error.not_join_to_this_ticket"),
))
}
Err(err) => return Err(AppError::forbidden(err.to_string())),
_ => (),
}
Expand Down Expand Up @@ -508,7 +533,7 @@ async fn get_field_file_content<'a>(
match schema.is_probably_user(&mut conn, &user).await {
Ok(false) => {
return Err(AppError::forbidden(
i18n.t("ticket.error.not_join_to_this_ticket")
i18n.t("ticket.error.not_join_to_this_ticket"),
))
}
Err(err) => return Err(AppError::forbidden(err.to_string())),
Expand Down Expand Up @@ -573,7 +598,7 @@ async fn get_managed_schema_in_admin<'a>(
match schema.is_manager(&mut conn, &user).await {
Ok(false) => {
return Err(AppError::forbidden(
i18n.t("ticket.error.not_manager_of_this_schema")
i18n.t("ticket.error.not_manager_of_this_schema"),
))
}
Err(err) => return Err(AppError::forbidden(err.to_string())),
Expand Down Expand Up @@ -641,7 +666,7 @@ async fn add_flow_to_schema_in_admin<'a>(
match schema.is_manager(&mut conn, &user).await {
Ok(false) => {
return Err(AppError::forbidden(
i18n.t("ticket.error.not_manager_of_this_schema")
i18n.t("ticket.error.not_manager_of_this_schema"),
))
}
Err(err) => return Err(AppError::forbidden(err.to_string())),
Expand All @@ -653,7 +678,11 @@ async fn add_flow_to_schema_in_admin<'a>(
schema.updated_at = chrono::Utc::now().naive_utc();
let _ = schema.save(conn).await?;
let flow = schema
.add_flow(conn, new_flow_req.schema.name_zh.clone(), new_flow_req.schema.name_en.clone())
.add_flow(
conn,
new_flow_req.schema.name_zh.clone(),
new_flow_req.schema.name_en.clone(),
)
.await?;

match new_flow_req.into_inner().module {
Expand Down Expand Up @@ -705,7 +734,7 @@ async fn all_tickets_for_schema_in_admin<'a>(
match schema.is_manager(&mut conn, &user).await {
Ok(false) => {
return Err(AppError::forbidden(
i18n.t("ticket.error.not_manager_of_this_schema")
i18n.t("ticket.error.not_manager_of_this_schema"),
))
}
Err(err) => return Err(AppError::forbidden(err.to_string())),
Expand Down
2 changes: 1 addition & 1 deletion src/modules/ticket/forms/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ use crate::{
models::user::User,
utils::{
file::FileMime,
i18n::I18n,
image::{self, ImageMime},
i18n::I18n
},
DataFolder,
};
Expand Down
Loading

0 comments on commit 4227206

Please sign in to comment.