Sollstunden werden jetzt angezeigt. Genehmigte Freistellungen können nicht mehr geändert werden Projekte und Gemeinden werden ausgeblendet, sofern vom Portal so vorgesehen. etc.
99 lines
5.4 KiB
XML
99 lines
5.4 KiB
XML
<?xml version="1.0" encoding="utf-8" ?>
|
|
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
|
|
xmlns:models="clr-namespace:Jugenddienst_Stunden.ViewModels"
|
|
xmlns:conv="clr-namespace:Jugenddienst_Stunden.Converter"
|
|
x:Class="Jugenddienst_Stunden.Views.StundePage"
|
|
Title="{Binding Title}">
|
|
|
|
<ContentPage.BindingContext>
|
|
<models:StundeViewModel />
|
|
</ContentPage.BindingContext>
|
|
|
|
<ContentPage.Resources>
|
|
<ResourceDictionary>
|
|
<conv:IntBoolConverter x:Key="IntBoolConverter" />
|
|
</ResourceDictionary>
|
|
</ContentPage.Resources>
|
|
|
|
<VerticalStackLayout Spacing="10" Margin="10">
|
|
|
|
<Label Text="{Binding SubTitle}" />
|
|
|
|
<Frame Padding="5,2,5,10">
|
|
<FlexLayout Direction="Row" AlignItems="Start" Wrap="Wrap" JustifyContent="SpaceBetween">
|
|
|
|
<HorizontalStackLayout>
|
|
<Label Text="Beginn" VerticalTextAlignment="Center" HorizontalTextAlignment="End" Padding="0,0,10,0" Margin="5,0,0,0" MinimumWidthRequest="60"></Label>
|
|
<TimePicker x:Name="TimeBegin" HorizontalOptions="Center" Format="HH:mm" MinimumWidthRequest="80" Time="{Binding DayTime.TimeSpanVon}" Margin="0,0,0,-5" />
|
|
</HorizontalStackLayout>
|
|
|
|
<HorizontalStackLayout>
|
|
<Label Text="Ende" VerticalTextAlignment="Center" HorizontalTextAlignment="End" Padding="0,0,10,0" Margin="5,0,0,0" MinimumWidthRequest="60"></Label>
|
|
<TimePicker x:Name="TimeEnd" Format="HH:mm" MinimumWidthRequest="80" Time="{Binding DayTime.TimeSpanBis}" Margin="0,0,0,-5" />
|
|
</HorizontalStackLayout>
|
|
|
|
</FlexLayout>
|
|
</Frame>
|
|
|
|
<Frame Padding="5,2,5,10">
|
|
<Grid ColumnDefinitions="*,*,*">
|
|
<Picker x:Name="pick_gemeinde" Title="Gemeinde" ItemsSource="{Binding OptionsGemeinde}" SelectedItem="{Binding DayTime.GemeindeAktiv, Mode=TwoWay}" ItemDisplayBinding="{Binding Name}" Grid.Column="0" IsVisible="{Binding GemeindeAktivSet}">
|
|
</Picker>
|
|
<Picker x:Name="pick_projekt" Title="Projekt" ItemsSource="{Binding OptionsProjekt}" SelectedItem="{Binding DayTime.ProjektAktiv, Mode=TwoWay}" ItemDisplayBinding="{Binding Name}" Grid.Column="1" IsVisible="{Binding ProjektAktivSet}">
|
|
</Picker>
|
|
<Picker x:Name="pick_freistellung" Title="Freistellung" ItemsSource="{Binding OptionsFreistellung}" SelectedItem="{Binding DayTime.FreistellungAktiv, Mode=TwoWay}" ItemDisplayBinding="{Binding Name}" Grid.Column="2" IsEnabled="{Binding FreistellungEnabled}">
|
|
</Picker>
|
|
</Grid>
|
|
</Frame>
|
|
|
|
<Editor Placeholder="Beschreibung" Text="{Binding DayTime.Description}" MinimumHeightRequest="40" AutoSize="TextChanges" FontSize="18" />
|
|
|
|
|
|
<Grid ColumnDefinitions="*,*" ColumnSpacing="4">
|
|
<Button Text="Speichern" Command="{Binding SaveCommand}" />
|
|
<Button Grid.Column="1" Text="Löschen" Command="{Binding DeleteConfirmCommand}" IsEnabled="{Binding DayTime.Id, Converter={StaticResource IntBoolConverter}}" IsVisible="{Binding FreistellungEnabled}" />
|
|
</Grid>
|
|
|
|
<BoxView HeightRequest="1" Margin="5,10"/>
|
|
|
|
<CollectionView
|
|
ItemsSource="{Binding DayTimes}"
|
|
x:Name="stundeItems" Margin="0"
|
|
HeightRequest="350"
|
|
SelectionMode="Single"
|
|
SelectionChangedCommand="{Binding SelectEntryCommand}"
|
|
SelectionChangedCommandParameter="{Binding Source={RelativeSource Self}, Path=SelectedItem}">
|
|
|
|
<CollectionView.ItemsLayout>
|
|
<LinearItemsLayout Orientation="Vertical" ItemSpacing="0" />
|
|
</CollectionView.ItemsLayout>
|
|
|
|
<CollectionView.ItemTemplate>
|
|
<DataTemplate>
|
|
<Grid Padding="5,10,5,0">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*" />
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
<HorizontalStackLayout Grid.Row="0" Grid.Column="0">
|
|
<Label Grid.Column="0" Text="{Binding Begin}"/>
|
|
<Label Text="bis" Padding="5,0,5,0"/>
|
|
<Label Text="{Binding End}"/>
|
|
<Label Text="{Binding GemeindeAktiv.Name}" Margin="10,0,0,0" IsVisible="{Binding Source={RelativeSource AncestorType={x:Type ContentPage}}, Path=BindingContext.GemeindeAktivSet}"/>
|
|
<Label Text="{Binding ProjektAktiv.Name}" Margin="10,0,0,0" IsVisible="{Binding Source={RelativeSource AncestorType={x:Type ContentPage}}, Path=BindingContext.ProjektAktivSet}"/>
|
|
<Label Text="{Binding FreistellungAktiv.Name}" Margin="10,0,0,0"/>
|
|
</HorizontalStackLayout>
|
|
|
|
<Label Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Text="{Binding Description}" Padding="0,0,0,15"/>
|
|
</Grid>
|
|
</DataTemplate>
|
|
</CollectionView.ItemTemplate>
|
|
|
|
</CollectionView>
|
|
</VerticalStackLayout>
|
|
</ContentPage> |