feat(07-09): add guest badge, warning icon, and ObjectType column to DataGrid

- Convert User column to DataGridTemplateColumn with orange 'Guest' pill badge on IsExternalUser=true
- Add ObjectType DataGridTextColumn between Object and Permission Level
- Convert Permission Level column to DataGridTemplateColumn with red warning icon on IsHighPrivilege=true
This commit is contained in:
Dev
2026-04-07 13:14:29 +02:00
parent 855e4df49b
commit 33833dce5d

View File

@@ -217,10 +217,54 @@
</GroupStyle> </GroupStyle>
</DataGrid.GroupStyle> </DataGrid.GroupStyle>
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="User" Binding="{Binding UserLogin}" Width="160" /> <DataGridTemplateColumn Header="User" Width="180">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding UserLogin}" VerticalAlignment="Center" />
<Border Background="#F39C12" CornerRadius="3" Padding="4,1" Margin="6,0,0,0"
VerticalAlignment="Center">
<Border.Style>
<Style TargetType="Border">
<Setter Property="Visibility" Value="Collapsed" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsExternalUser}" Value="True">
<Setter Property="Visibility" Value="Visible" />
</DataTrigger>
</Style.Triggers>
</Style>
</Border.Style>
<TextBlock Text="Guest" FontSize="10" Foreground="White" FontWeight="SemiBold" />
</Border>
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="Site" Binding="{Binding SiteTitle}" Width="120" /> <DataGridTextColumn Header="Site" Binding="{Binding SiteTitle}" Width="120" />
<DataGridTextColumn Header="Object" Binding="{Binding ObjectTitle}" Width="140" /> <DataGridTextColumn Header="Object" Binding="{Binding ObjectTitle}" Width="140" />
<DataGridTextColumn Header="Permission Level" Binding="{Binding PermissionLevel}" Width="120" /> <DataGridTextColumn Header="Object Type" Binding="{Binding ObjectType}" Width="90" />
<DataGridTemplateColumn Header="Permission Level" Width="140">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="⚠" Foreground="#E74C3C" Margin="0,0,4,0"
FontSize="12" VerticalAlignment="Center">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Setter Property="Visibility" Value="Collapsed" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsHighPrivilege}" Value="True">
<Setter Property="Visibility" Value="Visible" />
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
<TextBlock Text="{Binding PermissionLevel}" VerticalAlignment="Center" />
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Header="Access Type" Width="110"> <DataGridTemplateColumn Header="Access Type" Width="110">
<DataGridTemplateColumn.CellTemplate> <DataGridTemplateColumn.CellTemplate>
<DataTemplate> <DataTemplate>