Explorar o código

URL encoded resource names

Tim Jones hai 1 mes
pai
achega
3f7136d295
Modificáronse 28 ficheiros con 59 adicións e 59 borrados
  1. 3 3
      RackPeek.Web.Viewer/Pages/Home.razor
  2. 3 3
      RackPeek.Web/Components/Pages/Home.razor
  3. 3 3
      Shared.Rcl/AccessPoints/AccessPointCardComponent.razor
  4. 1 1
      Shared.Rcl/AccessPoints/AccessPointsListPage.razor
  5. 2 2
      Shared.Rcl/Components/HardwareDependencyTreeComponent.razor
  6. 3 3
      Shared.Rcl/Components/TagPage.razor
  7. 3 3
      Shared.Rcl/Desktops/DesktopCardComponent.razor
  8. 1 1
      Shared.Rcl/Desktops/DesktopsListPage.razor
  9. 3 3
      Shared.Rcl/Firewalls/FirewallCardComponent.razor
  10. 1 1
      Shared.Rcl/Firewalls/FirewallListPage.razor
  11. 1 1
      Shared.Rcl/Hardware/HardwareDetailsPage.razor
  12. 3 3
      Shared.Rcl/Hardware/HardwareTreePage.razor
  13. 3 3
      Shared.Rcl/Laptops/LaptopCardComponent.razor
  14. 1 1
      Shared.Rcl/Laptops/LaptopsListPage.razor
  15. 3 3
      Shared.Rcl/Routers/RouterCardComponent.razor
  16. 1 1
      Shared.Rcl/Routers/RouterListPage.razor
  17. 3 3
      Shared.Rcl/Servers/ServerCardComponent.razor
  18. 1 1
      Shared.Rcl/Servers/ServersListPage.razor
  19. 4 4
      Shared.Rcl/Services/ServiceCardComponent.razor
  20. 1 1
      Shared.Rcl/Services/ServicesListPage.razor
  21. 3 3
      Shared.Rcl/Switches/SwitchCardComponent.razor
  22. 1 1
      Shared.Rcl/Switches/SwitchListPage.razor
  23. 4 4
      Shared.Rcl/Systems/SystemCardComponent.razor
  24. 1 1
      Shared.Rcl/Systems/SystemDependencyTreeComponent.razor
  25. 1 1
      Shared.Rcl/Systems/SystemsDetailsPage.razor
  26. 1 1
      Shared.Rcl/Systems/SystemsListPage.razor
  27. 3 3
      Shared.Rcl/Ups/UpsCardComponent.razor
  28. 1 1
      Shared.Rcl/Ups/UpsListPage.razor

+ 3 - 3
RackPeek.Web.Viewer/Pages/Home.razor

@@ -112,7 +112,7 @@
                             @foreach (var (kind, count) in _hardware.HardwareByKind.OrderByDescending(x => x.Value))
                             {
                                 var pluralKind = Resource.KindToPlural(kind);
-                                <NavLink href="@($"{pluralKind}/list")" class="block">
+                                <NavLink href="@($"{Uri.EscapeDataString(pluralKind)}/list")" class="block">
                                     <li class="text-zinc-500 hover:text-emerald-300">
                                         └─ @pluralKind (@count)
                                     </li>
@@ -143,7 +143,7 @@
                                 @foreach (var (type, count) in _system.SystemsByType.OrderByDescending(x => x.Value))
                                 {
                                     <li class="text-zinc-500 hover:text-emerald-300">
-                                        <NavLink href="@($"systems/list?type={type}")" class="block">
+                                        <NavLink href="@($"systems/list?type={Uri.EscapeDataString(type)}")" class="block">
                                             └─ @type (@count)
                                         </NavLink>
                                     </li>
@@ -158,7 +158,7 @@
                                 @foreach (var (os, count) in _system.SystemsByOs.OrderByDescending(x => x.Value))
                                 {
                                     <li class="text-zinc-500 hover:text-emerald-300">
-                                        <NavLink href="@($"systems/list?os={os}")" class="block">
+                                        <NavLink href="@($"systems/list?os={Uri.EscapeDataString(os)}")" class="block">
                                             └─ @os (@count)
                                         </NavLink>
                                     </li>

+ 3 - 3
RackPeek.Web/Components/Pages/Home.razor

@@ -114,7 +114,7 @@
                             @foreach (var (kind, count) in _hardware.HardwareByKind.OrderByDescending(x => x.Value))
                             {
                                 var pluralKind = Resource.KindToPlural(kind);
-                                <NavLink href="@($"/{pluralKind}/list")" class="block">
+                                <NavLink href="@($"/{Uri.EscapeDataString(pluralKind)}/list")" class="block">
                                     <li class="text-zinc-500 hover:text-emerald-300">
                                         └─ @pluralKind (@count)
                                     </li>
@@ -145,7 +145,7 @@
                                 @foreach (var (type, count) in _system.SystemsByType.OrderByDescending(x => x.Value))
                                 {
                                     <li class="text-zinc-500 hover:text-emerald-300">
-                                        <NavLink href="@($"systems/list?type={type}")" class="block">
+                                        <NavLink href="@($"systems/list?type={Uri.EscapeDataString(type)}")" class="block">
                                             └─ @type (@count)
                                         </NavLink>
                                     </li>
@@ -160,7 +160,7 @@
                                 @foreach (var (os, count) in _system.SystemsByOs.OrderByDescending(x => x.Value))
                                 {
                                     <li class="text-zinc-500 hover:text-emerald-300">
-                                        <NavLink href="@($"systems/list?os={os}")" class="block">
+                                        <NavLink href="@($"systems/list?os={Uri.EscapeDataString(os)}")" class="block">
                                             └─ @os (@count)
                                         </NavLink>
                                     </li>

+ 3 - 3
Shared.Rcl/AccessPoints/AccessPointCardComponent.razor

@@ -11,7 +11,7 @@
     <div class="flex justify-between items-center mb-3">
 
         <div class="text-zinc-100 hover:text-emerald-300">
-            <NavLink href="@($"resources/hardware/{AccessPoint.Name}")"
+            <NavLink href="@($"resources/hardware/{Uri.EscapeDataString(AccessPoint.Name)}")"
                      class="block"
                      data-testid="@($"open-accesspoint-{AccessPoint.Name.Replace(" ", "-")}-link")">
                 @AccessPoint.Name
@@ -225,7 +225,7 @@
     async Task HandleRenameSubmit(string newName)
     {
         await RenameUseCase.ExecuteAsync(AccessPoint.Name, newName);
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
     void OpenClone()
@@ -236,7 +236,7 @@
     async Task HandleCloneSubmit(string newName)
     {
         await CloneUseCase.ExecuteAsync(AccessPoint.Name, newName);
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
     public class AccessPointEditModel

+ 1 - 1
Shared.Rcl/AccessPoints/AccessPointsListPage.razor

@@ -20,7 +20,7 @@
 
     private Task NavigateToNewResource(string name)
     {
-        Nav.NavigateTo($"resources/hardware/{name}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(name)}");
         return Task.CompletedTask;
     }
 

+ 2 - 2
Shared.Rcl/Components/HardwareDependencyTreeComponent.razor

@@ -16,7 +16,7 @@ else
                 <div class="space-y-2">
 
                     <!-- System -->
-                    <NavLink href="@($"resources/systems/{systemTree.System.Name}")" class="block">
+                    <NavLink href="@($"resources/systems/{Uri.EscapeDataString(systemTree.System.Name)}")" class="block">
                         <div class="border border-zinc-800 rounded bg-zinc-900 p-3">
                             <div class="text-zinc-100">
                                 @systemTree.System.Name
@@ -34,7 +34,7 @@ else
                             @foreach (var service in systemTree.Services)
                             {
                                 var url = service.NetworkString();
-                                <NavLink href="@($"resources/services/{service.Name}")" class="block">
+                                <NavLink href="@($"resources/services/{Uri.EscapeDataString(service.Name)}")" class="block">
                                     <div class="border border-zinc-800 rounded bg-zinc-900 p-2 hover:border-zinc-700">
 
                                         <div class="text-zinc-200 text-sm">

+ 3 - 3
Shared.Rcl/Components/TagPage.razor

@@ -66,15 +66,15 @@
     {
         if (resource.Kind == SystemResource.KindLabel)
         {
-            return $"resources/systems/{resource.Name}";
+            return $"resources/systems/{Uri.EscapeDataString(resource.Name)}";
         }
 
         if (resource.Kind == Service.KindLabel)
         {
-            return $"resources/services/{resource.Name}";
+            return $"resources/services/{Uri.EscapeDataString(resource.Name)}";
         }
 
-        return $"resources/hardware/{resource.Name}";
+        return $"resources/hardware/{Uri.EscapeDataString(resource.Name)}";
     }
 
 }

+ 3 - 3
Shared.Rcl/Desktops/DesktopCardComponent.razor

@@ -29,7 +29,7 @@
     <div class="flex justify-between items-center mb-3">
 
         <div class="text-zinc-100 hover:text-emerald-300">
-            <NavLink href="@($"resources/hardware/{Desktop.Name}")"
+            <NavLink href="@($"resources/hardware/{Uri.EscapeDataString(Desktop.Name)}")"
                      class="block"
                      data-testid=@($"desktop-item-{Desktop.Name.Replace(" ", "-")}-link")>
                 @Desktop.Name
@@ -558,7 +558,7 @@
     async Task HandleRenameSubmit(string newName)
     {
         await RenameUseCase.ExecuteAsync(Desktop.Name, newName);
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
 }
@@ -576,7 +576,7 @@
     {
         await CloneUseCase.ExecuteAsync(Desktop.Name, newName);
 
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
 }

+ 1 - 1
Shared.Rcl/Desktops/DesktopsListPage.razor

@@ -20,7 +20,7 @@
 
     private Task NavigateToNewResource(string name)
     {
-        Nav.NavigateTo($"resources/hardware/{name}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(name)}");
         return Task.CompletedTask;
     }
 

+ 3 - 3
Shared.Rcl/Firewalls/FirewallCardComponent.razor

@@ -17,7 +17,7 @@
     <div class="flex justify-between items-center mb-3">
 
         <div class="text-zinc-100 hover:text-emerald-300">
-            <NavLink href="@($"resources/hardware/{Firewall.Name}")"
+            <NavLink href="@($"resources/hardware/{Uri.EscapeDataString(Firewall.Name)}")"
                      class="block"
                      data-testid=@($"firewall-item-{Firewall.Name.Replace(" ", "-")}-link")>
                 @Firewall.Name
@@ -368,7 +368,7 @@
     async Task HandleRenameSubmit(string newName)
     {
         await RenameUseCase.ExecuteAsync(Firewall.Name, newName);
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
 }
@@ -386,7 +386,7 @@
     {
         await CloneUseCase.ExecuteAsync(Firewall.Name, newName);
 
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
 }

+ 1 - 1
Shared.Rcl/Firewalls/FirewallListPage.razor

@@ -20,7 +20,7 @@
 
     private Task NavigateToNewResource(string name)
     {
-        Nav.NavigateTo($"resources/hardware/{name}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(name)}");
         return Task.CompletedTask;
     }
 

+ 1 - 1
Shared.Rcl/Hardware/HardwareDetailsPage.razor

@@ -133,7 +133,7 @@
 
     private Task NavigateToNewResource(string serverName)
     {
-        Nav.NavigateTo($"resources/systems/{serverName}");
+        Nav.NavigateTo($"resources/systems/{Uri.EscapeDataString(serverName)}");
         return Task.CompletedTask;
     }
 

+ 3 - 3
Shared.Rcl/Hardware/HardwareTreePage.razor

@@ -65,7 +65,7 @@
                             <li data-testid=@($"hardware-item-{hardware.HardwareName}")>
 
                                 <!-- Hardware -->
-                                <NavLink href="@($"resources/hardware/{hardware.HardwareName}")"
+                                <NavLink href="@($"resources/hardware/{Uri.EscapeDataString(hardware.HardwareName)}")"
                                          class="block"
                                          data-testid=@($"hardware-link-{hardware.HardwareName}")>
 
@@ -88,7 +88,7 @@
                                             <li data-testid=@($"system-item-{system.SystemName}")>
 
                                                 <!-- System -->
-                                                <NavLink href="@($"resources/systems/{system.SystemName}")"
+                                                <NavLink href="@($"resources/systems/{Uri.EscapeDataString(system.SystemName)}")"
                                                          class="block"
                                                          data-testid=@($"system-link-{system.SystemName}")>
 
@@ -106,7 +106,7 @@
                                                         @foreach (var service in system.Services.OrderBy(s => s))
                                                         {
                                                             <li data-testid=@($"service-item-{service}")>
-                                                                <NavLink href="@($"resources/services/{service}")"
+                                                                <NavLink href="@($"resources/services/{Uri.EscapeDataString(service)}")"
                                                                          class="block hover:text-emerald-300"
                                                                          data-testid=@($"service-link-{service}")>
                                                                     > @service

+ 3 - 3
Shared.Rcl/Laptops/LaptopCardComponent.razor

@@ -26,7 +26,7 @@
     <div class="flex justify-between items-center mb-3">
 
         <div class="text-zinc-100 hover:text-emerald-300">
-            <NavLink href="@($"resources/hardware/{Laptop.Name}")"
+            <NavLink href="@($"resources/hardware/{Uri.EscapeDataString(Laptop.Name)}")"
                      class="block"
                      data-testid=@($"laptop-item-{Laptop.Name.Replace(" ", "-")}-link")>
                 @Laptop.Name
@@ -467,7 +467,7 @@
     async Task HandleRenameSubmit(string newName)
     {
         await RenameUseCase.ExecuteAsync(Laptop.Name, newName);
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
 }
@@ -485,7 +485,7 @@
     {
         await CloneUseCase.ExecuteAsync(Laptop.Name, newName);
 
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
 }

+ 1 - 1
Shared.Rcl/Laptops/LaptopsListPage.razor

@@ -20,7 +20,7 @@
 
     private Task NavigateToNewResource(string name)
     {
-        Nav.NavigateTo($"resources/hardware/{name}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(name)}");
         return Task.CompletedTask;
     }
 

+ 3 - 3
Shared.Rcl/Routers/RouterCardComponent.razor

@@ -19,7 +19,7 @@
     <div class="flex justify-between items-center mb-3">
 
         <div class="text-zinc-100 hover:text-emerald-300">
-            <NavLink href="@($"resources/hardware/{Router.Name}")"
+            <NavLink href="@($"resources/hardware/{Uri.EscapeDataString(Router.Name)}")"
                      class="block"
                      data-testid=@($"router-item-{Router.Name.Replace(" ", "-")}-link")>
                 @Router.Name
@@ -370,7 +370,7 @@
     async Task HandleRenameSubmit(string newName)
     {
         await RenameUseCase.ExecuteAsync(Router.Name, newName);
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
 }
@@ -388,7 +388,7 @@
     {
         await CloneUseCase.ExecuteAsync(Router.Name, newName);
 
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
 }

+ 1 - 1
Shared.Rcl/Routers/RouterListPage.razor

@@ -20,7 +20,7 @@
 
     private Task NavigateToNewResource(string name)
     {
-        Nav.NavigateTo($"resources/hardware/{name}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(name)}");
         return Task.CompletedTask;
     }
 

+ 3 - 3
Shared.Rcl/Servers/ServerCardComponent.razor

@@ -32,7 +32,7 @@
      data-testid=@($"server-item-{Server.Name.Replace(" ", "-")}")>
     <div class="flex justify-between items-center mb-3">
         <div class="text-zinc-100 hover:text-emerald-300">
-            <NavLink href="@($"resources/hardware/{Server.Name}")" class="block"
+            <NavLink href="@($"resources/hardware/{Uri.EscapeDataString(Server.Name)}")" class="block"
                      data-testid=@($"server-item-{Server.Name.Replace(" ", "-")}-link")>
                 @Server.Name
             </NavLink>
@@ -595,7 +595,7 @@
     async Task HandleRenameSubmit(string newName)
     {
         await RenameUseCase.ExecuteAsync(Server.Name, newName);
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
 }
@@ -613,7 +613,7 @@
     {
         await CloneUseCase.ExecuteAsync(Server.Name, newName);
 
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
 }

+ 1 - 1
Shared.Rcl/Servers/ServersListPage.razor

@@ -20,7 +20,7 @@
 
     private Task NavigateToNewResource(string name)
     {
-        Nav.NavigateTo($"resources/hardware/{name}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(name)}");
         return Task.CompletedTask;
     }
 

+ 4 - 4
Shared.Rcl/Services/ServiceCardComponent.razor

@@ -8,7 +8,7 @@
 <div class="border border-zinc-800 rounded p-4 bg-zinc-900"
      data-testid=@($"service-item-{Service.Name.Replace(" ", "-")}")>
     <div class="flex justify-between items-center mb-3">
-        <NavLink href="@($"resources/services/{Service.Name}")" class="block"
+        <NavLink href="@($"resources/services/{Uri.EscapeDataString(Service.Name)}")" class="block"
                  data-testid=@($"service-item-{Service.Name.Replace(" ", "-")}-link")>
 
             <div class="text-zinc-100 hover:text-emerald-300">
@@ -179,7 +179,7 @@
             }
             else if (!string.IsNullOrWhiteSpace(Service.RunsOn))
             {
-                <NavLink href="@($"resources/systems/{Service.RunsOn}")"
+                <NavLink href="@($"resources/systems/{Uri.EscapeDataString(Service.RunsOn)}")"
                          data-testid="service-runson-link"
                          class="text-emerald-400">
                     @Service.RunsOn
@@ -270,7 +270,7 @@
     {
         await CloneUseCase.ExecuteAsync(Service.Name, newName);
 
-        Nav.NavigateTo($"resources/services/{newName}");
+        Nav.NavigateTo($"resources/services/{Uri.EscapeDataString(newName)}");
     }
 
 }
@@ -364,7 +364,7 @@
     async Task HandleRenameSubmit(string newName)
     {
         await RenameUseCase.ExecuteAsync(Service.Name, newName);
-        Nav.NavigateTo($"resources/services/{newName}");
+        Nav.NavigateTo($"resources/services/{Uri.EscapeDataString(newName)}");
     }
 
 }

+ 1 - 1
Shared.Rcl/Services/ServicesListPage.razor

@@ -24,7 +24,7 @@
 
     private Task NavigateToNewResource(string name)
     {
-        Nav.NavigateTo($"resources/services/{name}");
+        Nav.NavigateTo($"resources/services/{Uri.EscapeDataString(name)}");
         return Task.CompletedTask;
     }
 

+ 3 - 3
Shared.Rcl/Switches/SwitchCardComponent.razor

@@ -17,7 +17,7 @@
     <div class="flex justify-between items-center mb-3">
 
         <div class="text-zinc-100 hover:text-emerald-300">
-            <NavLink href="@($"resources/hardware/{Switch.Name}")"
+            <NavLink href="@($"resources/hardware/{Uri.EscapeDataString(Switch.Name)}")"
                      class="block"
                      data-testid=@($"switch-item-{Switch.Name.Replace(" ", "-")}-link")>
                 @Switch.Name
@@ -369,7 +369,7 @@
     async Task HandleRenameSubmit(string newName)
     {
         await RenameUseCase.ExecuteAsync(Switch.Name, newName);
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
 }
@@ -387,7 +387,7 @@
     {
         await CloneUseCase.ExecuteAsync(Switch.Name, newName);
 
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
 }

+ 1 - 1
Shared.Rcl/Switches/SwitchListPage.razor

@@ -20,7 +20,7 @@
 
     private Task NavigateToNewResource(string name)
     {
-        Nav.NavigateTo($"resources/hardware/{name}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(name)}");
         return Task.CompletedTask;
     }
 

+ 4 - 4
Shared.Rcl/Systems/SystemCardComponent.razor

@@ -15,7 +15,7 @@
 <div class="border border-zinc-800 rounded p-4 bg-zinc-900"
      data-testid=@($"system-item-{System.Name.Replace(" ", "-")}")>
     <div class="flex justify-between items-center mb-3">
-        <NavLink href="@($"resources/systems/{System.Name}")" class="block"
+        <NavLink href="@($"resources/systems/{Uri.EscapeDataString(System.Name)}")" class="block"
                  data-testid=@($"system-item-{System.Name.Replace(" ", "-")}-link")>
 
             <div class="text-zinc-100 hover:text-emerald-300">
@@ -188,7 +188,7 @@
             }
             else if (!string.IsNullOrWhiteSpace(System.RunsOn))
             {
-                <NavLink href="@($"resources/hardware/{System.RunsOn}")"
+                <NavLink href="@($"resources/hardware/{Uri.EscapeDataString(System.RunsOn)}")"
                          class="text-emerald-400 text-sm">
                     @System.RunsOn
                 </NavLink>
@@ -436,7 +436,7 @@
     {
         await CloneUseCase.ExecuteAsync(System.Name, newName);
 
-        Nav.NavigateTo($"resources/systems/{newName}");
+        Nav.NavigateTo($"resources/systems/{Uri.EscapeDataString(newName)}");
     }
 
 }
@@ -453,7 +453,7 @@
     async Task HandleRenameSubmit(string newName)
     {
         await RenameUseCase.ExecuteAsync(System.Name, newName);
-        Nav.NavigateTo($"resources/systems/{newName}");
+        Nav.NavigateTo($"resources/systems/{Uri.EscapeDataString(newName)}");
     }
 
 }

+ 1 - 1
Shared.Rcl/Systems/SystemDependencyTreeComponent.razor

@@ -14,7 +14,7 @@ else
             @foreach (var service in Tree.Services)
             {
                 var url = service.NetworkString();
-                <NavLink href="@($"resources/services/{service.Name}")" class="block">
+                <NavLink href="@($"resources/services/{Uri.EscapeDataString(service.Name)}")" class="block">
                     <div class="border border-zinc-800 rounded bg-zinc-900 p-2 hover:border-zinc-700">
 
                         <div class="text-zinc-200 text-sm">

+ 1 - 1
Shared.Rcl/Systems/SystemsDetailsPage.razor

@@ -91,7 +91,7 @@
 
     private Task NavigateToNewResource(string serverName)
     {
-        Nav.NavigateTo($"resources/services/{serverName}");
+        Nav.NavigateTo($"resources/services/{Uri.EscapeDataString(serverName)}");
         return Task.CompletedTask;
     }
 

+ 1 - 1
Shared.Rcl/Systems/SystemsListPage.razor

@@ -105,7 +105,7 @@
 
     private Task NavigateToNewResource(string name)
     {
-        Nav.NavigateTo($"resources/systems/{name}");
+        Nav.NavigateTo($"resources/systems/{Uri.EscapeDataString(name)}");
         return Task.CompletedTask;
     }
 }

+ 3 - 3
Shared.Rcl/Ups/UpsCardComponent.razor

@@ -12,7 +12,7 @@
     <div class="flex justify-between items-center mb-3">
 
         <div class="text-zinc-100 hover:text-emerald-300">
-            <NavLink href="@($"resources/hardware/{Ups.Name}")"
+            <NavLink href="@($"resources/hardware/{Uri.EscapeDataString(Ups.Name)}")"
                      class="block"
                      data-testid=@($"ups-item-{Ups.Name.Replace(" ", "-")}-link")>
                 @Ups.Name
@@ -240,7 +240,7 @@
     async Task HandleRenameSubmit(string newName)
     {
         await RenameUseCase.ExecuteAsync(Ups.Name, newName);
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
 }
@@ -258,7 +258,7 @@
     {
         await CloneUseCase.ExecuteAsync(Ups.Name, newName);
 
-        Nav.NavigateTo($"resources/hardware/{newName}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(newName)}");
     }
 
 }

+ 1 - 1
Shared.Rcl/Ups/UpsListPage.razor

@@ -20,7 +20,7 @@
 
     private Task NavigateToNewResource(string name)
     {
-        Nav.NavigateTo($"resources/hardware/{name}");
+        Nav.NavigateTo($"resources/hardware/{Uri.EscapeDataString(name)}");
         return Task.CompletedTask;
     }