Skip to content

Commit 85728a7

Browse files
authored
Remove authorization check for menu (#3347)
* Remove authorization check for menu * Fix indentation
1 parent 4ab1606 commit 85728a7

1 file changed

Lines changed: 84 additions & 86 deletions

File tree

src/IoTHub.Portal.Client/Shared/NavMenu.razor

Lines changed: 84 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -6,112 +6,110 @@
66

77
@implements IDisposable
88

9-
<AuthorizedContent IsLoading="@IsLoading" IsAuthorized="@IsAuthorized">
10-
<MudNavMenu>
11-
<MudNavLink Href="/" Icon="@Icons.Material.Filled.Dashboard">Dashboard</MudNavLink>
12-
13-
<MudNavGroup Title="Devices" Icon="@Icons.Material.Outlined.Memory"
14-
Expanded="@LayoutService.GetNavGroupExpanded("Devices")"
15-
ExpandedChanged="@(b => LayoutService.SetNavGroupExpanded("Devices", b))">
16-
@if (portalPermissions.Contains(PortalPermissions.DeviceRead))
17-
{
18-
<MudPaper Class="d-flex align-center flex-grow-1 gap-4" Elevation="0">
19-
<MudNavLink Href="/devices">Device List</MudNavLink>
20-
@if (portalPermissions.Contains(PortalPermissions.DeviceWrite))
21-
{
22-
<MudPaper Class="py-4 d-flex flex-1 mud-theme-secondary" />
23-
<MudTooltip Text="Add device">
24-
<MudIconButton id="addDeviceButton"
25-
OnClick="AddDevice"
26-
Color="Color.Secondary"
27-
Icon="@Icons.Material.Filled.AddCircle" Size="Size.Small" />
28-
</MudTooltip>
29-
}
30-
</MudPaper>
31-
}
32-
else
33-
{
34-
<MudNavLink Disabled="true">Devices</MudNavLink>
35-
}
36-
37-
@if (portalPermissions.Contains(PortalPermissions.ModelRead))
38-
{
39-
<MudPaper Class="d-flex align-center flex-grow-1 gap-4" Elevation="0">
40-
<MudNavLink Href="/device-models">Device Models</MudNavLink>
9+
<MudNavMenu>
10+
<MudNavLink Href="/" Icon="@Icons.Material.Filled.Dashboard">Dashboard</MudNavLink>
11+
12+
<MudNavGroup Title="Devices" Icon="@Icons.Material.Outlined.Memory"
13+
Expanded="@LayoutService.GetNavGroupExpanded("Devices")"
14+
ExpandedChanged="@(b => LayoutService.SetNavGroupExpanded("Devices", b))">
15+
@if (portalPermissions.Contains(PortalPermissions.DeviceRead))
16+
{
17+
<MudPaper Class="d-flex align-center flex-grow-1 gap-4" Elevation="0">
18+
<MudNavLink Href="/devices">Device List</MudNavLink>
19+
@if (portalPermissions.Contains(PortalPermissions.DeviceWrite))
20+
{
21+
<MudPaper Class="py-4 d-flex flex-1 mud-theme-secondary" />
22+
<MudTooltip Text="Add device">
23+
<MudIconButton id="addDeviceButton"
24+
OnClick="AddDevice"
25+
Color="Color.Secondary"
26+
Icon="@Icons.Material.Filled.AddCircle" Size="Size.Small" />
27+
</MudTooltip>
28+
}
29+
</MudPaper>
30+
}
31+
else
32+
{
33+
<MudNavLink Disabled="true">Devices</MudNavLink>
34+
}
35+
36+
@if (portalPermissions.Contains(PortalPermissions.ModelRead))
37+
{
38+
<MudPaper Class="d-flex align-center flex-grow-1 gap-4" Elevation="0">
39+
<MudNavLink Href="/device-models">Device Models</MudNavLink>
4140
@if (portalPermissions.Contains(PortalPermissions.ModelWrite))
4241
{
43-
<MudPaper Class="py-4 d-flex flex-1 mud-theme-secondary"/>
42+
<MudPaper Class="py-4 d-flex flex-1 mud-theme-secondary" />
4443
<MudTooltip Text="Add device model">
4544
<MudIconButton id="addDeviceModelButton"
4645
OnClick="AddDeviceModel"
4746
Color="Color.Secondary"
48-
Icon="@Icons.Material.Filled.AddCircle" Size="Size.Small"/>
47+
Icon="@Icons.Material.Filled.AddCircle" Size="Size.Small" />
4948
</MudTooltip>
5049
}
51-
</MudPaper>
52-
}
53-
else
54-
{
55-
<MudNavLink Disabled="true">Devices Models</MudNavLink>
56-
}
57-
58-
@if (Portal.CloudProvider.Equals(CloudProviders.Azure) && portalPermissions.Contains(PortalPermissions.DeviceConfigurationRead))
59-
{
60-
<MudPaper Class="d-flex align-center flex-grow-1 gap-4" Elevation="0">
61-
<MudNavLink Href="/device-configurations/">Configurations</MudNavLink>
50+
</MudPaper>
51+
}
52+
else
53+
{
54+
<MudNavLink Disabled="true">Devices Models</MudNavLink>
55+
}
56+
57+
@if (Portal.CloudProvider.Equals(CloudProviders.Azure) && portalPermissions.Contains(PortalPermissions.DeviceConfigurationRead))
58+
{
59+
<MudPaper Class="d-flex align-center flex-grow-1 gap-4" Elevation="0">
60+
<MudNavLink Href="/device-configurations/">Configurations</MudNavLink>
6261
@if (portalPermissions.Contains(PortalPermissions.DeviceConfigurationWrite))
6362
{
64-
<MudPaper Class="py-4 d-flex flex-1 mud-theme-secondary"/>
63+
<MudPaper Class="py-4 d-flex flex-1 mud-theme-secondary" />
6564
<MudTooltip Text="Add device configuration">
6665
<MudIconButton id="addDeviceConfigurationButton"
6766
OnClick="AddDeviceConfig"
6867
Color="Color.Secondary"
69-
Icon="@Icons.Material.Filled.AddCircle" Size="Size.Small"/>
68+
Icon="@Icons.Material.Filled.AddCircle" Size="Size.Small" />
7069
</MudTooltip>
7170
}
72-
</MudPaper>
73-
}
74-
else
75-
{
76-
<MudNavLink Disabled="true">Configurations</MudNavLink>
77-
}
78-
79-
</MudNavGroup>
71+
</MudPaper>
72+
}
73+
else
74+
{
75+
<MudNavLink Disabled="true">Configurations</MudNavLink>
76+
}
8077

81-
<MudNavGroup Title="IoT Edge" Icon="@Icons.Material.Outlined.DeveloperBoard"
82-
Expanded="@LayoutService.GetNavGroupExpanded("IoTEdge")"
83-
ExpandedChanged="@(b => LayoutService.SetNavGroupExpanded("IoTEdge", b))">
84-
<MudNavLink Href="/edge/devices" Disabled="@(!portalPermissions.Contains(PortalPermissions.EdgeDeviceRead))">Devices</MudNavLink>
85-
<MudNavLink Href="/edge/models" Disabled="@(!portalPermissions.Contains(PortalPermissions.EdgeModelRead))">Edge Models</MudNavLink>
86-
</MudNavGroup>
78+
</MudNavGroup>
8779

88-
<MudNavGroup Title="Site Management" Icon="@Icons.Material.Outlined.Business"
89-
Expanded="@LayoutService.GetNavGroupExpanded("Site Management")"
90-
ExpandedChanged="@(b => LayoutService.SetNavGroupExpanded("Site Management", b))">
91-
<MudNavLink Href="/layer" Disabled="@(!portalPermissions.Contains(PortalPermissions.LayerRead))">Layers</MudNavLink>
92-
<MudNavLink Href="/planning" Disabled="@(!portalPermissions.Contains(PortalPermissions.PlanningRead))">Plannings</MudNavLink>
93-
</MudNavGroup>
80+
<MudNavGroup Title="IoT Edge" Icon="@Icons.Material.Outlined.DeveloperBoard"
81+
Expanded="@LayoutService.GetNavGroupExpanded("IoTEdge")"
82+
ExpandedChanged="@(b => LayoutService.SetNavGroupExpanded("IoTEdge", b))">
83+
<MudNavLink Href="/edge/devices" Disabled="@(!portalPermissions.Contains(PortalPermissions.EdgeDeviceRead))">Devices</MudNavLink>
84+
<MudNavLink Href="/edge/models" Disabled="@(!portalPermissions.Contains(PortalPermissions.EdgeModelRead))">Edge Models</MudNavLink>
85+
</MudNavGroup>
9486

95-
@if (Portal.IsLoRaSupported)
96-
{
97-
<MudNavGroup Title="LoRaWAN" Icon="@Icons.Material.Outlined.WifiTethering"
98-
Expanded="@LayoutService.GetNavGroupExpanded("LoRaWAN")"
99-
ExpandedChanged="@(b => LayoutService.SetNavGroupExpanded("LoRaWAN", b))">
100-
<MudNavLink Href="/lorawan/concentrators" Disabled="@(!portalPermissions.Contains(PortalPermissions.ConcentratorRead))">
101-
Concentrators
102-
</MudNavLink>
103-
</MudNavGroup>
104-
}
87+
<MudNavGroup Title="Site Management" Icon="@Icons.Material.Outlined.Business"
88+
Expanded="@LayoutService.GetNavGroupExpanded("Site Management")"
89+
ExpandedChanged="@(b => LayoutService.SetNavGroupExpanded("Site Management", b))">
90+
<MudNavLink Href="/layer" Disabled="@(!portalPermissions.Contains(PortalPermissions.LayerRead))">Layers</MudNavLink>
91+
<MudNavLink Href="/planning" Disabled="@(!portalPermissions.Contains(PortalPermissions.PlanningRead))">Plannings</MudNavLink>
92+
</MudNavGroup>
10593

106-
<MudNavGroup Title="Settings" Icon="@Icons.Material.Outlined.Settings"
107-
Expanded="@LayoutService.GetNavGroupExpanded("Settings")"
108-
ExpandedChanged="@(b => LayoutService.SetNavGroupExpanded("Settings", b))">
109-
<MudNavLink Href="/settings/device-tag" Disabled="@(!portalPermissions.Contains(PortalPermissions.DeviceTagRead))">Device Tags</MudNavLink>
110-
<MudNavLink Href="/roles" Disabled="@(!portalPermissions.Contains(PortalPermissions.RoleRead))">Roles</MudNavLink>
111-
<MudNavLink Href="/users" Disabled="@(!portalPermissions.Contains(PortalPermissions.UserRead))">Users</MudNavLink>
94+
@if (Portal.IsLoRaSupported)
95+
{
96+
<MudNavGroup Title="LoRaWAN" Icon="@Icons.Material.Outlined.WifiTethering"
97+
Expanded="@LayoutService.GetNavGroupExpanded("LoRaWAN")"
98+
ExpandedChanged="@(b => LayoutService.SetNavGroupExpanded("LoRaWAN", b))">
99+
<MudNavLink Href="/lorawan/concentrators" Disabled="@(!portalPermissions.Contains(PortalPermissions.ConcentratorRead))">
100+
Concentrators
101+
</MudNavLink>
112102
</MudNavGroup>
113-
</MudNavMenu>
114-
</AuthorizedContent>
103+
}
104+
105+
<MudNavGroup Title="Settings" Icon="@Icons.Material.Outlined.Settings"
106+
Expanded="@LayoutService.GetNavGroupExpanded("Settings")"
107+
ExpandedChanged="@(b => LayoutService.SetNavGroupExpanded("Settings", b))">
108+
<MudNavLink Href="/settings/device-tag" Disabled="@(!portalPermissions.Contains(PortalPermissions.DeviceTagRead))">Device Tags</MudNavLink>
109+
<MudNavLink Href="/roles" Disabled="@(!portalPermissions.Contains(PortalPermissions.RoleRead))">Roles</MudNavLink>
110+
<MudNavLink Href="/users" Disabled="@(!portalPermissions.Contains(PortalPermissions.UserRead))">Users</MudNavLink>
111+
</MudNavGroup>
112+
</MudNavMenu>
115113

116114
@code {
117115
protected override PortalPermissions[] RequiredPermissions { get; } = PortalPermissionsHelper.GetAllPermissions();
@@ -120,7 +118,7 @@
120118
private void AddDeviceModel() => NavigationManager.NavigateTo("/device-models/new");
121119
private void AddDeviceConfig() => NavigationManager.NavigateTo("/device-configurations/new");
122120

123-
private PortalPermissions[] portalPermissions;
121+
private PortalPermissions[] portalPermissions = { };
124122

125123
protected override async Task OnInitializedAsync()
126124
{

0 commit comments

Comments
 (0)