From 4d9305f3d260cfe8c130139a38d0a9ca632c9f26 Mon Sep 17 00:00:00 2001 From: Philippe Loctaux
Date: Fri, 7 Apr 2023 17:48:50 +0200
Subject: [PATCH] settings/security: display page
---
crates/ezidam/src/menu/items/user.rs | 14 +++-
crates/ezidam/src/page.rs | 5 ++
crates/ezidam/src/routes/settings.rs | 10 +++
crates/ezidam/src/routes/settings/security.rs | 15 ++++
.../pages/settings/personal.html.tera | 2 +
.../pages/settings/security.html.tera | 81 +++++++++++++++++++
6 files changed, 123 insertions(+), 4 deletions(-)
create mode 100644 crates/ezidam/src/routes/settings/security.rs
create mode 100644 crates/ezidam/templates/pages/settings/security.html.tera
diff --git a/crates/ezidam/src/menu/items/user.rs b/crates/ezidam/src/menu/items/user.rs
index a0b67c1..d9b2dbf 100644
--- a/crates/ezidam/src/menu/items/user.rs
+++ b/crates/ezidam/src/menu/items/user.rs
@@ -29,10 +29,16 @@ impl UserMenu {
label: "Settings",
link: uri!(routes::settings::user_settings).to_string(),
icon: Icon::Settings.svg,
- sub: Some(vec![SubItem {
- label: "Personal",
- link: uri!(routes::settings::personal::user_settings_personal).to_string(),
- }]),
+ sub: Some(vec![
+ SubItem {
+ label: "Personal",
+ link: uri!(routes::settings::personal::user_settings_personal).to_string(),
+ },
+ SubItem {
+ label: "Security",
+ link: uri!(routes::settings::security::user_settings_security).to_string(),
+ },
+ ]),
},
]
}
diff --git a/crates/ezidam/src/page.rs b/crates/ezidam/src/page.rs
index bcc1666..1f38779 100644
--- a/crates/ezidam/src/page.rs
+++ b/crates/ezidam/src/page.rs
@@ -22,6 +22,7 @@ pub enum Page {
AdminAppsNew(AdminAppsNew),
AdminAppsView(AdminAppsView),
UserPersonalSettings(UserPersonalSettings),
+ UserSecuritySettings(UserSecuritySettings),
}
impl Page {
@@ -40,6 +41,7 @@ impl Page {
Page::AdminAppsNew(_) => "pages/admin/apps/new",
Page::AdminAppsView(_) => "pages/admin/apps/view",
Page::UserPersonalSettings(_) => "pages/settings/personal",
+ Page::UserSecuritySettings(_) => "pages/settings/security",
}
}
@@ -58,6 +60,7 @@ impl Page {
Page::AdminAppsNew(_) => "New application",
Page::AdminAppsView(_) => "Application info",
Page::UserPersonalSettings(_) => "Personal settings",
+ Page::UserSecuritySettings(_) => "Security settings",
}
}
@@ -78,6 +81,7 @@ impl Page {
Page::AdminAppsNew(_) => Some(AdminMenu::Apps.into()),
Page::AdminAppsView(_) => Some(AdminMenu::Apps.into()),
Page::UserPersonalSettings(_) => Some(UserMenu::Settings.into()),
+ Page::UserSecuritySettings(_) => Some(UserMenu::Settings.into()),
}
}
@@ -96,6 +100,7 @@ impl Page {
Page::AdminAppsNew(new) => Box::new(new),
Page::AdminAppsView(view) => Box::new(view),
Page::UserPersonalSettings(personal) => Box::new(personal),
+ Page::UserSecuritySettings(security) => Box::new(security),
}
}
}
diff --git a/crates/ezidam/src/routes/settings.rs b/crates/ezidam/src/routes/settings.rs
index 838454d..f9d4fea 100644
--- a/crates/ezidam/src/routes/settings.rs
+++ b/crates/ezidam/src/routes/settings.rs
@@ -1,14 +1,17 @@
use super::prelude::*;
use personal::*;
use rocket::get;
+use security::*;
pub mod personal;
+pub mod security;
pub fn routes() -> Vec
+ You can use your paper key to reset your password if you forget it. Logout from every application you signed in with your account.
+ Settings
+
+ {{ flash.1 | safe }}
+ Security
+
+
+ Password
+
+ Paper key
+ Logout everywhere
+