[pdm-devel] [PATCH datacenter-manager 18/21] ui: pve wizard: connect: factor out normalize_hostname

Dominik Csapak d.csapak at proxmox.com
Fri May 16 15:36:08 CEST 2025


we'll use this later again

Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
 ui/src/remotes/wizard_page_connect.rs | 24 +++++++++++++++---------
 1 file changed, 15 insertions(+), 9 deletions(-)

diff --git a/ui/src/remotes/wizard_page_connect.rs b/ui/src/remotes/wizard_page_connect.rs
index f6013f2..bdc6b7f 100644
--- a/ui/src/remotes/wizard_page_connect.rs
+++ b/ui/src/remotes/wizard_page_connect.rs
@@ -65,15 +65,7 @@ pub struct ConnectParams {
 async fn connect(form_ctx: FormContext, remote_type: RemoteType) -> Result<ConnectParams, Error> {
     let data = form_ctx.get_submit_data();
     let mut data: ConnectParams = serde_json::from_value(data.clone())?;
-    if let Some(hostname) = data.hostname.strip_prefix("http://") {
-        data.hostname = hostname.to_string();
-    }
-    if let Some(hostname) = data.hostname.strip_prefix("https://") {
-        data.hostname = hostname.to_string();
-    }
-    if let Some(hostname) = data.hostname.strip_suffix("/") {
-        data.hostname = hostname.to_string();
-    }
+    data.hostname = normalize_hostname(data.hostname);
 
     let realms = match remote_type {
         RemoteType::Pve => list_realms(data.hostname.clone(), data.fingerprint.clone()).await?,
@@ -234,6 +226,20 @@ impl Component for PdmWizardPageConnect {
     }
 }
 
+fn normalize_hostname(hostname: String) -> String {
+    let mut result = hostname;
+    if let Some(hostname) = result.strip_prefix("http://") {
+        result = hostname.to_string();
+    }
+    if let Some(hostname) = result.strip_prefix("https://") {
+        result = hostname.to_string();
+    }
+    if let Some(hostname) = result.strip_suffix("/") {
+        result = hostname.to_string();
+    }
+    result
+}
+
 impl Into<VNode> for WizardPageConnect {
     fn into(self) -> VNode {
         let comp = VComp::new::<PdmWizardPageConnect>(Rc::new(self), None);
-- 
2.39.5





More information about the pdm-devel mailing list