Skip to content

Commit 967a443

Browse files
committed
backend/send_chargelog_to_user: add display name
1 parent d94ac2e commit 967a443

File tree

3 files changed

+25
-5
lines changed

3 files changed

+25
-5
lines changed

backend/src/routes/send_chargelog_to_user.rs

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ pub struct SendChargelogSchema {
1818
pub password: String,
1919
pub user_uuid: String,
2020
pub filename: String,
21+
pub display_name: String,
2122
pub chargelog: Vec<u8>,
2223
}
2324

@@ -27,6 +28,7 @@ struct ChargelogDETemplate<'a> {
2728
name: &'a str,
2829
month: &'a str,
2930
filename: &'a str,
31+
display_name: &'a str,
3032
}
3133

3234
#[derive(Template)]
@@ -35,12 +37,14 @@ struct ChargelogENTemplate<'a> {
3537
name: &'a str,
3638
month: &'a str,
3739
filename: &'a str,
40+
display_name: &'a str,
3841
}
3942

4043
fn render_chargelog_email(
4144
user_name: &str,
4245
month: &str,
4346
filename: &str,
47+
display_name: &str,
4448
lang: &str,
4549
) -> actix_web::Result<(String, String)> {
4650
let (body, subject) = match lang {
@@ -49,9 +53,13 @@ fn render_chargelog_email(
4953
name: user_name,
5054
month,
5155
filename,
56+
display_name,
5257
};
5358
match template.render() {
54-
Ok(b) => (b, format!("Dein Ladelog für {}", month)),
59+
Ok(b) => (
60+
b,
61+
format!("Dein Ladelog für {} von {}", month, display_name),
62+
),
5563
Err(e) => {
5664
log::error!(
5765
"Failed to render German chargelog email template for user '{}': {}",
@@ -67,9 +75,13 @@ fn render_chargelog_email(
6775
name: user_name,
6876
month,
6977
filename,
78+
display_name,
7079
};
7180
match template.render() {
72-
Ok(b) => (b, format!("Your Charge Log for {}", month)),
81+
Ok(b) => (
82+
b,
83+
format!("Your Charge Log for {} from {}", month, display_name),
84+
),
7385
Err(e) => {
7486
log::error!(
7587
"Failed to render English chargelog email template for user '{}': {}",
@@ -143,7 +155,13 @@ pub async fn send_chargelog(
143155
_ => last_month.format("%B %Y").to_string(),
144156
};
145157

146-
let (body, subject) = render_chargelog_email(&user.name, &month, &payload.filename, &lang_str)?;
158+
let (body, subject) = render_chargelog_email(
159+
&user.name,
160+
&month,
161+
&payload.filename,
162+
&payload.display_name,
163+
&lang_str,
164+
)?;
147165

148166
send_email_with_attachment(
149167
&user.email,
@@ -178,6 +196,7 @@ mod tests {
178196
user_uuid: crate::routes::user::tests::get_test_uuid(&user.mail)
179197
.unwrap()
180198
.to_string(),
199+
display_name: "Test Device".to_string(),
181200
filename: "chargelog.pdf".to_string(),
182201
chargelog: vec![1, 2, 3, 4, 5],
183202
};
@@ -206,6 +225,7 @@ mod tests {
206225
user_uuid: crate::routes::user::tests::get_test_uuid(&user.mail)
207226
.unwrap()
208227
.to_string(),
228+
display_name: "Test Device".to_string(),
209229
filename: "chargelog.pdf".to_string(),
210230
chargelog: vec![1, 2, 3, 4, 5],
211231
};

backend/templates/chargelog_de.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
</head>
55
<body>
66
<h3>Hallo {{name}},</h3>
7-
<p>Anbei findest du das Ladelog für den Monat {{month}}.</p>
7+
<p>Anbei findest du das Ladelog von deinem Gerät "{{display_name}}" für den Monat {{month}}.</p>
88
<p>Die Datei ist als Anhang dieser E-Mail beigefügt: {{filename}}</p>
99
</body>
1010
</html>

backend/templates/chargelog_en.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
</head>
55
<body>
66
<h3>Hello {{name}},</h3>
7-
<p>Please find attached the charge log for the month of {{month}}.</p>
7+
<p>Please find attached the charge log from your device "{{display_name}}" for the month of {{month}}.</p>
88
<p>The file is attached to this email: {{filename}}</p>
99
</body>
1010
</html>

0 commit comments

Comments
 (0)