[pdm-devel] [PATCH yew-comp 1/5] auth_view: add default column and allow setting ldap realms as default
Shannon Sterz
s.sterz at proxmox.com
Tue Sep 16 16:48:18 CEST 2025
Signed-off-by: Shannon Sterz <s.sterz at proxmox.com>
---
src/auth_edit_ldap.rs | 1 +
src/auth_view.rs | 16 +++++++++++++++-
src/common_api_types.rs | 3 +++
3 files changed, 19 insertions(+), 1 deletion(-)
diff --git a/src/auth_edit_ldap.rs b/src/auth_edit_ldap.rs
index 9e5d3a2..4671a1e 100644
--- a/src/auth_edit_ldap.rs
+++ b/src/auth_edit_ldap.rs
@@ -182,6 +182,7 @@ fn render_general_form(form_ctx: FormContext, props: AuthEditLDAP) -> Html {
.required(true)
.placeholder("cn=Users,dc=company,dc=net"),
)
+ .with_field(tr!("Default Realm"), Checkbox::new().name("default"));
.with_right_field(tr!("Fallback Server"), Field::new().name("server2"))
.with_field(
tr!("User Attribute Name"),
diff --git a/src/auth_view.rs b/src/auth_view.rs
index 4a0f22f..4d6e143 100644
--- a/src/auth_view.rs
+++ b/src/auth_view.rs
@@ -12,7 +12,7 @@ use pwt::state::{Selection, Store};
use pwt::widget::data_table::{DataTable, DataTableColumn, DataTableHeader};
use pwt::widget::menu::{Menu, MenuButton, MenuItem};
-use pwt::widget::{Button, Toolbar};
+use pwt::widget::{Button, Fa, Toolbar};
use pwt_macros::builder;
@@ -298,6 +298,20 @@ thread_local! {
a.ty.cmp(&b.ty)
})
.into(),
+ DataTableColumn::new(tr!("Default"))
+ .width("100px")
+ .render(|item: &BasicRealmInfo| {
+ if item.default.unwrap_or_default() {
+ Fa::new("check").into()
+ } else {
+ Fa::new("times").into()
+ }
+ })
+ .justify("center")
+ .sorter(|a: &BasicRealmInfo, b: &BasicRealmInfo| {
+ a.default.unwrap_or_default().cmp(&b.default.unwrap_or_default())
+ })
+ .into(),
DataTableColumn::new("Comment")
.flex(1)
.render(|record: &BasicRealmInfo| {
diff --git a/src/common_api_types.rs b/src/common_api_types.rs
index 03f7707..c247569 100644
--- a/src/common_api_types.rs
+++ b/src/common_api_types.rs
@@ -14,6 +14,9 @@ pub struct BasicRealmInfo {
pub realm: String,
#[serde(rename = "type")]
pub ty: String,
+ /// True if it is the default realm
+ #[serde(skip_serializing_if = "Option::is_none")]
+ pub default: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
}
--
2.47.3
More information about the pdm-devel
mailing list