<UserControl x:Class="IceCreamKiosk.Controls.IceCreamDetailsControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:IceCreamKiosk.Controls"
xmlns:converters="clr-namespace:IceCreamKiosk.Converters"
xmlns:m="clr-namespace:Microsoft.Maps.MapControl.WPF;assembly=Microsoft.Maps.MapControl.WPF"
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
DataContext="{Binding Source={StaticResource Locator}, Path=IceCreamDetails}"
mc:Ignorable="d"
d:DesignHeight="5480" d:DesignWidth="1100">
<Grid>
<materialDesign:DialogHost BorderBrush="{DynamicResource MaterialDesignDivider}">
<materialDesign:DialogHost.DialogContent >
<Grid HorizontalAlignment="Center">
<StackPanel Margin="15">
<Image Grid.Column="0" Width="150" Height="150" Margin="2" Source="{Binding QrImage}"></Image>
<TextBlock Foreground="Gray" Width="200" Margin="15 5" HorizontalAlignment="Center" TextWrapping="Wrap">
scan to your phone
</TextBlock>
<Button Command="{x:Static materialDesign:DialogHost.CloseDialogCommand}" Style="{DynamicResource MaterialDesignFlatButton}" Margin="4" VerticalAlignment="Center">
accept
</Button>
</StackPanel>
</Grid>
</materialDesign:DialogHost.DialogContent>
<Grid>
<Grid.Resources>
<converters:SocailMediaUrlToIconConverter x:Key="SocailMediaUrlToIcon"/>
</Grid.Resources>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<materialDesign:TransitioningContent Margin=" 0 0 30 0" OpeningEffect="{materialDesign:TransitionEffect SlideInFromLeft, Duration=0:0:1.2}">
<StackPanel>
<GroupBox Header="Ice cream details" Grid.Column="1" Height="300" Width="420" Style="{DynamicResource MaterialDesignCardGroupBox}">
<GroupBox.HeaderTemplate>
<DataTemplate>
<DockPanel LastChildFill="False" >
<TextBlock Style="{StaticResource MaterialDesignHeadlineTextBlock}" DockPanel.Dock="Left" Margin="0,0,10,0" VerticalAlignment="Center" FontWeight="Bold" Text="{Binding}" />
<materialDesign:PackIcon DockPanel.Dock="Right" Kind="IceCream" Height="32" Width="32" VerticalAlignment="Center" />
</DockPanel>
</DataTemplate>
</GroupBox.HeaderTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="auto"/>
</Grid.ColumnDefinitions>
<DockPanel>
<TextBlock TextWrapping="Wrap" DockPanel.Dock="Top" Style="{StaticResource MaterialDesignTitleTextBlock}"
Text="{Binding IceCream.Description}" VerticalAlignment="Top"/>
</DockPanel>
<StackPanel Grid.Column="1">
<Image Height="180" Width="180" Margin="5" Stretch="UniformToFill" ToolTip="{Binding IceCream.Name}" >
<Image.Source>
<Binding Path="IceCream.Image" >
<Binding.TargetNullValue>
<ImageSource>pack://application:,,,/Assets/no-image-icon.png</ImageSource>
</Binding.TargetNullValue>
</Binding>
</Image.Source>
</Image>
<materialDesign:Badged HorizontalAlignment="Center" Margin="0 10 0 0" Badge="{materialDesign:PackIcon STAR}" BadgeColorZoneMode="Light" >
<Button Content="RATE ME" Style="{StaticResource MaterialDesignRaisedAccentButton}" BorderBrush="Gold" Background="Gold" Command="{Binding RateCommand}"/>
</materialDesign:Badged>
</StackPanel>
</Grid>
</GroupBox>
<Expander x:Name="NutriExpender" HorizontalAlignment="Stretch" IsExpanded="False" >
<Expander.Style>
<Style TargetType="{x:Type Expander}" BasedOn="{StaticResource MaterialDesignExpander}">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=ReviewExpender, Path=IsExpanded}" Value="True">
<Setter Property="IsExpanded" Value="False"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Expander.Style>
<Expander.Header >
<DockPanel LastChildFill="False">
<TextBlock DockPanel.Dock="Right" VerticalAlignment="Center" Style="{StaticResource MaterialDesignSubheadingTextBlock}" Text="Nutrients per 100g" />
<materialDesign:PackIcon DockPanel.Dock="Left" Kind="TagTextOutline" Height="32" Width="32" VerticalAlignment="Center" />
</DockPanel>
</Expander.Header>
<ScrollViewer MaxHeight="120">
<StackPanel Width="300">
<DockPanel Margin="0 10" LastChildFill="False">
<TextBlock DockPanel.Dock="Left" Text="Energy"/>
<TextBlock DockPanel.Dock="Right" Text="kcal"/>
<TextBlock DockPanel.Dock="Right" Margin="5 0" Text="{Binding IceCream.Nutrients.Energy}"/>
</DockPanel>
<DockPanel Margin="0 10" LastChildFill="False">
<TextBlock DockPanel.Dock="Left" Text="Carbohydrate"/>
<TextBlock DockPanel.Dock="Right" Text="g"/>
<TextBlock Margin="5 0" DockPanel.Dock="Right" Text="{Binding IceCream.Nutrients.Carbohydrate}"/>
</DockPanel>
<DockPanel Margin="0 10" LastChildFill="False">
<TextBlock DockPanel.Dock="Left" Text="TotalFat"/>
<TextBlock DockPanel.Dock="Right" Text="g"/>
<TextBlock DockPanel.Dock="Right" Margin="5 0" Text="{Binding IceCream.Nutrients.TotalFat}"/>
</DockPanel>
<DockPanel Margin="0 10" LastChildFill="False">
<TextBlock DockPanel.Dock="Left" Text="Cholesterol"/>
<TextBlock DockPanel.Dock="Right" Text="mg"/>
<TextBlock DockPanel.Dock="Right" Margin="5 0" Text="{Binding IceCream.Nutrients.Cholesterol}"/>
</DockPanel>
<DockPanel Margin="0 10" LastChildFill="False">
<TextBlock DockPanel.Dock="Left" Text="Sugars"/>
<TextBlock DockPanel.Dock="Right" Text="g"/>
<TextBlock DockPanel.Dock="Right" Margin="5 0" Text="{Binding IceCream.Nutrients.Sugars}"/>
</DockPanel>
<DockPanel Margin="0 10" LastChildFill="False">
<TextBlock DockPanel.Dock="Left" Text="Protein"/>
<TextBlock DockPanel.Dock="Right" Text="g"/>
<TextBlock DockPanel.Dock="Right" Margin="5 0" Text="{Binding IceCream.Nutrients.Protein}"/>
</DockPanel>
<DockPanel Margin="0 10" LastChildFill="False">
<TextBlock DockPanel.Dock="Left" Text="Fiber"/>
<TextBlock DockPanel.Dock="Right" Text="g"/>
<TextBlock DockPanel.Dock="Right" Margin="5 0" Text="{Binding IceCream.Nutrients.Fiber}"/>
</DockPanel>
</StackPanel>
</ScrollViewer>
</Expander>
<Expander x:Name="ReviewExpender" IsExpanded="False" HorizontalAlignment="Stretch" >
<Expander.Style>
<Style TargetType="{x:Type Expander}" BasedOn="{StaticResource MaterialDesignExpander}">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=NutriExpender, Path=IsExpanded}" Value="False">
<Setter Property="IsExpanded" Value="True"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Expander.Style>
<Expander.Header>
<DockPanel LastChildFill="False" >
<TextBlock DockPanel.Dock="Right" VerticalAlignment="Center" Style="{StaticResource MaterialDesignSubheadingTextBlock}" Text="Reviews" />
<materialDesign:RatingBar Foreground="#fdd835" Background="#fdd835" Value="{Binding IceCream.Rate}" IsReadOnly="True" x:Name="ReadOnlyRatingBar" />
<TextBlock DockPanel.Dock="Left" Text="{Binding IceCream.Rate, StringFormat=N2}" Margin="10 0 0 0" VerticalAlignment="Center" />
</DockPanel>
</Expander.Header>
<ScrollViewer MaxHeight="150">
<ListBox Focusable="False" ItemsSource="{Binding IceCream.Reviews}" >
<ListBox.ItemTemplate>
<DataTemplate>
<materialDesign:Card Height="90" Margin="5" Padding="4"
materialDesign:ShadowAssist.ShadowDepth="Depth1" Background="#FFC3FFC3" >
<StackPanel Orientation="Horizontal">
<materialDesign:RatingBar Foreground="#fdd835" Value="{Binding Rate}" IsReadOnly="True" x:Name="ReadOnlyRatingBar" />
<TextBlock TextWrapping="Wrap" Margin="20 10" Text="{Binding Message, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" TextAlignment="Center"/>
<Image Margin="2" Grid.Column="2" Source="{Binding Image}" Height="45" Width="45"/>
</StackPanel>
</materialDesign:Card>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</ScrollViewer>
</Expander>
</StackPanel>
</materialDesign:TransitioningContent>
<materialDesign:TransitioningContent Margin="80 0 20 0" Grid.Column="1" OpeningEffect="{materialDesign:TransitionEffect SlideInFromRight, Duration=0:0:1.2}">
<materialDesign:Card MaxWidth="600" >
<GroupBox Height="600" VerticalAlignment="Top" Grid.Column="1" Header="{Binding IceCream.Shop.Name}" Style="{DynamicResource MaterialDesignGroupBox}">
<GroupBox.HeaderTemplate>
<DataTemplate>
<DockPanel LastChildFill="False" >
<TextBlock Style="{StaticResource MaterialDesignHeadlineTextBlock}" DockPanel.Dock="Left" Margin="0" VerticalAlignment="Center" FontWeight="Bold" Text="{Binding}" />
<materialDesign:PackIcon DockPanel.Dock="Right" Kind="Store" Height="32" Width="32" VerticalAlignment="Center" />
</DockPanel>
</DataTemplate>
</GroupBox.HeaderTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
</Grid.RowDefinitions>
<Grid >
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Image Grid.Column="1" Margin="2" Height="180" >
<Image.Source>
<Binding Path="IceCream.Shop.Image" >
<Binding.TargetNullValue>
<ImageSource >pack://application:,,,/Assets/no-image-icon.png</ImageSource>
</Binding.TargetNullValue>
</Binding>
</Image.Source>
</Image>
<StackPanel Grid.Column="0" Margin="5" >
<StackPanel Margin="0 7" VerticalAlignment="Center" Orientation="Horizontal" >
<materialDesign:PackIcon VerticalAlignment="Center" Kind="PhoneClassic" />
<TextBlock Style="{StaticResource MaterialDesignSubheadingTextBlock}" Margin="5 0 5 0" Text="{Binding IceCream.Shop.PhoneNumber}"/>
</StackPanel>
<StackPanel Margin="0 7" VerticalAlignment="Center" Orientation="Horizontal" >
<materialDesign:PackIcon VerticalAlignment="Center" Kind="HouseMapMarker" />
<TextBlock x:Name="shopAddress" Style="{StaticResource MaterialDesignSubheadingTextBlock}" Margin="5 0 5 0" Text="{Binding IceCream.Shop.Address}"/>
</StackPanel>
<StackPanel Margin="0 7" VerticalAlignment="Center" Orientation="Horizontal" Hyperlink.Click="WebSiteLink_Click" >
<Button Height="24" Width="24" Style="{StaticResource MaterialDesignFloatingActionMiniAccentButton}" ToolTip="Website">
<materialDesign:PackIcon Kind="Web" />
</Button>
<TextBlock Style="{StaticResource MaterialDesignSubheadingTextBlock}" Margin="5 0 5 0" Text="{Binding IceCream.Shop.WebSiteLink}" />
</StackPanel>
<StackPanel Margin="0 7" VerticalAlignment="Center" Orientation="Horizontal" Hyperlink.Click="socialwebLink_Click" >
<Button Height="24" Width="24" Style="{StaticResource MaterialDesignFloatingActionMiniAccentButton}" ToolTip="MaterialDesignFloatingActionMiniAccentButton">
<materialDesign:PackIcon VerticalAlignment="Center" Kind="{Binding IceCream.Shop.SocialMediaLink, Converter={StaticResource SocailMediaUrlToIcon}}" />
</Button>
<TextBlock x:Name="SocailMediaLink" Style="{StaticResource MaterialDesignSubheadingTextBlock}" Margin="5 0 5 0" Text="{Binding IceCream.Shop.SocialMediaLink}" />
</StackPanel>
<StackPanel Margin="0 7" VerticalAlignment="Center" Orientation="Horizontal" >
<Button Margin="30 0" Height="30" Width="30" x:Name="wazeButton" Style="{StaticResource MaterialDesignFloatingActionMiniAccentButton}" ToolTip="WAZE" Click="wazeButton_Click">
<Image Source="waze.png" />
</Button>
<Button Height="30" Width="30" Command="{x:Static materialDesign:DialogHost.OpenDialogCommand}" Style="{StaticResource MaterialDesignFloatingActionMiniAccentButton}" ToolTip="RQ Map" >
<materialDesign:PackIcon VerticalAlignment="Center" Kind="QrcodeScan" />
</Button>
</StackPanel>
</StackPanel>
</Grid>
<Grid Grid.Row="1">
<m:Map x:Name="Map" Margin="0 2 0 0" Height="300" ZoomLevel="16" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
CredentialsProvider="{Binding BingMapsKey}" ScaleVisibility="Collapsed" >
<m:Map.Resources>
<Style TargetType="m:Pushpin" x:Key="LabelPushpinStyle">
<Setter Property="OverridesDefaultStyle" Value="true" />
<Setter Property="PositionOrigin" Value="Center" />
<Setter Property="Background" Value="Transparent" />
<Setter Property="BorderBrush" Value="Transparent" />
<Setter Property="BorderThickness" Value="0" />
</Style>
</m:Map.Resources>
<m:MapItemsControl ItemsSource="{Binding Route , Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
<m:MapItemsControl ItemsSource="{Binding Locations}">
<m:MapItemsControl.ItemTemplate>
<DataTemplate>
<m:Pushpin Location="{Binding BingLocation }" Content="{Binding Address}" Style="{StaticResource LabelPushpinStyle}">
<m:Pushpin.Template>
<ControlTemplate >
<Canvas >
<Border Canvas.Left="30" Canvas.Top="-20" Width="100" Height="52"
Background="WhiteSmoke" Opacity="1" >
<Border.Effect>
<DropShadowEffect Color="LightGray" />
</Border.Effect>
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<TextBlock Margin="4 0" Text="{Binding Name}" FontSize="12" />
<TextBlock Margin="4 0" TextWrapping="Wrap" Text="{Binding Address}" FontSize="12" />
</StackPanel>
</Border>
<Path Data="M0,0 30,-12 30,-20 130,-20 130,32 30,32 30,-20" StrokeThickness="2" Stroke="DimGray" />
<Ellipse Canvas.Top="-4" Canvas.Left="-4" Width="8" Height="8" Fill="DarkOrange" Stroke="DimGray" />
</Canvas>
</ControlTemplate>
</m:Pushpin.Template>
</m:Pushpin>
</DataTemplate>
</m:MapItemsControl.ItemTemplate>
</m:MapItemsControl>
</m:Map>
<DockPanel LastChildFill="False" HorizontalAlignment="Stretch">
<StackPanel DockPanel.Dock="Left" Margin="0 2 0 0" Background="#bbdefb" VerticalAlignment="Top" HorizontalAlignment="Left" Orientation="Horizontal" >
<RadioButton Command="{Binding FindWalkRoute}" Style="{StaticResource MaterialDesignTabRadioButton}" Margin="4" IsChecked="True">
<materialDesign:PackIcon Kind="Walk" />
</RadioButton>
<RadioButton Command="{Binding FindCarRoute}" Style="{StaticResource MaterialDesignTabRadioButton}" Margin="4" IsChecked="False" >
<materialDesign:PackIcon Kind="CarBack" />
</RadioButton>
</StackPanel>
</DockPanel>
</Grid>
</Grid>
</GroupBox>
</materialDesign:Card>
</materialDesign:TransitioningContent>
<Button Grid.Row="1" Command="{x:Static materialDesign:Transitioner.MovePreviousCommand}"
HorizontalAlignment="Left" VerticalAlignment="Bottom" Margin="-200 0 0 0" Style="{StaticResource MaterialDesignFloatingActionLightButton}">
<materialDesign:PackIcon Kind="StepBackward" Height="24" Width="24" />
</Button>
<!--<Button Grid.Row="1" FontSize="45" Width="76" Height="76" Command="{x:Static materialDesign:Transitioner.MoveFirstCommand}"
HorizontalAlignment="Left" VerticalAlignment="Bottom" Margin="38 45 45 120"
Style="{StaticResource MaterialDesignFloatingActionAccentButton}">
<materialDesign:PackIcon Kind="Home" Height="36" Width="36" />
</Button>-->
</Grid>
</materialDesign:DialogHost>
</Grid>
</UserControl>