Files

226 lines
14 KiB
XML

<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Enterprise Admin Studio - Unified Infrastructure Management"
Height="840" Width="1360"
MinHeight="720" MinWidth="1100"
WindowStartupLocation="CenterScreen"
Background="{StaticResource BgDarkBrush}"
FontFamily="{StaticResource ModernFont}">
<Window.Resources>
<!-- Included via Application or MergedDictionaries -->
</Window.Resources>
<Grid>
<Grid.ColumnDefinitions>
<!-- Left Sidebar Navigation -->
<ColumnDefinition Width="260" />
<!-- Main Content Area -->
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<!-- ================= SIDEBAR ================= -->
<Border Grid.Column="0" Background="{StaticResource SidebarBgBrush}" BorderBrush="{StaticResource CardBorderBrush}" BorderThickness="0,0,1,0">
<Grid>
<Grid.RowDefinitions>
<!-- Brand / App Logo -->
<RowDefinition Height="80" />
<!-- Navigation Menu Items -->
<RowDefinition Height="*" />
<!-- Bottom System Info & Profile -->
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<!-- Brand Header -->
<StackPanel Grid.Row="0" Margin="20,18,20,10" VerticalAlignment="Center">
<StackPanel Orientation="Horizontal">
<Border Width="34" Height="34" Background="{StaticResource PrimaryAccentBrush}" CornerRadius="8" Margin="0,0,12,0">
<TextBlock Text="&#xE7F4;" FontFamily="{StaticResource IconFont}" FontSize="18" Foreground="White"
HorizontalAlignment="Center" VerticalAlignment="Center" />
</Border>
<StackPanel VerticalAlignment="Center">
<TextBlock Text="Admin Studio" FontSize="16" FontWeight="Bold" Foreground="{StaticResource TextPrimaryBrush}" />
<TextBlock Text="Enterprise v1.2" FontSize="11" Foreground="#60A5FA" FontWeight="SemiBold" />
</StackPanel>
</StackPanel>
</StackPanel>
<!-- Navigation List -->
<ScrollViewer Grid.Row="1" VerticalScrollBarVisibility="Auto">
<StackPanel Margin="6,10,6,0">
<TextBlock Text="CORE MANAGEMENT" FontSize="11" FontWeight="Bold" Foreground="#475569" Margin="18,12,0,8" />
<!-- 1. Dashboard -->
<RadioButton x:Name="NavDashboard" Style="{StaticResource NavButtonStyle}" IsChecked="True">
<StackPanel Orientation="Horizontal">
<TextBlock Text="&#xE80F;" FontFamily="{StaticResource IconFont}" FontSize="16" Width="28" VerticalAlignment="Center" />
<TextBlock Text="통합 대시보드" VerticalAlignment="Center" />
</StackPanel>
</RadioButton>
<!-- 2. Active Directory -->
<RadioButton x:Name="NavAD" Style="{StaticResource NavButtonStyle}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="&#xE77B;" FontFamily="{StaticResource IconFont}" FontSize="16" Width="28" VerticalAlignment="Center" />
<TextBlock Text="Active Directory" VerticalAlignment="Center" />
</StackPanel>
</RadioButton>
<!-- 3. NetApp Storage -->
<RadioButton x:Name="NavNetApp" Style="{StaticResource NavButtonStyle}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="&#xE7F3;" FontFamily="{StaticResource IconFont}" FontSize="16" Width="28" VerticalAlignment="Center" />
<TextBlock Text="NetApp 스토리지" VerticalAlignment="Center" />
</StackPanel>
</RadioButton>
<!-- 4. Share Permission & AD Group Sync -->
<RadioButton x:Name="NavShareAccess" Style="{StaticResource NavButtonStyle}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="&#xE71E;" FontFamily="{StaticResource IconFont}" FontSize="16" Width="28" VerticalAlignment="Center" />
<TextBlock Text="공유 권한 및 AD 연계" VerticalAlignment="Center" />
</StackPanel>
</RadioButton>
<!-- 5. Batch Workstation (Multi-user, Reason, Share & Quota) -->
<RadioButton x:Name="NavBatchWs" Style="{StaticResource NavButtonStyle}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="&#xE71D;" FontFamily="{StaticResource IconFont}" FontSize="16" Width="28" VerticalAlignment="Center" />
<TextBlock Text="일괄 작업 센터 (Batch)" VerticalAlignment="Center" />
</StackPanel>
</RadioButton>
<!-- 6. MS SQL Database -->
<RadioButton x:Name="NavSql" Style="{StaticResource NavButtonStyle}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="&#xEC92;" FontFamily="{StaticResource IconFont}" FontSize="16" Width="28" VerticalAlignment="Center" />
<TextBlock Text="MS SQL DB 관리" VerticalAlignment="Center" />
</StackPanel>
</RadioButton>
<TextBlock Text="PREFERENCES" FontSize="11" FontWeight="Bold" Foreground="#475569" Margin="18,24,0,8" />
<!-- 5. Settings -->
<RadioButton x:Name="NavSettings" Style="{StaticResource NavButtonStyle}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="&#xE713;" FontFamily="{StaticResource IconFont}" FontSize="16" Width="28" VerticalAlignment="Center" />
<TextBlock Text="환경설정 및 연결" VerticalAlignment="Center" />
</StackPanel>
</RadioButton>
</StackPanel>
</ScrollViewer>
<!-- Sidebar Bottom Profile / System Status -->
<Border Grid.Row="2" BorderBrush="{StaticResource CardBorderBrush}" BorderThickness="0,1,0,0" Padding="16,14">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="38" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<!-- Avatar -->
<Border Grid.Column="0" Width="36" Height="36" Background="#1E293B" CornerRadius="18" BorderBrush="{StaticResource PrimaryAccentBrush}" BorderThickness="1.5">
<TextBlock Text="&#xE77B;" FontFamily="{StaticResource IconFont}" FontSize="18" Foreground="{StaticResource PrimaryAccentBrush}"
HorizontalAlignment="Center" VerticalAlignment="Center" />
</Border>
<!-- Admin Name / Role -->
<StackPanel Grid.Column="1" Margin="10,0,0,0" VerticalAlignment="Center">
<TextBlock Text="Domain Admin" FontSize="12.5" FontWeight="SemiBold" Foreground="{StaticResource TextPrimaryBrush}" />
<TextBlock Text="CORP\Administrator" FontSize="11" Foreground="{StaticResource TextSecondaryBrush}" />
</StackPanel>
<!-- Status Dot -->
<Border Grid.Column="2" Width="8" Height="8" Background="#10B981" CornerRadius="4" VerticalAlignment="Center" ToolTip="Connected &amp; Healthy" />
</Grid>
</Border>
</Grid>
</Border>
<!-- ================= MAIN CONTENT AREA ================= -->
<Grid Grid.Column="1">
<Grid.RowDefinitions>
<!-- Top Navigation Header -->
<RowDefinition Height="64" />
<!-- Dynamic Page View Host -->
<RowDefinition Height="*" />
<!-- Global Status Bar -->
<RowDefinition Height="32" />
</Grid.RowDefinitions>
<!-- Top Header Bar -->
<Border Grid.Row="0" Background="{StaticResource SidebarBgBrush}" BorderBrush="{StaticResource CardBorderBrush}" BorderThickness="0,0,0,1" Padding="24,0">
<Grid VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<!-- Breadcrumb / Section Header -->
<StackPanel Grid.Column="0" Orientation="Horizontal" VerticalAlignment="Center">
<TextBlock x:Name="TxtHeaderTitle" Text="통합 대시보드" FontSize="16" FontWeight="SemiBold" Foreground="{StaticResource TextPrimaryBrush}" />
<TextBlock Text=" / " FontSize="14" Foreground="#475569" />
<TextBlock x:Name="TxtHeaderSubtitle" Text="전체 인프라 상태 개요" FontSize="13" Foreground="{StaticResource TextSecondaryBrush}" VerticalAlignment="Center" />
</StackPanel>
<!-- Global Quick Search & Mode Badge & Notification Controls -->
<StackPanel Grid.Column="2" Orientation="Horizontal" VerticalAlignment="Center">
<!-- Mode Badge (Live vs Demo) -->
<Border x:Name="BadgeMode" Background="#6366F1" CornerRadius="6" Padding="10,5" Margin="0,0,16,0">
<StackPanel Orientation="Horizontal">
<TextBlock Text="&#xE958;" FontFamily="{StaticResource IconFont}" FontSize="12" Foreground="White" Margin="0,0,6,0" VerticalAlignment="Center" />
<TextBlock x:Name="TxtModeBadge" Text="데모/모의 모드" FontSize="12" FontWeight="SemiBold" Foreground="White" VerticalAlignment="Center" />
</StackPanel>
</Border>
<Border Background="#1E293B" CornerRadius="6" Padding="10,6" Margin="0,0,16,0" BorderBrush="{StaticResource CardBorderBrush}" BorderThickness="1">
<StackPanel Orientation="Horizontal">
<TextBlock Text="&#xE721;" FontFamily="{StaticResource IconFont}" FontSize="13" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,0,8,0" VerticalAlignment="Center" />
<TextBlock Text="전체 자원 통합 검색 (Ctrl + K)" FontSize="12" Foreground="{StaticResource TextSecondaryBrush}" VerticalAlignment="Center" Width="180" />
</StackPanel>
</Border>
<!-- Notification Bell Button -->
<Button x:Name="BtnGlobalNotifications" Style="{StaticResource SecondaryButtonStyle}" Padding="10,6" Margin="0,0,8,0">
<StackPanel Orientation="Horizontal">
<TextBlock Text="&#xEA8F;" FontFamily="{StaticResource IconFont}" FontSize="14" Margin="0,0,6,0" VerticalAlignment="Center" />
<Border Background="#EF4444" CornerRadius="8" Padding="5,1">
<TextBlock Text="2" FontSize="10" FontWeight="Bold" Foreground="White" />
</Border>
</StackPanel>
</Button>
<!-- Refresh Current View Button -->
<Button x:Name="BtnGlobalRefresh" Content="&#xE72C;" FontFamily="{StaticResource IconFont}" Style="{StaticResource SecondaryButtonStyle}" Padding="10,6" ToolTip="현재 뷰 새로고침" />
</StackPanel>
</Grid>
</Border>
<!-- Dynamic View Host (ContentControl) -->
<ContentControl x:Name="MainContentHost" Grid.Row="1" Margin="0" />
<!-- Global Bottom Status Bar -->
<Border Grid.Row="2" Background="{StaticResource SidebarBgBrush}" BorderBrush="{StaticResource CardBorderBrush}" BorderThickness="0,1,0,0" Padding="18,0">
<Grid VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0" Orientation="Horizontal" VerticalAlignment="Center">
<Border x:Name="DotGlobalStatus" Background="#10B981" Width="8" Height="8" CornerRadius="4" Margin="0,0,8,0" />
<TextBlock x:Name="TxtGlobalStatus" Text="모든 백엔드 모듈 정상 준비됨 | config.json 로드 완료" FontSize="11.5" Foreground="{StaticResource TextSecondaryBrush}" />
</StackPanel>
<StackPanel Grid.Column="1" Orientation="Horizontal" VerticalAlignment="Center">
<TextBlock Text="PowerShell 7 / .NET 8 WPF" FontSize="11" Foreground="#475569" Margin="0,0,16,0" />
<TextBlock x:Name="TxtSystemClock" Text="2026-10-20 16:10" FontSize="11" Foreground="{StaticResource TextSecondaryBrush}" />
</StackPanel>
</Grid>
</Border>
</Grid>
</Grid>
</Window>