116 lines
5.3 KiB
XML
116 lines
5.3 KiB
XML
<UserControl xmlns="https://github.com/avaloniaui"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:vm="clr-namespace:LehrerApp.Desktop.ViewModels"
|
|
x:Class="LehrerApp.Desktop.Views.DashboardView"
|
|
x:DataType="vm:DashboardViewModel">
|
|
|
|
<ScrollViewer Padding="24">
|
|
<StackPanel Spacing="20">
|
|
|
|
<!-- Header -->
|
|
<StackPanel>
|
|
<TextBlock Text="{Binding Greeting}" FontSize="14" Opacity="0.6" />
|
|
<TextBlock Text="{Binding CurrentDate}" FontSize="24" FontWeight="SemiBold" />
|
|
</StackPanel>
|
|
|
|
<Grid ColumnDefinitions="*,*" RowDefinitions="Auto,Auto" >
|
|
|
|
<!-- Heutige Stunden -->
|
|
<Border Grid.Column="0" Grid.Row="0"
|
|
Background="{DynamicResource SystemControlBackgroundAltHighBrush}"
|
|
CornerRadius="8" Padding="16" Margin="0,0,8,8">
|
|
<StackPanel>
|
|
<TextBlock Text="HEUTE" FontSize="11" FontWeight="Bold"
|
|
Opacity="0.5" Margin="0,0,0,12"/>
|
|
<ItemsControl ItemsSource="{Binding TodaysLessons}">
|
|
<ItemsControl.ItemTemplate>
|
|
<DataTemplate DataType="vm:LessonItem">
|
|
<Border Padding="0,6" BorderThickness="0,0,0,1"
|
|
BorderBrush="{DynamicResource SystemControlForegroundBaseLowBrush}">
|
|
<Grid ColumnDefinitions="Auto,*">
|
|
<Border Grid.Column="0" Width="4" CornerRadius="2"
|
|
Background="{DynamicResource SystemAccentColor}"
|
|
Margin="0,0,10,0"/>
|
|
<StackPanel Grid.Column="1">
|
|
<TextBlock Text="{Binding GroupName}"
|
|
FontWeight="SemiBold" FontSize="13"/>
|
|
<TextBlock Text="{Binding Topic}"
|
|
FontSize="12" Opacity="0.7"
|
|
TextTrimming="CharacterEllipsis"/>
|
|
</StackPanel>
|
|
</Grid>
|
|
</Border>
|
|
</DataTemplate>
|
|
</ItemsControl.ItemTemplate>
|
|
</ItemsControl>
|
|
<TextBlock Text="Keine Stunden heute" FontSize="13" Opacity="0.5"
|
|
IsVisible="{Binding !TodaysLessons.Count}"/>
|
|
</StackPanel>
|
|
</Border>
|
|
|
|
<!-- Offene Aufgaben -->
|
|
<Border Grid.Column="1" Grid.Row="0"
|
|
Background="{DynamicResource SystemControlBackgroundAltHighBrush}"
|
|
CornerRadius="8" Padding="16" Margin="8,0,0,8">
|
|
<StackPanel>
|
|
<TextBlock Text="OFFENE AUFGABEN" FontSize="11" FontWeight="Bold"
|
|
Opacity="0.5" Margin="0,0,0,12"/>
|
|
<ItemsControl ItemsSource="{Binding OpenTasks}">
|
|
<ItemsControl.ItemTemplate>
|
|
<DataTemplate DataType="vm:TaskItem">
|
|
<Grid ColumnDefinitions="*,Auto" Margin="0,4">
|
|
<StackPanel Grid.Column="0">
|
|
<TextBlock Text="{Binding Title}"
|
|
FontSize="13" TextTrimming="CharacterEllipsis"/>
|
|
</StackPanel>
|
|
<TextBlock Grid.Column="1" Text="{Binding DueDate}"
|
|
FontSize="12" Opacity="0.6" Margin="8,0,0,0"/>
|
|
</Grid>
|
|
</DataTemplate>
|
|
</ItemsControl.ItemTemplate>
|
|
</ItemsControl>
|
|
<TextBlock Text="Keine offenen Aufgaben" FontSize="13" Opacity="0.5"
|
|
IsVisible="{Binding !OpenTasks.Count}"/>
|
|
</StackPanel>
|
|
</Border>
|
|
|
|
<!-- Meine Lerngruppen -->
|
|
<Border Grid.Column="0" Grid.Row="1" Grid.ColumnSpan="2"
|
|
Background="{DynamicResource SystemControlBackgroundAltHighBrush}"
|
|
CornerRadius="8" Padding="16">
|
|
<StackPanel>
|
|
<TextBlock Text="MEINE LERNGRUPPEN" FontSize="11" FontWeight="Bold"
|
|
Opacity="0.5" Margin="0,0,0,12"/>
|
|
<ItemsControl ItemsSource="{Binding CurrentGroups}">
|
|
<ItemsControl.ItemsPanel>
|
|
<ItemsPanelTemplate>
|
|
<WrapPanel Orientation="Horizontal"/>
|
|
</ItemsPanelTemplate>
|
|
</ItemsControl.ItemsPanel>
|
|
<ItemsControl.ItemTemplate>
|
|
<DataTemplate DataType="vm:GroupChip">
|
|
<Border Background="{DynamicResource SystemAccentColorLight2}"
|
|
CornerRadius="6" Padding="12,6" Margin="0,0,8,8">
|
|
<StackPanel>
|
|
<TextBlock Text="{Binding Name}"
|
|
FontWeight="SemiBold" FontSize="13"/>
|
|
<TextBlock Text="{Binding Subject}"
|
|
FontSize="11" Opacity="0.7"
|
|
IsVisible="{Binding Subject, Converter={x:Static StringConverters.IsNotNullOrEmpty}}"/>
|
|
</StackPanel>
|
|
</Border>
|
|
</DataTemplate>
|
|
</ItemsControl.ItemTemplate>
|
|
</ItemsControl>
|
|
<TextBlock Text="Noch keine Lerngruppen für dieses Schuljahr"
|
|
FontSize="13" Opacity="0.5"
|
|
IsVisible="{Binding !CurrentGroups.Count}"/>
|
|
</StackPanel>
|
|
</Border>
|
|
|
|
</Grid>
|
|
</StackPanel>
|
|
</ScrollViewer>
|
|
|
|
</UserControl>
|