aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormarcinzelent <marcin@zelent.net>2017-02-04 17:46:03 +0100
committermarcinzelent <marcin@zelent.net>2017-02-04 17:46:03 +0100
commit1d65134c461d6648b5556847565d37f898db5ad0 (patch)
treed9ecabc0fb0d2e79ac57f176e152dfcb5802178c /France_Vacances/France_Vacances/View
parentffbe744e0807d0d70d31220fece2a034e56509cf (diff)
Repo copy.
Diffstat (limited to 'France_Vacances/France_Vacances/View')
-rw-r--r--France_Vacances/France_Vacances/View/AboutView.xaml23
-rw-r--r--France_Vacances/France_Vacances/View/AboutView.xaml.cs30
-rw-r--r--France_Vacances/France_Vacances/View/AccommodationView.xaml123
-rw-r--r--France_Vacances/France_Vacances/View/AccommodationView.xaml.cs51
-rw-r--r--France_Vacances/France_Vacances/View/BookingView.xaml99
-rw-r--r--France_Vacances/France_Vacances/View/BookingView.xaml.cs44
-rw-r--r--France_Vacances/France_Vacances/View/CatalogView.xaml124
-rw-r--r--France_Vacances/France_Vacances/View/CatalogView.xaml.cs22
-rw-r--r--France_Vacances/France_Vacances/View/CreateUserView.xaml88
-rw-r--r--France_Vacances/France_Vacances/View/CreateUserView.xaml.cs44
-rw-r--r--France_Vacances/France_Vacances/View/LoginView.xaml38
-rw-r--r--France_Vacances/France_Vacances/View/LoginView.xaml.cs35
-rw-r--r--France_Vacances/France_Vacances/View/MainView.xaml177
-rw-r--r--France_Vacances/France_Vacances/View/MainView.xaml.cs21
-rw-r--r--France_Vacances/France_Vacances/View/SearchView.xaml140
-rw-r--r--France_Vacances/France_Vacances/View/SearchView.xaml.cs41
-rw-r--r--France_Vacances/France_Vacances/View/UserView.xaml64
-rw-r--r--France_Vacances/France_Vacances/View/UserView.xaml.cs30
18 files changed, 1194 insertions, 0 deletions
diff --git a/France_Vacances/France_Vacances/View/AboutView.xaml b/France_Vacances/France_Vacances/View/AboutView.xaml
new file mode 100644
index 0000000..7622227
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/AboutView.xaml
@@ -0,0 +1,23 @@
+<Page
+ x:Class="France_Vacances.View.AboutView"
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:local="using:France_Vacances.View"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ mc:Ignorable="d">
+
+ <Grid Background="LightGray">
+ <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center">
+ <TextBlock Text="Group 3D Members" FontSize="40" FontWeight="Bold"> </TextBlock>
+ <TextBlock Text="Donatas Adamonis" FontSize="20" HorizontalAlignment="Center"></TextBlock>
+ <TextBlock Text="Marcin Zelent" FontSize="20" HorizontalAlignment="Center"></TextBlock>
+ <TextBlock Text="Simonas Valaitis" FontSize="20" HorizontalAlignment="Center"></TextBlock>
+ <TextBlock Text="Mikkel Frederiksen" FontSize="20" HorizontalAlignment="Center"></TextBlock>
+ <TextBlock Text="Rasmus Overbye" FontSize="20" HorizontalAlignment="Center"></TextBlock>
+
+
+
+ </StackPanel>
+ </Grid>
+</Page>
diff --git a/France_Vacances/France_Vacances/View/AboutView.xaml.cs b/France_Vacances/France_Vacances/View/AboutView.xaml.cs
new file mode 100644
index 0000000..2fea334
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/AboutView.xaml.cs
@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Runtime.InteropServices.WindowsRuntime;
+using Windows.Foundation;
+using Windows.Foundation.Collections;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Controls.Primitives;
+using Windows.UI.Xaml.Data;
+using Windows.UI.Xaml.Input;
+using Windows.UI.Xaml.Media;
+using Windows.UI.Xaml.Navigation;
+
+// The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238
+
+namespace France_Vacances.View
+{
+ /// <summary>
+ /// An empty page that can be used on its own or navigated to within a Frame.
+ /// </summary>
+ public sealed partial class AboutView : Page
+ {
+ public AboutView()
+ {
+ this.InitializeComponent();
+ }
+ }
+}
diff --git a/France_Vacances/France_Vacances/View/AccommodationView.xaml b/France_Vacances/France_Vacances/View/AccommodationView.xaml
new file mode 100644
index 0000000..4d9629d
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/AccommodationView.xaml
@@ -0,0 +1,123 @@
+<Page
+ x:Class="France_Vacances.View.AccommodationView"
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:local="using:France_Vacances.View"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ xmlns:viewModel="using:France_Vacances.ViewModel"
+ mc:Ignorable="d">
+
+ <ScrollViewer>
+ <Grid Background="GhostWhite" Padding="100,10">
+ <Grid.DataContext>
+ <viewModel:AccommodationViewModel/>
+ </Grid.DataContext>
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition/>
+ <ColumnDefinition Width="250"/>
+ </Grid.ColumnDefinitions>
+
+ <Grid.RowDefinitions>
+ <RowDefinition Height="100"/>
+ <RowDefinition Height="400"/>
+ <RowDefinition/>
+ </Grid.RowDefinitions>
+
+ <StackPanel Grid.Column="0" Grid.Row="0">
+ <StackPanel Orientation="Horizontal">
+ <TextBlock Text="{Binding DisplayedAccommodationModel.Name}" FontSize="28"/>
+ <TextBlock Text="{Binding DisplayedAccommodationModel.Stars}" VerticalAlignment="Center" Margin="10,0,0,0" Foreground="DodgerBlue"/>
+ </StackPanel>
+ <TextBlock Margin="10,0,0,0" Foreground="DimGray" >
+ <Run Text="{Binding DisplayedAccommodationModel.StreetName}"></Run>
+ <Run Text=","></Run>
+ <Run Text="{Binding DisplayedAccommodationModel.PostalCode}"></Run>
+ <Run Text="{Binding DisplayedAccommodationModel.City}"></Run>
+ <Run Text=","></Run>
+ <Run Text="{Binding DisplayedAccommodationModel.Region}"></Run>
+ </TextBlock>
+ </StackPanel>
+ <StackPanel Grid.Column="1" Grid.Row="0" Orientation="Horizontal" VerticalAlignment="Center">
+ <TextBlock Text="Rating: " FontSize="30" VerticalAlignment="Bottom" Margin="0,0,10,5"/>
+ <TextBlock Text="{Binding DisplayedAccommodationModel.ReviewScore}" FontSize="50"/>
+ </StackPanel>
+ <Grid x:Name="ImageViewer" Grid.Column="0" Grid.Row="1">
+ <Grid.Background>
+ <ImageBrush x:Name="ImageViewerBackground" ImageSource="{Binding DisplayedAccommodationModel.Images[0]}" Stretch="Uniform"/>
+ </Grid.Background>
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="50"/>
+ <ColumnDefinition/>
+ <ColumnDefinition Width="50"/>
+ </Grid.ColumnDefinitions>
+ <Button Grid.Column="0" Content="&lt;" Background="Transparent" FontSize="48" Click="PreviousImage" HorizontalAlignment="Right"/>
+ <Button Grid.Column="2" Content="&gt;" Background="Transparent" FontSize="48" Click="NextImage"/>
+ </Grid>
+ <Grid Grid.Column="1" Grid.Row="1" Background="DodgerBlue" Margin="0,10" Padding="20" CornerRadius="10">
+
+ <Grid.RowDefinitions>
+ <RowDefinition Height="40"/>
+ <RowDefinition Height="60"/>
+ <RowDefinition Height="60"/>
+ <RowDefinition Height="70"/>
+ <RowDefinition/>
+ </Grid.RowDefinitions>
+
+ <StackPanel Grid.Row="0" Orientation="Horizontal">
+ <TextBlock Text="Price per night:" Foreground="White" FontSize="16" VerticalAlignment="Bottom" TextLineBounds="Tight" Margin="0,0,0,10"/>
+ <TextBlock Foreground="White" FontWeight="Bold" FontSize="20" VerticalAlignment="Bottom" TextLineBounds="Tight" Margin="10,0,0,10">
+ <Run Text="{Binding DisplayedAccommodationModel.Price}"></Run>
+ <Run Text="€"></Run>
+ </TextBlock>
+ </StackPanel>
+ <StackPanel Grid.Row="1">
+ <TextBlock Text="From:" FontSize="16" Foreground="White" VerticalAlignment="Center"/>
+ <CalendarDatePicker Date="{Binding StartDateTime, Mode=TwoWay}" HorizontalAlignment="Stretch" />
+ </StackPanel>
+ <StackPanel Grid.Row="2">
+ <TextBlock Text="To:" FontSize="16" Foreground="White" VerticalAlignment="Center"/>
+ <CalendarDatePicker Date="{Binding EndDateTime, Mode=TwoWay}" HorizontalAlignment="Stretch" />
+ </StackPanel>
+ <StackPanel Grid.Row="3">
+ <TextBlock Text="Overall price:" FontSize="16" Foreground="White" VerticalAlignment="Center"/>
+ <TextBlock Foreground="White" FontSize="36" FontWeight="Bold"><Run Text="{Binding OverallPrice, Mode=TwoWay}"/> €</TextBlock>
+ </StackPanel>
+ <Button Grid.Row="4" Width="150" Height="50" Background="Gold" HorizontalAlignment="Center" Command="{Binding GetBookingInfoCommand}" Click="GoToBookingView">
+ <Button.Content>
+ <TextBlock Text="Book" FontWeight="Bold"/>
+ </Button.Content>
+ </Button>
+ </Grid>
+ <TextBlock Grid.Column="0" Grid.Row="2" Margin="5,20,5,5" Text="{Binding DisplayedAccommodationModel.Description}" TextWrapping="WrapWholeWords"/>
+
+ <Grid Grid.Column="1" Grid.Row="2" Margin="0,20,0,0">
+ <Grid.RowDefinitions>
+ <RowDefinition Height="47"/>
+ <RowDefinition Height="20"/>
+ <RowDefinition/>
+ </Grid.RowDefinitions>
+
+ <StackPanel>
+ <TextBlock>
+ <Run Text="Rooms: " FontWeight="Bold"/>
+ <Run Text="{Binding DisplayedAccommodationModel.Rooms}"></Run>
+ </TextBlock>
+ <TextBlock>
+ <Run Text="Persons: " FontWeight="Bold"/>
+ <Run Text="{Binding DisplayedAccommodationModel.Persons}"></Run>
+ </TextBlock>
+ </StackPanel>
+ <TextBlock Grid.Row="1" Text="Facilities:" FontWeight="Bold"/>
+ <ListView Grid.Row="2" ItemsSource="{Binding DisplayedAccommodationModel.Facilities}">
+ <ListView.ItemContainerStyle>
+ <Style TargetType="ListViewItem">
+ <Setter Property="IsHitTestVisible" Value="false"/>
+ </Style>
+ </ListView.ItemContainerStyle >
+
+ </ListView>
+ </Grid>
+ </Grid>
+ </ScrollViewer>
+</Page> \ No newline at end of file
diff --git a/France_Vacances/France_Vacances/View/AccommodationView.xaml.cs b/France_Vacances/France_Vacances/View/AccommodationView.xaml.cs
new file mode 100644
index 0000000..7207783
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/AccommodationView.xaml.cs
@@ -0,0 +1,51 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Runtime.InteropServices.WindowsRuntime;
+using Windows.Foundation;
+using Windows.Foundation.Collections;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Controls.Primitives;
+using Windows.UI.Xaml.Data;
+using Windows.UI.Xaml.Input;
+using Windows.UI.Xaml.Media;
+using Windows.UI.Xaml.Navigation;
+
+// The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238
+
+namespace France_Vacances.View
+{
+ /// <summary>
+ /// An empty page that can be used on its own or navigated to within a Frame.
+ /// </summary>
+ public sealed partial class AccommodationView : Page
+ {
+ private int i=0;
+ public AccommodationView()
+ {
+ this.InitializeComponent();
+ }
+
+ private void GoToBookingView(object sender, RoutedEventArgs e)
+ {
+ Frame.Navigate(typeof(BookingView));
+ }
+
+ private void PreviousImage(object sender, RoutedEventArgs e)
+ {
+ if(i!=0) i--;
+ Binding myBinding = new Binding();
+ myBinding.Path = new PropertyPath("DisplayedAccommodationModel.Images" + "[" + i + "]");
+ BindingOperations.SetBinding(ImageViewerBackground, ImageBrush.ImageSourceProperty, myBinding);
+ }
+ private void NextImage(object sender, RoutedEventArgs e)
+ {
+ if(i!=4)i++;
+ Binding myBinding = new Binding();
+ myBinding.Path = new PropertyPath("DisplayedAccommodationModel.Images" + "[" + i + "]");
+ BindingOperations.SetBinding(ImageViewerBackground,ImageBrush.ImageSourceProperty,myBinding);
+ }
+ }
+}
diff --git a/France_Vacances/France_Vacances/View/BookingView.xaml b/France_Vacances/France_Vacances/View/BookingView.xaml
new file mode 100644
index 0000000..7cb6015
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/BookingView.xaml
@@ -0,0 +1,99 @@
+<Page
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:local="using:France_Vacances.View"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ xmlns:viewModel="using:France_Vacances.ViewModel"
+ x:Class="France_Vacances.View.BookingView"
+ mc:Ignorable="d">
+
+ <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
+ <Grid.DataContext>
+ <viewModel:CreateUserViewModel/>
+ </Grid.DataContext>
+ <!-- Background Image Grid -->
+ <Grid Style="{StaticResource GridBackground}">
+ <ScrollViewer>
+ <Grid Background="Transparent">
+
+ <Grid Background="DodgerBlue" BorderBrush="#CCFFFFFF" MinWidth="400" BorderThickness="2" HorizontalAlignment="Center" VerticalAlignment="Center">
+ <Grid.RowDefinitions>
+ <RowDefinition />
+ <RowDefinition />
+ </Grid.RowDefinitions>
+ <TextBlock FontSize="32" Foreground="White" Text="Booking" VerticalAlignment="Center" HorizontalAlignment="Center" FontWeight="Bold" Height="43" Width="173" Margin="0,20,0,0"/>
+ <Grid Grid.Row="1" Margin="0,0,0,100">
+
+ <Grid.ColumnDefinitions>
+
+ <ColumnDefinition Width="350"/>
+ <ColumnDefinition Width="500"/>
+ </Grid.ColumnDefinitions>
+ <Grid Grid.Column="1">
+ <Grid.DataContext>
+ <viewModel:AccommodationViewModel/>
+ </Grid.DataContext>
+ <Grid.RowDefinitions>
+ <RowDefinition/>
+ <RowDefinition Height="300" />
+ <RowDefinition Height="97*" />
+ </Grid.RowDefinitions>
+ <TextBlock Grid.Row="0" Text="{Binding DisplayedAccommodationModel.Name}" FontSize="28" Margin="20,20,0,0" Foreground="White" TextWrapping="WrapWholeWords"/>
+ <Image Grid.Row="1" Source="{Binding DisplayedAccommodationModel.Images[0]}" Margin="20,0,20,0"/>
+ <StackPanel Grid.Row="2" Margin="20,5,5,5">
+
+ <TextBlock Text="Address:" FontSize="18" Foreground="White" FontWeight="Bold"/>
+ <TextBlock FontSize="16" Foreground="White" HorizontalAlignment="Left" Margin="0,0,5,0" TextWrapping="WrapWholeWords">
+ <Run Text="{Binding DisplayedAccommodationModel.StreetName}"/>,
+ <Run Text="{Binding DisplayedAccommodationModel.PostalCode}"/>
+ <Run Text="{Binding DisplayedAccommodationModel.City}"/>,
+ <Run Text="{Binding DisplayedAccommodationModel.Region}"/>
+ </TextBlock>
+ <TextBlock Text="Booking dates:" Foreground="White" FontSize="18" Margin="0,10,0,0" FontWeight="Bold"/>
+ <TextBlock FontSize="16" Foreground="White" HorizontalAlignment="Left" Margin="0,0,5,0" TextWrapping="WrapWholeWords">
+ <Run Text="{Binding StartDate}"/> - <Run Text="{Binding EndDate}"/>
+ </TextBlock>
+ <TextBlock Text="Overall price:" Foreground="White" FontSize="18" Margin="0,10,0,0" FontWeight="Bold"/>
+ <TextBlock FontSize="36" Foreground="White" HorizontalAlignment="Left" Margin="0,0,5,0" TextWrapping="WrapWholeWords" FontWeight="Bold">
+ <Run Text="{Binding OverallPrice}"/> €
+ </TextBlock>
+ </StackPanel>
+ </Grid>
+ <StackPanel Margin="20,10,20,10" Grid.Column="0" HorizontalAlignment="Stretch" >
+ <StackPanel.DataContext>
+ <viewModel:UserViewModel/>
+ </StackPanel.DataContext>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="First name"/>
+ <TextBox x:Name="FirstName" Text="{Binding DisplayedUser.FirstName, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Last name"/>
+ <TextBox x:Name="LastName" Text="{Binding DisplayedUser.LastName, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Birth date"/>
+ <CalendarDatePicker x:Name="BirthDate" Date="{Binding DisplayedUser.BirthDate, Mode=TwoWay}"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Address"/>
+ <TextBox x:Name="Adress" Text="{Binding DisplayedUser.Address, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="City"/>
+ <TextBox x:Name="City" Text="{Binding DisplayedUser.City, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Postal code"/>
+ <TextBox x:Name="PostalCode" Text="{Binding DisplayedUser.PostalCode, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Country"/>
+ <TextBox x:Name="Country" Text="{Binding DisplayedUser.Country, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="E-mail address"/>
+ <TextBox x:Name="EmailAddress" Text="{Binding DisplayedUser.EmailAddress, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Phone number"/>
+ <TextBox x:Name="PhoneNumber" Text="{Binding DisplayedUser.PhoneNumber, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ </StackPanel>
+
+
+ </Grid>
+ <Button Grid.Row="1" FontSize="20" FontWeight="Bold" Margin="20,0,20,20" Content="Book" Background="Gold" Width="250" Height="50" HorizontalAlignment="Right" BorderBrush="#CCFFFFFF" Command="{Binding MakeBookingCommand}" Click="Click" VerticalAlignment="Bottom">
+ <Button.DataContext>
+ <viewModel:BookingViewModel/>
+ </Button.DataContext>
+ </Button>
+ </Grid>
+ </Grid>
+ </ScrollViewer>
+ </Grid>
+ </Grid>
+</Page>
diff --git a/France_Vacances/France_Vacances/View/BookingView.xaml.cs b/France_Vacances/France_Vacances/View/BookingView.xaml.cs
new file mode 100644
index 0000000..2390ad2
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/BookingView.xaml.cs
@@ -0,0 +1,44 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Runtime.InteropServices.WindowsRuntime;
+using Windows.Foundation;
+using Windows.Foundation.Collections;
+using Windows.UI;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Controls.Primitives;
+using Windows.UI.Xaml.Data;
+using Windows.UI.Xaml.Input;
+using Windows.UI.Xaml.Media;
+using Windows.UI.Xaml.Navigation;
+
+// The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238
+
+namespace France_Vacances.View
+{
+ /// <summary>
+ /// An empty page that can be used on its own or navigated to within a Frame.
+ /// </summary>
+ public sealed partial class BookingView : Page
+ {
+ public BookingView()
+ {
+ this.InitializeComponent();
+ }
+
+ private void Click(object sender, RoutedEventArgs e)
+ {
+ if (FirstName.Text == "") FirstName.BorderBrush = new SolidColorBrush(Colors.Red);
+ if (LastName.Text == "") LastName.BorderBrush = new SolidColorBrush(Colors.Red);
+ if (BirthDate.Date == null) BirthDate.BorderBrush = new SolidColorBrush(Colors.Red);
+ if (Adress.Text == "") Adress.BorderBrush = new SolidColorBrush(Colors.Red);
+ if (City.Text == "") City.BorderBrush = new SolidColorBrush(Colors.Red);
+ if (PostalCode.Text == "") PostalCode.BorderBrush = new SolidColorBrush(Colors.Red);
+ if (Country.Text == "") Country.BorderBrush = new SolidColorBrush(Colors.Red);
+ if (EmailAddress.Text == "") EmailAddress.BorderBrush = new SolidColorBrush(Colors.Red);
+ if (PhoneNumber.Text == "") PhoneNumber.BorderBrush = new SolidColorBrush(Colors.Red);
+ }
+ }
+}
diff --git a/France_Vacances/France_Vacances/View/CatalogView.xaml b/France_Vacances/France_Vacances/View/CatalogView.xaml
new file mode 100644
index 0000000..31af809
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/CatalogView.xaml
@@ -0,0 +1,124 @@
+<Page
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ xmlns:viewModel="using:France_Vacances.ViewModel"
+ x:Class="France_Vacances.View.CatalogView"
+ mc:Ignorable="d">
+
+ <!-- Main grid -->
+
+ <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
+
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="0.25*"/>
+ <ColumnDefinition Width="0.25*"/>
+ <ColumnDefinition Width="0.25*"/>
+ <ColumnDefinition Width="0.25*"/>
+ </Grid.ColumnDefinitions>
+
+ <Grid.DataContext>
+ <viewModel:SearchViewModel/>
+ </Grid.DataContext>
+
+ <!-- Mountains category -->
+
+ <Grid Grid.Column="0" Style="{StaticResource CategoryGridStyle}">
+
+ <Grid.RowDefinitions>
+ <RowDefinition Height="70"/>
+ <RowDefinition Height="160"/>
+ <RowDefinition/>
+ </Grid.RowDefinitions>
+
+ <TextBlock Style="{StaticResource CategoryLabelStyle}" Text="MOUNTAINS"/>
+ <TextBlock Style="{StaticResource CategoryDescriptionStyle}">
+ <Run Text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. "/>
+ <LineBreak/>
+ <Run Text="Sed volutpat tellus mi, imperdiet scelerisque risus consectetur a."/>
+ </TextBlock>
+ <ListView x:Name="MyListView" Grid.Row="2" ItemsSource="{Binding MountainRegions}" SelectedItem="{Binding SearchedAccommodationModel.Region, Mode=TwoWay}" IsItemClickEnabled="True" ItemClick="ListViewBase_OnItemClick">
+ <ListView.ItemContainerStyle>
+ <StaticResource ResourceKey="LocationStyle"/>
+ </ListView.ItemContainerStyle>
+ </ListView>
+ <Image Source="/Assets/Images/mountains.jpg" Style="{StaticResource CategoryBackgroundStyle}"/>
+ </Grid>
+
+
+ <!-- Sea category -->
+
+ <Grid Grid.Column="1" Style="{StaticResource CategoryGridStyle}">
+
+ <Grid.RowDefinitions>
+ <RowDefinition Height="70"/>
+ <RowDefinition Height="160"/>
+ <RowDefinition/>
+ </Grid.RowDefinitions>
+
+ <TextBlock Style="{StaticResource CategoryLabelStyle}" Text="SEA"/>
+ <TextBlock Style="{StaticResource CategoryDescriptionStyle}">
+ <Run Text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. "/>
+ <LineBreak/>
+ <Run Text="Sed volutpat tellus mi, imperdiet scelerisque risus consectetur a."/>
+ </TextBlock>
+ <ListView Grid.Row="2" ItemsSource="{Binding SeaRegions}" SelectedItem="{Binding SearchedAccommodationModel.Region, Mode=TwoWay}" IsItemClickEnabled="True" ItemClick="ListViewBase_OnItemClick">
+ <ListView.ItemContainerStyle>
+ <StaticResource ResourceKey="LocationStyle"/>
+ </ListView.ItemContainerStyle>
+ </ListView>
+ <Image Source="/Assets/Images/sea.jpg" Style="{StaticResource CategoryBackgroundStyle}"/>
+ </Grid>
+
+
+ <!-- Countryside category -->
+
+ <Grid Grid.Column="2" Style="{StaticResource CategoryGridStyle}">
+
+ <Grid.RowDefinitions>
+ <RowDefinition Height="70"/>
+ <RowDefinition Height="160"/>
+ <RowDefinition/>
+ </Grid.RowDefinitions>
+
+ <TextBlock Style="{StaticResource CategoryLabelStyle}" Text="COUNTRYSIDE"/>
+ <TextBlock Style="{StaticResource CategoryDescriptionStyle}">
+ <Run Text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. "/>
+ <LineBreak/>
+ <Run Text="Sed volutpat tellus mi, imperdiet scelerisque risus consectetur a."/>
+ </TextBlock>
+ <ListView Grid.Row="2" ItemsSource="{Binding CountrysideRegions}" SelectedItem="{Binding SearchedAccommodationModel.Region, Mode=TwoWay}" IsItemClickEnabled="True" ItemClick="ListViewBase_OnItemClick">
+ <ListView.ItemContainerStyle>
+ <StaticResource ResourceKey="LocationStyle"/>
+ </ListView.ItemContainerStyle>
+ </ListView>
+ <Image Source="/Assets/Images/countryside.jpg" Style="{StaticResource CategoryBackgroundStyle}"/>
+ </Grid>
+
+
+ <!-- Islands category -->
+
+ <Grid Grid.Column="3" Style="{StaticResource CategoryGridStyle}">
+
+ <Grid.RowDefinitions>
+ <RowDefinition Height="70"/>
+ <RowDefinition Height="160"/>
+ <RowDefinition/>
+ </Grid.RowDefinitions>
+
+ <TextBlock Style="{StaticResource CategoryLabelStyle}" Text="ISLANDS"/>
+ <TextBlock Style="{StaticResource CategoryDescriptionStyle}">
+ <Run Text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. "/>
+ <LineBreak/>
+ <Run Text="Sed volutpat tellus mi, imperdiet scelerisque risus consectetur a."/>
+ </TextBlock>
+ <ListView Grid.Row="2" ItemsSource="{Binding IslandRegions}" SelectedItem="{Binding SearchedAccommodationModel.Region, Mode=TwoWay}" IsItemClickEnabled="True" ItemClick="ListViewBase_OnItemClick">
+ <ListView.ItemContainerStyle>
+ <StaticResource ResourceKey="LocationStyle"/>
+ </ListView.ItemContainerStyle>
+ </ListView>
+ <Image Source="/Assets/Images/islands.jpg" Style="{StaticResource CategoryBackgroundStyle}"/>
+ </Grid>
+ </Grid>
+</Page> \ No newline at end of file
diff --git a/France_Vacances/France_Vacances/View/CatalogView.xaml.cs b/France_Vacances/France_Vacances/View/CatalogView.xaml.cs
new file mode 100644
index 0000000..de8045d
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/CatalogView.xaml.cs
@@ -0,0 +1,22 @@
+using System.Globalization;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Input;
+using France_Vacances.ViewModel;
+
+namespace France_Vacances.View
+{
+ public sealed partial class CatalogView
+ {
+ public CatalogView()
+ {
+ InitializeComponent();
+ MyListView.SelectedItem = null;
+ }
+
+ private void ListViewBase_OnItemClick(object sender, ItemClickEventArgs e)
+ {
+ Frame.Navigate(typeof(SearchView));
+ }
+ }
+}
diff --git a/France_Vacances/France_Vacances/View/CreateUserView.xaml b/France_Vacances/France_Vacances/View/CreateUserView.xaml
new file mode 100644
index 0000000..b8488db
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/CreateUserView.xaml
@@ -0,0 +1,88 @@
+<Page
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:local="using:France_Vacances.View"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ xmlns:ViewModel="using:France_Vacances.ViewModel"
+ x:Class="France_Vacances.View.CreateUserView"
+ mc:Ignorable="d">
+
+ <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
+ <Grid.DataContext>
+ <ViewModel:CreateUserViewModel/>
+ </Grid.DataContext>
+ <!-- Background Image Grid -->
+ <Grid Style="{StaticResource GridBackground}">
+ <ScrollViewer>
+ <Grid>
+
+ <Grid Style="{StaticResource CreateUserGrid}">
+ <Grid.RowDefinitions>
+ <RowDefinition Height="40"/>
+ <RowDefinition />
+ </Grid.RowDefinitions>
+ <TextBlock Style="{StaticResource CreateUserHeadlineStyle}" Text="Create User"/>
+ <Grid Grid.Row="1">
+
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="300"/>
+ <ColumnDefinition Width="300"/>
+ </Grid.ColumnDefinitions>
+
+ <!-- Input TextBlocks and Boxes -->
+ <StackPanel Style="{StaticResource CreateUserStackpanelLeft}">
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Username"/>
+ <TextBox Style="{StaticResource CreateUserTextBoxStyle}" Text="{Binding NewUser.UserName, Mode=TwoWay}"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Password"/>
+ <PasswordBox Style="{StaticResource CreateUserPasswordBoxStyle}" Password="{Binding NewUser.Password, Mode=TwoWay}"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Repeat Password"/>
+ <PasswordBox Style="{StaticResource CreateUserPasswordBoxStyle}" Password="{Binding RepeatedPassword, Mode=TwoWay}"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="First name"/>
+ <TextBox Style="{StaticResource CreateUserTextBoxStyle}" Text="{Binding NewUser.FirstName, Mode=TwoWay}"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Last name"/>
+ <TextBox Style="{StaticResource CreateUserTextBoxStyle}" Text="{Binding NewUser.LastName, Mode=TwoWay}"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Birth date"/>
+ <CalendarDatePicker Date="{Binding NewUser.BirthDate, Mode=TwoWay}"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Address"/>
+ <TextBox Style="{StaticResource CreateUserTextBoxStyle}" Text="{Binding NewUser.Address, Mode=TwoWay}"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="City"/>
+ <TextBox Style="{StaticResource CreateUserTextBoxStyle}" Text="{Binding NewUser.City, Mode=TwoWay}"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Country"/>
+ <TextBox Style="{StaticResource CreateUserTextBoxStyle}" Text="{Binding NewUser.Country, Mode=TwoWay}"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Postal code"/>
+ <TextBox Style="{StaticResource CreateUserTextBoxStyle}" Text="{Binding NewUser.PostalCode, Mode=TwoWay}"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="E-mail address"/>
+ <TextBox Style="{StaticResource CreateUserTextBoxStyle}" Text="{Binding NewUser.EmailAddress, Mode=TwoWay}"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Repeat e-mail address"/>
+ <TextBox Style="{StaticResource CreateUserTextBoxStyle}" Text="{Binding RepeatedEmail, Mode=TwoWay}"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Phone number"/>
+ <TextBox Style="{StaticResource CreateUserTextBoxStyle}" Text="{Binding NewUser.PhoneNumber, Mode=TwoWay}"/>
+ </StackPanel>
+
+ <!-- Error TextBlocks -->
+ <StackPanel Grid.Column="1" Style="{StaticResource CreateUserStackpanelRight}">
+ <TextBlock x:Name="UserNameError" Style="{StaticResource ErrorTextFontStyle}" Text="{Binding DisplayUserNameErrorText , Mode=TwoWay}" Visibility="{Binding DisplayUserNameVisibility}"/>
+ <TextBlock x:Name="PasswordError" Style="{StaticResource ErrorTextFontStyle}" Text="{Binding DisplayUserNameErrorText , Mode=TwoWay}" Visibility="{Binding DisplayUserNameVisibility}"/>
+ <TextBlock x:Name="PasswordRepeatError" Style="{StaticResource ErrorTextFontStyle}" Text="{Binding DisplayRePasswordErrorText , Mode=TwoWay}" Visibility="{Binding DisplayRePasswordVisibility}"/>
+ <TextBlock x:Name="FirstNameError" Style="{StaticResource ErrorTextFontStyle}" Text="{Binding DisplayFirstNameErrorText , Mode=TwoWay}" Visibility="{Binding DisplayFirstNameVisibility}"/>
+ <TextBlock x:Name="LastNameError" Style="{StaticResource ErrorTextFontStyle}" Text="{Binding DisplayLastNameErrorText , Mode=TwoWay}" Visibility="{Binding DisplayLastNameVisibility}"/>
+ <TextBlock x:Name="DOB" Style="{StaticResource ErrorTextFontStyle}" Text="" Visibility="{Binding DisplayFirstNameVisibility}"/>
+ <TextBlock x:Name="AddressError" Style="{StaticResource ErrorTextFontStyle}" Text="{Binding DisplayAddressErrorText , Mode=TwoWay}" Visibility="{Binding DisplayAdressVisibility}"/>
+ <TextBlock x:Name="CityError" Style="{StaticResource ErrorTextFontStyle}" Text="{Binding DisplayCityErrorText , Mode=TwoWay}" Visibility="{Binding DisplayCountryVisibility}"/>
+ <TextBlock x:Name="CountryError" Style="{StaticResource ErrorTextFontStyle}" Text="{Binding DisplayCountryErrorText , Mode=TwoWay}" Visibility="{Binding DisplayCountryVisibility}"/>
+ <TextBlock x:Name="PostcodeError" Style="{StaticResource ErrorTextFontStyle}" Text="{Binding DisplayPostCodeErrorText , Mode=TwoWay}" Visibility="{Binding DisplayPostCodeVisibility}"/>
+ <TextBlock x:Name="EmailError" Style="{StaticResource ErrorTextFontStyle}" Text="{Binding DisplayEmailErrorText , Mode=TwoWay}" Visibility="{Binding DisplayEmailVisibility}"/>
+ <TextBlock x:Name="ReEmailError" Style="{StaticResource ErrorTextFontStyle}" Text="{Binding DisplayReEmailErrorText , Mode=TwoWay}" Visibility="{Binding DisplayReEmailVisibility}"/>
+ <TextBlock x:Name="PhoneNrError" Style="{StaticResource ErrorTextFontStyle}" Text="{Binding DisplayPhoneErrorText , Mode=TwoWay}" Visibility="{Binding DisplayPhoneNrVisibility}"/>
+ </StackPanel>
+
+ <!-- Create User Button -->
+ <Button x:Name="Create" Grid.Column="1" Style="{StaticResource CreateButtonStyle}" Content="Create" Command="{Binding DoCreateNewUser}" Click="CreateNewUser_OnClick"/>
+ </Grid>
+ </Grid>
+ </Grid>
+ </ScrollViewer>
+ </Grid>
+ </Grid>
+</Page> \ No newline at end of file
diff --git a/France_Vacances/France_Vacances/View/CreateUserView.xaml.cs b/France_Vacances/France_Vacances/View/CreateUserView.xaml.cs
new file mode 100644
index 0000000..9b94234
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/CreateUserView.xaml.cs
@@ -0,0 +1,44 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Runtime.InteropServices.WindowsRuntime;
+using Windows.Foundation;
+using Windows.Foundation.Collections;
+using Windows.UI;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Controls.Primitives;
+using Windows.UI.Xaml.Data;
+using Windows.UI.Xaml.Input;
+using Windows.UI.Xaml.Media;
+using Windows.UI.Xaml.Navigation;
+
+// The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238
+
+namespace France_Vacances.View
+{
+ /// <summary>
+ /// An empty page that can be used on its own or navigated to within a Frame.
+ /// </summary>
+ public sealed partial class CreateUserView : Page
+ {
+ public CreateUserView()
+ {
+ this.InitializeComponent();
+ }
+
+
+ private void CreateNewUser_OnClick(object sender, RoutedEventArgs e)
+ {
+
+ //if (UserNameError.Visibility != Visibility.Collapsed)
+ //{
+ // Frame.Navigate(typeof(LoginView));
+ //}
+
+ }
+
+
+ }
+}
diff --git a/France_Vacances/France_Vacances/View/LoginView.xaml b/France_Vacances/France_Vacances/View/LoginView.xaml
new file mode 100644
index 0000000..542f325
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/LoginView.xaml
@@ -0,0 +1,38 @@
+<Page
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:local="using:France_Vacances.View"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ xmlns:ViewModel="using:France_Vacances.ViewModel"
+ x:Class="France_Vacances.View.LoginView"
+ mc:Ignorable="d">
+
+ <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
+ <Grid.DataContext>
+ <ViewModel:LoginUserViewModel/>
+ </Grid.DataContext>
+
+ <Grid Style="{StaticResource GridBackground}">
+
+ <Grid Style="{StaticResource LoginGrid}">
+ <TextBlock Style="{StaticResource LoginHeadlineStyle}" Text="Log In"/>
+ <StackPanel Style="{StaticResource LoginStackpanel}">
+ <TextBlock x:Name="LoginError" Style="{StaticResource LoginErrorTextBlockStyle}" Text="{Binding DisplayText}"/>
+ <TextBox x:Name="TxtBoxUserName" Style="{StaticResource LoginTextBoxStyle}" Text="{Binding LoginInfo.UserName , Mode=TwoWay}" PlaceholderText="Insert Username"/>
+ <PasswordBox x:Name="PsswrdLoginBox" Style="{StaticResource PasswordLoginStyle}" Password="{Binding LoginInfo.Password , Mode=TwoWay}"/>
+ </StackPanel>
+
+
+ <Button Style="{StaticResource RegisterHereButtonStyle}" Click="Button_Click">
+ <TextBlock Style="{StaticResource CreateUserFontStyle}">
+ <Underline>
+ <Run Text="Not yet a member, register here"/>
+ </Underline>
+ </TextBlock>
+ </Button>
+ <Button x:Name="LogInButton" Style="{StaticResource LoginButton}" Command="{Binding DoLogin}" Content="Log In"/>
+ </Grid>
+ </Grid>
+ </Grid>
+</Page>
diff --git a/France_Vacances/France_Vacances/View/LoginView.xaml.cs b/France_Vacances/France_Vacances/View/LoginView.xaml.cs
new file mode 100644
index 0000000..24c7631
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/LoginView.xaml.cs
@@ -0,0 +1,35 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Runtime.InteropServices.WindowsRuntime;
+using Windows.Foundation;
+using Windows.Foundation.Collections;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Controls.Primitives;
+using Windows.UI.Xaml.Data;
+using Windows.UI.Xaml.Input;
+using Windows.UI.Xaml.Media;
+using Windows.UI.Xaml.Navigation;
+
+// The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238
+
+namespace France_Vacances.View
+{
+ /// <summary>
+ /// An empty page that can be used on its own or navigated to within a Frame.
+ /// </summary>
+ public sealed partial class LoginView : Page
+ {
+ public LoginView()
+ {
+ this.InitializeComponent();
+ }
+
+ private void Button_Click(object sender, RoutedEventArgs e)
+ {
+ Frame.Navigate(typeof(CreateUserView));
+ }
+ }
+}
diff --git a/France_Vacances/France_Vacances/View/MainView.xaml b/France_Vacances/France_Vacances/View/MainView.xaml
new file mode 100644
index 0000000..fb8e1fb
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/MainView.xaml
@@ -0,0 +1,177 @@
+<Page
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ xmlns:controls="using:France_Vacances.Controls"
+ xmlns:viewModel="using:France_Vacances.ViewModel"
+ x:Class="France_Vacances.View.MainView"
+ mc:Ignorable="d">
+
+ <Page.Resources>
+ <Style x:Key="AnnouncementGridViewStyle" TargetType="GridView">
+ <Setter Property="Padding" Value="0,0,0,10"/>
+ <Setter Property="IsTabStop" Value="False"/>
+ <Setter Property="TabNavigation" Value="Once"/>
+ <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/>
+ <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Disabled"/>
+ <Setter Property="ScrollViewer.HorizontalScrollMode" Value="Enabled"/>
+ <Setter Property="ScrollViewer.IsHorizontalRailEnabled" Value="False"/>
+ <Setter Property="ScrollViewer.VerticalScrollMode" Value="Disabled"/>
+ <Setter Property="ScrollViewer.IsVerticalRailEnabled" Value="True"/>
+ <Setter Property="ScrollViewer.ZoomMode" Value="Disabled"/>
+ <Setter Property="ScrollViewer.IsDeferredScrollingEnabled" Value="False"/>
+ <Setter Property="ScrollViewer.BringIntoViewOnFocusChange" Value="True"/>
+ <Setter Property="IsSwipeEnabled" Value="True"/>
+ <Setter Property="ItemContainerTransitions">
+ <Setter.Value>
+ <TransitionCollection>
+ <AddDeleteThemeTransition/>
+ <ContentThemeTransition/>
+ <ReorderThemeTransition/>
+ <EntranceThemeTransition IsStaggeringEnabled="False"/>
+ </TransitionCollection>
+ </Setter.Value>
+ </Setter>
+ <Setter Property="ItemsPanel">
+ <Setter.Value>
+ <ItemsPanelTemplate>
+ <ItemsWrapGrid Orientation="Vertical"/>
+ </ItemsPanelTemplate>
+ </Setter.Value>
+ </Setter>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="GridView">
+ <Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}"
+ Background="{TemplateBinding Background}">
+ <ScrollViewer x:Name="ScrollViewer"
+ AutomationProperties.AccessibilityView="Raw"
+ BringIntoViewOnFocusChange="{TemplateBinding ScrollViewer.BringIntoViewOnFocusChange}"
+ HorizontalScrollMode="{TemplateBinding ScrollViewer.HorizontalScrollMode}"
+ HorizontalScrollBarVisibility="{TemplateBinding ScrollViewer.HorizontalScrollBarVisibility}"
+ IsHorizontalRailEnabled="{TemplateBinding ScrollViewer.IsHorizontalRailEnabled}"
+ IsHorizontalScrollChainingEnabled="{TemplateBinding ScrollViewer.IsHorizontalScrollChainingEnabled}"
+ IsVerticalScrollChainingEnabled="{TemplateBinding ScrollViewer.IsVerticalScrollChainingEnabled}"
+ IsVerticalRailEnabled="{TemplateBinding ScrollViewer.IsVerticalRailEnabled}"
+ IsDeferredScrollingEnabled="{TemplateBinding ScrollViewer.IsDeferredScrollingEnabled}"
+ TabNavigation="{TemplateBinding TabNavigation}"
+ VerticalScrollBarVisibility="{TemplateBinding ScrollViewer.VerticalScrollBarVisibility}"
+ VerticalScrollMode="{TemplateBinding ScrollViewer.VerticalScrollMode}"
+ ZoomMode="{TemplateBinding ScrollViewer.ZoomMode}">
+ <ItemsPresenter FooterTransitions="{TemplateBinding FooterTransitions}"
+ FooterTemplate="{TemplateBinding FooterTemplate}"
+ Footer="{TemplateBinding Footer}"
+ HeaderTemplate="{TemplateBinding HeaderTemplate}"
+ Header="{TemplateBinding Header}"
+ HeaderTransitions="{TemplateBinding HeaderTransitions}"
+ Padding="{TemplateBinding Padding}"/>
+ </ScrollViewer>
+ </Border>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+ </Page.Resources>
+
+ <!-- Main grid -->
+
+ <Grid Style="{StaticResource GridBackground}">
+
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="400"/>
+ <ColumnDefinition/>
+ </Grid.ColumnDefinitions>
+
+
+ <!-- Search form -->
+
+ <Grid Grid.Column="0" Margin="10" Padding="20,0" BorderBrush="#CCFFFFFF" BorderThickness="2">
+ <Grid.DataContext>
+ <viewModel:SearchViewModel/>
+ </Grid.DataContext>
+
+ <Grid.RowDefinitions>
+ <RowDefinition Height="100"/>
+ <RowDefinition Height="70"/>
+ <RowDefinition Height="70"/>
+ <RowDefinition Height="50"/>
+ <RowDefinition Height="50"/>
+ <RowDefinition Height="100"/>
+ </Grid.RowDefinitions>
+
+ <Grid.Background >
+ <SolidColorBrush Color="DodgerBlue"/>
+ </Grid.Background>
+
+ <TextBlock Grid.Row="0"
+ Text="Your dream holidays are here!"
+ FontSize="24"
+ TextWrapping="WrapWholeWords"
+ VerticalAlignment="Center"
+ Foreground="White"
+ FontWeight="Bold"/>
+ <StackPanel Grid.Row="1" Grid.ColumnSpan="2">
+ <TextBlock Text="Destination" Foreground="White"/>
+ <TextBox x:Name="DestinationTextBox" PlaceholderText="Where do you want to go?" Text="{Binding SearchedAccommodationModel.Region , Mode=TwoWay}" BorderBrush="#CCFFFFFF" IsSpellCheckEnabled="False"/>
+ </StackPanel>
+ <StackPanel Grid.Row="2" Orientation="Horizontal">
+ <StackPanel>
+ <TextBlock Text="Check-in" Foreground="White"/>
+ <CalendarDatePicker Date="{Binding SearchedStartDate, Mode=TwoWay}" HorizontalAlignment="Stretch" Margin="0,0,10,0" BorderBrush="#CCFFFFFF"/>
+ </StackPanel>
+ <StackPanel>
+ <TextBlock Text="Check-out" Foreground="White"/>
+ <CalendarDatePicker Date="{Binding SearchedEndDate, Mode=TwoWay}" HorizontalAlignment="Stretch" BorderBrush="#CCFFFFFF"/>
+ </StackPanel>
+ </StackPanel>
+ <StackPanel Grid.Row="3" Orientation="Horizontal">
+ <TextBlock Text="Persons" FontSize="20" Width="100" Foreground="White"/>
+ <ComboBox ItemsSource="{Binding Persons}" SelectedItem="{Binding SearchedAccommodationModel.Persons, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ </StackPanel>
+ <StackPanel Grid.Row="4" Orientation="Horizontal">
+ <TextBlock Text="Rooms" FontSize="20" Width="100" Foreground="White"/>
+ <ComboBox ItemsSource="{Binding Rooms}" SelectedItem="{Binding SearchedAccommodationModel.Rooms, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ </StackPanel>
+ <Button x:Name="FindAccommodationsButton" Grid.Row="5" Background="Gold" Width="250" Height="50" HorizontalAlignment="Right" Command="{Binding FindAccommodationModelsCommand}" Click="FindAccommodationsButton_OnClick" BorderBrush="#CCFFFFFF">
+ <Button.Content>
+ <TextBlock Text="Find accomodations" FontSize="20" Foreground="Black" FontWeight="Bold"/>
+ </Button.Content>
+ </Button>
+ </Grid>
+
+
+ <!-- Announcements -->
+
+ <controls:VariableGrid Grid.Column="1" ItemsSource="{Binding AnnouncementModels}" Style="{StaticResource AnnouncementGridViewStyle}" Margin="0,10">
+ <controls:VariableGrid.ItemTemplate>
+ <DataTemplate>
+ <Grid BorderBrush="Black" BorderThickness="1">
+ <Grid.RowDefinitions>
+ <RowDefinition/>
+ <RowDefinition Height="40"/>
+ <RowDefinition Height="15"/>
+ </Grid.RowDefinitions>
+
+ <Image Grid.Row="0" Grid.RowSpan="3" Source="{Binding BackgroundPath}" Stretch="UniformToFill" Canvas.ZIndex="-1" />
+ <TextBlock Grid.Row="1" Margin="10,0" Text="{Binding Content}" Foreground="White" FontSize="24"/>
+ <TextBlock Grid.Row="2" FontSize="10" Foreground="White" Opacity="0.7" HorizontalAlignment="Right">
+ <Run Text="Offer expires on "/>
+ <Run Text="{Binding ExpirationDateTime}"/>
+ </TextBlock>
+ </Grid>
+ </DataTemplate>
+ </controls:VariableGrid.ItemTemplate>
+
+ <controls:VariableGrid.ItemsPanel>
+ <ItemsPanelTemplate>
+ <VariableSizedWrapGrid ItemHeight="47" ItemWidth="50"/>
+ </ItemsPanelTemplate>
+ </controls:VariableGrid.ItemsPanel>
+
+ <controls:VariableGrid.DataContext>
+ <viewModel:AnnouncementViewModel/>
+ </controls:VariableGrid.DataContext>
+ </controls:VariableGrid>
+ </Grid>
+</Page> \ No newline at end of file
diff --git a/France_Vacances/France_Vacances/View/MainView.xaml.cs b/France_Vacances/France_Vacances/View/MainView.xaml.cs
new file mode 100644
index 0000000..b9dfa61
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/MainView.xaml.cs
@@ -0,0 +1,21 @@
+using Windows.UI;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Media;
+using France_Vacances.ViewModel;
+
+namespace France_Vacances.View
+{
+ public sealed partial class MainView
+ {
+ public MainView()
+ {
+ InitializeComponent();
+ }
+
+ private void FindAccommodationsButton_OnClick(object sender, RoutedEventArgs e)
+ {
+ if (DestinationTextBox.Text == "") DestinationTextBox.BorderBrush = new SolidColorBrush(Colors.Red);
+ else Frame.Navigate(typeof(SearchView));
+ }
+ }
+} \ No newline at end of file
diff --git a/France_Vacances/France_Vacances/View/SearchView.xaml b/France_Vacances/France_Vacances/View/SearchView.xaml
new file mode 100644
index 0000000..bf71828
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/SearchView.xaml
@@ -0,0 +1,140 @@
+<Page
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ xmlns:viewModel="using:France_Vacances.ViewModel"
+ x:Class="France_Vacances.View.SearchView"
+ mc:Ignorable="d">
+
+ <Grid Style="{StaticResource GridBackground}">
+
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition MinWidth="330" Width="99*"/>
+ <ColumnDefinition Width="221*"/>
+ </Grid.ColumnDefinitions>
+
+
+ <!-- Search form -->
+ <Grid Grid.Column="0" Margin="10,10,0,10" Padding="20" BorderBrush="#CCFFFFFF" BorderThickness="2">
+ <Grid.DataContext>
+ <viewModel:SearchViewModel/>
+ </Grid.DataContext>
+ <Grid.RowDefinitions>
+ <RowDefinition Height="100"/>
+ <RowDefinition Height="70"/>
+ <RowDefinition Height="70"/>
+ <RowDefinition Height="50"/>
+ <RowDefinition Height="50"/>
+ <RowDefinition Height="100"/>
+ </Grid.RowDefinitions>
+ <Grid.Background>
+ <SolidColorBrush Color="DodgerBlue"/>
+ </Grid.Background>
+
+ <TextBlock Grid.Row="0"
+ Text="Your dream holidays are here!"
+ FontSize="24"
+ TextWrapping="WrapWholeWords"
+ VerticalAlignment="Center"
+ Foreground="#F7FFFFFF"
+ FontWeight="Bold"/>
+ <StackPanel Grid.Row="1" Grid.ColumnSpan="2">
+ <TextBlock Text="Destination" Foreground="White"/>
+ <TextBox x:Name="DestinationTextBox" PlaceholderText="Where do you want to go?" Text="{Binding SearchedAccommodationModel.Region , Mode=TwoWay}" BorderBrush="#CCFFFFFF" IsSpellCheckEnabled="False"/>
+ </StackPanel>
+ <StackPanel Grid.Row="2" Orientation="Horizontal">
+ <StackPanel>
+ <TextBlock Text="Check-in" Foreground="White"/>
+ <CalendarDatePicker Date="{Binding SearchedStartDate, Mode=TwoWay}" HorizontalAlignment="Stretch" Margin="0,0,10,0" BorderBrush="#CCFFFFFF"/>
+ </StackPanel>
+ <StackPanel>
+ <TextBlock Text="Check-out" Foreground="White"/>
+ <CalendarDatePicker Date="{Binding SearchedEndDate, Mode=TwoWay}" HorizontalAlignment="Stretch" BorderBrush="#CCFFFFFF"/>
+ </StackPanel>
+ </StackPanel>
+ <StackPanel Grid.Row="3" Orientation="Horizontal">
+ <TextBlock Text="Persons" FontSize="20" Width="100" Foreground="White"/>
+ <ComboBox ItemsSource="{Binding Persons}" SelectedItem="{Binding SearchedAccommodationModel.Persons, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ </StackPanel>
+ <StackPanel Grid.Row="4" Orientation="Horizontal">
+ <TextBlock Text="Rooms" FontSize="20" Width="100" Foreground="White"/>
+ <ComboBox ItemsSource="{Binding Rooms}" SelectedItem="{Binding SearchedAccommodationModel.Rooms, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ </StackPanel>
+ <Button x:Name="FindAccommodationsButton" Grid.Row="5" Background="Gold" Width="250" Height="50" HorizontalAlignment="Right" Command="{Binding FindAccommodationModelsCommand}" Click="FindAccommodationsButton_OnClick" BorderBrush="#CCFFFFFF">
+ <Button.Content>
+ <TextBlock Text="Find accomodations" FontSize="20" Foreground="Black" FontWeight="Bold"/>
+ </Button.Content>
+ </Button>
+ </Grid>
+
+
+ <!-- Search results -->
+
+ <ListView x:Name="AccommodationsListView" Grid.Column="1" ItemsSource="{Binding ResultsCollection}" Margin="10,10,10,116" SelectionChanged="AccommodationsListView_OnSelectionChanged">
+
+
+ <ListView.ItemContainerStyle>
+ <Style TargetType="ListViewItem">
+ <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
+ </Style>
+ </ListView.ItemContainerStyle>
+ <ListView.DataContext>
+ <viewModel:SearchViewModel/>
+ </ListView.DataContext>
+ <ListView.ItemTemplate>
+ <DataTemplate>
+ <Grid Background="DodgerBlue" MinWidth="800" BorderBrush="#CCFFFFFF" BorderThickness="2" Margin="0,0,0,5">
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="160"/>
+ <ColumnDefinition />
+ </Grid.ColumnDefinitions>
+ <Grid Grid.Column="0" Background="Gray" BorderThickness="0,0,2,0" BorderBrush="#CCFFFFFF" >
+ <Image Source="{Binding Images[0]}" Stretch="Fill"/>
+ </Grid>
+ <Grid Grid.Column="1" Margin="3,3,3,3">
+ <Grid.RowDefinitions>
+ <RowDefinition />
+ <RowDefinition Height="30" />
+ <RowDefinition Height="92"/>
+ </Grid.RowDefinitions>
+ <Grid Margin="0,0,0,4">
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="61*"/>
+ <ColumnDefinition Width="23*"/>
+ </Grid.ColumnDefinitions>
+ <StackPanel Grid.Column="0" Orientation="Horizontal" HorizontalAlignment="Left">
+ <TextBlock Text="{Binding Name}" FontSize="28" TextWrapping="NoWrap" TextLineBounds="Tight" Foreground="White" FontWeight="Bold" Margin="0,3,3,0" />
+ <TextBlock TextLineBounds="Tight" Text="{Binding Stars}" Foreground="White" HorizontalAlignment="Left" Margin="0,0,2,0" VerticalAlignment="Center" />
+ </StackPanel>
+ <StackPanel Grid.Column="1" Orientation="Horizontal" HorizontalAlignment="Right">
+ <TextBlock TextLineBounds="Tight" Foreground="White" HorizontalAlignment="Right" Margin="0,0,2,0" VerticalAlignment="Center">Review score: <Run Text="{Binding ReviewScore}"/></TextBlock>
+ </StackPanel>
+ </Grid>
+ <Grid Grid.Row="1">
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition/>
+ <ColumnDefinition/>
+ </Grid.ColumnDefinitions>
+ <TextBlock Text="{Binding Region}" Foreground="White" TextLineBounds="Tight" HorizontalAlignment="Left" Margin="2,0,0,0"/>
+ <StackPanel Grid.Column="1" Orientation="Horizontal" HorizontalAlignment="Right" >
+ <TextBlock FontSize="40" Foreground="White" HorizontalAlignment="Right" Margin="0,0,2,0" TextLineBounds="Tight"><Run Text="{Binding Price}"/> €</TextBlock>
+ </StackPanel>
+ </Grid>
+ <Grid Grid.Row="2">
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="134*"/>
+ <ColumnDefinition Width="35*"/>
+ </Grid.ColumnDefinitions>
+ <TextBlock Grid.Column="0" FontSize="16" Text="{Binding Description}" Foreground="White" HorizontalAlignment="Left" Margin="0,3,5,0" TextWrapping="WrapWholeWords" />
+ <Grid Grid.Column="1">
+
+ </Grid>
+ </Grid>
+ </Grid>
+ </Grid>
+ </DataTemplate>
+ </ListView.ItemTemplate>
+ </ListView>
+ </Grid>
+</Page>
diff --git a/France_Vacances/France_Vacances/View/SearchView.xaml.cs b/France_Vacances/France_Vacances/View/SearchView.xaml.cs
new file mode 100644
index 0000000..3008b6c
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/SearchView.xaml.cs
@@ -0,0 +1,41 @@
+using System;
+using System.Linq.Expressions;
+using Windows.UI;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Media;
+using Windows.UI.Xaml.Media.Imaging;
+using France_Vacances.Model;
+using France_Vacances.ViewModel;
+
+namespace France_Vacances.View
+{
+ public sealed partial class SearchView
+
+ {
+ public SearchView()
+ {
+
+ InitializeComponent();
+
+ }
+
+ private void FindAccommodationsButton_OnClick(object sender, RoutedEventArgs e)
+ {
+ if (DestinationTextBox.Text == "") DestinationTextBox.BorderBrush = new SolidColorBrush(Colors.Red);
+ }
+
+
+
+ private void AccommodationsListView_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
+ {
+ AccommodationModel selectedAccommodationModel = (AccommodationModel)AccommodationsListView.SelectedItem;
+ if (selectedAccommodationModel != null)
+ {
+ AccommodationSingleton.SelectAcc(selectedAccommodationModel);
+ Frame.Navigate(typeof(AccommodationView));
+ }
+ AccommodationsListView.SelectedItem = null;
+ }
+ }
+}
diff --git a/France_Vacances/France_Vacances/View/UserView.xaml b/France_Vacances/France_Vacances/View/UserView.xaml
new file mode 100644
index 0000000..1836462
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/UserView.xaml
@@ -0,0 +1,64 @@
+<Page
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:local="using:France_Vacances.View"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ xmlns:ViewModel="using:France_Vacances.ViewModel"
+ x:Class="France_Vacances.View.UserView"
+ mc:Ignorable="d">
+
+ <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
+
+ <!-- Background Image Grid -->
+ <Grid Style="{StaticResource GridBackground}">
+ <ScrollViewer>
+ <Grid Background="Transparent">
+
+ <Grid Background="DodgerBlue" BorderBrush="#CCFFFFFF" MinWidth="400" BorderThickness="2" HorizontalAlignment="Center" VerticalAlignment="Center">
+
+ <Grid.RowDefinitions>
+ <RowDefinition />
+ <RowDefinition />
+
+ </Grid.RowDefinitions>
+ <Grid.DataContext>
+ <ViewModel:UserViewModel/>
+
+ </Grid.DataContext>
+ <TextBlock FontSize="32" Foreground="White" Text="My account" VerticalAlignment="Center" HorizontalAlignment="Center" FontWeight="Bold" Height="43" Width="173" Margin="0,20,0,0"/>
+ <Grid Grid.Row="1" Margin="0,0,0,100">
+ <StackPanel Margin="20,10,20,10" Grid.Column="0" HorizontalAlignment="Stretch">
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Username"/>
+ <TextBox x:Name="UserName" Text="{Binding DisplayedUser.UserName, Mode=TwoWay}" BorderBrush="#CCFFFFFF" IsReadOnly="True"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Password"/>
+ <PasswordBox x:Name="Password" Password="{Binding DisplayedUser.Password, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="First name"/>
+ <TextBox x:Name="FirstName" Text="{Binding DisplayedUser.FirstName, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Last name"/>
+ <TextBox x:Name="LastName" Text="{Binding DisplayedUser.LastName, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Birth date"/>
+ <CalendarDatePicker x:Name="BirthDate" Date="{Binding DisplayedUser.BirthDate, Mode=TwoWay}"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Address"/>
+ <TextBox x:Name="Adress" Text="{Binding DisplayedUser.Address, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="City"/>
+ <TextBox x:Name="City" Text="{Binding DisplayedUser.City, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Postal code"/>
+ <TextBox x:Name="PostalCode" Text="{Binding DisplayedUser.PostalCode, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Country"/>
+ <TextBox x:Name="Country" Text="{Binding DisplayedUser.Country, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="E-mail address"/>
+ <TextBox x:Name="EmailAddress" Text="{Binding DisplayedUser.EmailAddress, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ <TextBlock Style="{StaticResource CreateUserFontStyle}" Text="Phone number"/>
+ <TextBox x:Name="PhoneNumber" Text="{Binding DisplayedUser.PhoneNumber, Mode=TwoWay}" BorderBrush="#CCFFFFFF"/>
+ </StackPanel>
+
+
+ </Grid>
+ <Button Grid.Row="1" FontSize="20" FontWeight="Bold" Margin="20,0,20,20" Content="Save" Background="Gold" Width="250" Height="50" HorizontalAlignment="Right" BorderBrush="#CCFFFFFF" VerticalAlignment="Bottom" Command="{Binding SaveUserInfoCommand}"/>
+ </Grid>
+ </Grid>
+ </ScrollViewer>
+ </Grid>
+ </Grid>
+</Page>
diff --git a/France_Vacances/France_Vacances/View/UserView.xaml.cs b/France_Vacances/France_Vacances/View/UserView.xaml.cs
new file mode 100644
index 0000000..0fa0b6e
--- /dev/null
+++ b/France_Vacances/France_Vacances/View/UserView.xaml.cs
@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Runtime.InteropServices.WindowsRuntime;
+using Windows.Foundation;
+using Windows.Foundation.Collections;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Controls.Primitives;
+using Windows.UI.Xaml.Data;
+using Windows.UI.Xaml.Input;
+using Windows.UI.Xaml.Media;
+using Windows.UI.Xaml.Navigation;
+
+// The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238
+
+namespace France_Vacances.View
+{
+ /// <summary>
+ /// An empty page that can be used on its own or navigated to within a Frame.
+ /// </summary>
+ public sealed partial class UserView : Page
+ {
+ public UserView()
+ {
+ this.InitializeComponent();
+ }
+ }
+}