mirror of
https://dev.azure.com/TeilRad/sharee.bike%20App/_git/Code
synced 2025-04-19 03:27:29 +02:00
Version 3.0.363
This commit is contained in:
parent
4ff3307997
commit
91d42552c7
212 changed files with 1799 additions and 1318 deletions
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="internalOnly" package="com.hauffware.sharee" android:versionName="3.0.362" android:versionCode="362">
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="internalOnly" package="com.hauffware.sharee" android:versionName="3.0.363" android:versionCode="363">
|
||||
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="31" />
|
||||
<!-- Google Maps related permissions -->
|
||||
<!-- Permission to receive remote notifications from Google Play Services -->
|
||||
|
|
|
@ -56,8 +56,8 @@
|
|||
<key>CFBundleDisplayName</key>
|
||||
<string>sharee.bike</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>362</string>
|
||||
<string>363</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>3.0.362</string>
|
||||
<string>3.0.363</string>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
|
@ -32,7 +32,11 @@
|
|||
|
||||
<!--Info in Circle-->
|
||||
<x:String x:Key="InfoCircle"></x:String>
|
||||
|
||||
|
||||
<!--AaAbRideType-->
|
||||
<x:String x:Key="LocationPin"></x:String>
|
||||
<x:String x:Key="ArrowReturnBack"></x:String>
|
||||
|
||||
<!-- Add more resources here -->
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<!-- Add more resource dictionaries here -->
|
||||
|
|
|
@ -25,77 +25,158 @@
|
|||
Orientation="Vertical"
|
||||
Padding="10">
|
||||
|
||||
<!-- Icons, Name, ID -->
|
||||
<Grid Padding="0,0,5,10"
|
||||
<!-- Icons, Name, ID, ... -->
|
||||
<Grid
|
||||
Padding="0"
|
||||
RowSpacing="15"
|
||||
ColumnSpacing="5"
|
||||
ColumnDefinitions="Auto,Auto,*"
|
||||
RowDefinitions="Auto,Auto">
|
||||
RowDefinitions="Auto,Auto,Auto">
|
||||
|
||||
<!-- Icon of the bike -->
|
||||
<!-- Bike image -->
|
||||
<Image
|
||||
Grid.Column="0"
|
||||
Grid.Row="0"
|
||||
Grid.RowSpan="2"
|
||||
Source="{Binding DisplayedBikeImageSourceString}"
|
||||
HeightRequest="60"
|
||||
Aspect="AspectFit"
|
||||
HorizontalOptions="Start"
|
||||
VerticalOptions="End"/>
|
||||
Grid.Column="0"
|
||||
Grid.Row="0"
|
||||
Grid.RowSpan="2"
|
||||
VerticalOptions="End"
|
||||
Source="{Binding DisplayedBikeImageSourceString}"
|
||||
HeightRequest="60"
|
||||
Aspect="AspectFit"/>
|
||||
|
||||
<!-- Battery level -->
|
||||
<!-- Battery level image -->
|
||||
<sharedGui:BarLevelView
|
||||
Grid.Column="1"
|
||||
Grid.Row="1"
|
||||
Current="{Binding CurrentChargeBars}"
|
||||
Maximum="{Binding MaxChargeBars}"
|
||||
VerticalOptions="End"
|
||||
IsVisible="{Binding IsBatteryChargeVisible}"/>
|
||||
Grid.Column="1"
|
||||
Grid.Row="0"
|
||||
Grid.RowSpan="2"
|
||||
VerticalOptions="End"
|
||||
Current="{Binding CurrentChargeBars}"
|
||||
Maximum="{Binding MaxChargeBars}"
|
||||
IsVisible="{Binding IsBatteryChargeVisible}"/>
|
||||
|
||||
<!-- Name of the bike -->
|
||||
<Label
|
||||
<!-- Rental state and error -->
|
||||
<StackLayout
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2"
|
||||
Grid.Row="2"
|
||||
Spacing="0"
|
||||
Orientation="Vertical"
|
||||
HorizontalOptions="Start"
|
||||
VerticalOptions="End">
|
||||
|
||||
<!-- Rental state -->
|
||||
<Label
|
||||
Text="{Binding StateText}"
|
||||
FontSize="Small"
|
||||
TextColor="{Binding StateColor}"/>
|
||||
|
||||
<!-- Rental state error info -->
|
||||
<Label
|
||||
Text="{Binding ErrorText}"
|
||||
FontSize="Small"
|
||||
IsVisible="{Binding ErrorText, Converter={StaticResource Label_Converter}}"
|
||||
TextColor="Red"/>
|
||||
|
||||
</StackLayout>
|
||||
|
||||
<!-- Name and Id of the bike -->
|
||||
<StackLayout
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="2"
|
||||
Grid.Row="0"
|
||||
FontAttributes="Bold"
|
||||
FontSize="Large"
|
||||
HorizontalTextAlignment="Right"
|
||||
Text="{Binding Name}"/>
|
||||
Orientation="Vertical"
|
||||
VerticalOptions="Start"
|
||||
HorizontalOptions="End"
|
||||
Spacing="0">
|
||||
|
||||
<!-- Name -->
|
||||
<Label
|
||||
FontAttributes="Bold"
|
||||
FontSize="Large"
|
||||
TextColor="Black"
|
||||
HorizontalTextAlignment="Right"
|
||||
Text="{Binding Name}"/>
|
||||
|
||||
<!-- Id of the bike -->
|
||||
<Label
|
||||
<!-- Id -->
|
||||
<Label
|
||||
TextColor="DimGray"
|
||||
FontAttributes="Bold"
|
||||
HorizontalTextAlignment="Right"
|
||||
IsVisible="{Binding DisplayId, Converter={StaticResource Label_Converter}}"
|
||||
Text="{Binding DisplayId}"/>
|
||||
|
||||
</StackLayout>
|
||||
|
||||
<!-- AaAbRideType -->
|
||||
<StackLayout
|
||||
Grid.Column="2"
|
||||
Grid.Row="1"
|
||||
FontAttributes="Bold"
|
||||
HorizontalTextAlignment="Right"
|
||||
IsVisible="{Binding DisplayId, Converter={StaticResource Label_Converter}}"
|
||||
Text="{Binding DisplayId}"/>
|
||||
Grid.RowSpan="2"
|
||||
Spacing="0"
|
||||
HorizontalOptions="End"
|
||||
VerticalOptions="End"
|
||||
IsVisible="{Binding AaRideType}">
|
||||
<StackLayout
|
||||
Orientation="Horizontal"
|
||||
HorizontalOptions="End">
|
||||
<Image>
|
||||
<Image.Source>
|
||||
<FontImageSource
|
||||
Glyph="{StaticResource LocationPin}"
|
||||
Color="Black"
|
||||
FontFamily="FA-S"
|
||||
Size="20"/>
|
||||
</Image.Source>
|
||||
</Image>
|
||||
<Image>
|
||||
<Image.Source>
|
||||
<FontImageSource
|
||||
Glyph="{StaticResource ArrowReturnBack}"
|
||||
Color="Black"
|
||||
FontFamily="FA-S"
|
||||
Size="20"/>
|
||||
</Image.Source>
|
||||
</Image>
|
||||
<Button
|
||||
Command="{Binding ShowRideTypeInfoCommand}"
|
||||
WidthRequest="24"
|
||||
HeightRequest="24"
|
||||
BackgroundColor="Transparent"
|
||||
BorderWidth="0"
|
||||
Padding="0"
|
||||
Margin="5,0,0,0">
|
||||
<Button.ImageSource>
|
||||
<FontImageSource
|
||||
Glyph="{StaticResource InfoCircle}"
|
||||
Color="DimGray"
|
||||
FontFamily="FA-S"
|
||||
Size="20"/>
|
||||
</Button.ImageSource>
|
||||
</Button>
|
||||
</StackLayout>
|
||||
<Label
|
||||
Text= "{Binding StationId}"
|
||||
FontSize="Small"
|
||||
HorizontalOptions="End"/>
|
||||
</StackLayout>
|
||||
|
||||
</Grid>
|
||||
|
||||
<!-- Rental state -->
|
||||
<Label
|
||||
Text="{Binding StateText}"
|
||||
TextColor="{Binding StateColor}"/>
|
||||
<Label
|
||||
Text="{Binding ErrorText}"
|
||||
IsVisible="{Binding ErrorText, Converter={StaticResource Label_Converter}}"
|
||||
TextColor="Red"/>
|
||||
<!-- Buttons -->
|
||||
<Button
|
||||
Text="{Binding ButtonText}"
|
||||
IsVisible="{Binding IsButtonVisible}"
|
||||
Command="{Binding OnButtonClicked}"/>
|
||||
<Button
|
||||
Style="{StaticResource SecondaryButton}"
|
||||
Text="{Binding LockitButtonText}"
|
||||
IsVisible="{Binding IsLockitButtonVisible}"
|
||||
Command="{Binding OnLockitButtonClicked}"/>
|
||||
|
||||
<!-- Buttons -->
|
||||
<Button
|
||||
Text="{Binding ButtonText}"
|
||||
IsVisible="{Binding IsButtonVisible}"
|
||||
Command="{Binding OnButtonClicked}"/>
|
||||
<Button
|
||||
Style="{StaticResource SecondaryButton}"
|
||||
Text="{Binding LockitButtonText}"
|
||||
IsVisible="{Binding IsLockitButtonVisible}"
|
||||
Command="{Binding OnLockitButtonClicked}"/>
|
||||
|
||||
<!-- Rental description (tarif name, options and rental info -->
|
||||
<Grid
|
||||
RowSpacing="0"
|
||||
IsVisible="{Binding TariffDescription.Header, Converter={StaticResource Label_Converter}}">
|
||||
<Grid.RowDefinitions>
|
||||
<!-- Rental description (tarif name, options and rental info -->
|
||||
<Grid
|
||||
RowSpacing="0"
|
||||
IsVisible="{Binding TariffDescription.Header, Converter={StaticResource Label_Converter}}">
|
||||
<Grid.RowDefinitions>
|
||||
<!-- start tarif- entries -->
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
|
@ -113,59 +194,58 @@
|
|||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Grid.ColumnDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<!-- start tarif- entries (should be a CollectionView) -->
|
||||
<Label
|
||||
Text= "{x:Static resources:AppResources.MessageBikesManagementTariffDescriptionTariffHeader}"
|
||||
IsVisible="{Binding TariffDescription.Header, Converter={StaticResource Label_Converter}}"
|
||||
Grid.Row="0"
|
||||
FontAttributes="Bold"/>
|
||||
<Label
|
||||
Text="{Binding TariffDescription.Header}"
|
||||
IsVisible="{Binding TariffDescription.Header, Converter={StaticResource Label_Converter}}"
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
FontAttributes="Bold"/>
|
||||
|
||||
<!--Tracking-->
|
||||
<Grid
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="2"
|
||||
ColumnDefinitions="*,Auto"
|
||||
IsVisible="{Binding TariffDescription.TrackingInfoText, Converter={StaticResource Label_Converter}}">
|
||||
<Label
|
||||
Text= "Tracking"
|
||||
FontAttributes="Bold"
|
||||
Grid.Column="0"
|
||||
HorizontalOptions="End"/>
|
||||
<Button
|
||||
Command="{Binding ShowTrackingInfoCommand}"
|
||||
WidthRequest="24"
|
||||
HeightRequest="24"
|
||||
BackgroundColor="Transparent"
|
||||
BorderWidth="0"
|
||||
<!-- start tarif- entries (should be a CollectionView) -->
|
||||
<Label
|
||||
Text= "{x:Static resources:AppResources.MessageBikesManagementTariffDescriptionTariffHeader}"
|
||||
IsVisible="{Binding TariffDescription.Header, Converter={StaticResource Label_Converter}}"
|
||||
Grid.Row="0"
|
||||
FontAttributes="Bold"/>
|
||||
<Label
|
||||
Text="{Binding TariffDescription.Header}"
|
||||
IsVisible="{Binding TariffDescription.Header, Converter={StaticResource Label_Converter}}"
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Padding="0"
|
||||
Margin="0">
|
||||
<Button.ImageSource>
|
||||
<FontImageSource
|
||||
Glyph="{StaticResource InfoCircle}"
|
||||
Color="DimGray"
|
||||
FontFamily="FA-S"
|
||||
Size="20"/>
|
||||
</Button.ImageSource>
|
||||
</Button>
|
||||
</Grid>
|
||||
FontAttributes="Bold"/>
|
||||
|
||||
<!--Tracking-->
|
||||
<Grid
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="2"
|
||||
ColumnDefinitions="*,Auto"
|
||||
IsVisible="{Binding TariffDescription.TrackingInfoText, Converter={StaticResource Label_Converter}}">
|
||||
<Label
|
||||
Text= "Tracking"
|
||||
Grid.Column="0"
|
||||
HorizontalOptions="End"/>
|
||||
<Button
|
||||
Command="{Binding ShowTrackingInfoCommand}"
|
||||
WidthRequest="24"
|
||||
HeightRequest="24"
|
||||
BackgroundColor="Transparent"
|
||||
BorderWidth="0"
|
||||
Grid.Column="1"
|
||||
Padding="0"
|
||||
Margin="0">
|
||||
<Button.ImageSource>
|
||||
<FontImageSource
|
||||
Glyph="{StaticResource InfoCircle}"
|
||||
Color="DimGray"
|
||||
FontFamily="FA-S"
|
||||
Size="20"/>
|
||||
</Button.ImageSource>
|
||||
</Button>
|
||||
</Grid>
|
||||
|
||||
<Label
|
||||
Text= "{Binding TariffDescription.TarifEntry1.Description}"
|
||||
IsVisible="{Binding TariffDescription.TarifEntry1.Description, Converter={StaticResource Label_Converter}}"
|
||||
Grid.Row="1"/>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
|
||||
xmlns:conv="clr-namespace:TINK.View"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
|
||||
|
@ -67,7 +67,7 @@
|
|||
<Frame>
|
||||
<StackLayout>
|
||||
<Label FormattedText="{Binding LikeTinkApp}"/>
|
||||
<!--- Mail to app- releated support -->
|
||||
<!--- Mail to app- related support -->
|
||||
<Button
|
||||
Text="{x:Static resources:AppResources.ActionContactMailAppReleated}"
|
||||
IsEnabled="{Binding IsSendMailAvailable}"
|
||||
|
@ -89,4 +89,4 @@
|
|||
</Frame>
|
||||
</ScrollView>
|
||||
</ContentPage.Content>
|
||||
</ContentPage>
|
||||
</ContentPage>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
using System;
|
||||
using System;
|
||||
using TINK.Model.Bikes.BikeInfoNS.DriveNS.BatteryNS;
|
||||
using Xamarin.CommunityToolkit.UI.Views;
|
||||
using Xamarin.Forms.Xaml;
|
||||
|
@ -69,7 +69,7 @@ namespace TINK.View
|
|||
#endif
|
||||
{
|
||||
/// <summary>
|
||||
/// Holds the current chargeing level of the battery entered by user in bars, null if unkonwn.
|
||||
/// Holds the current charging level of the battery entered by user in bars, null if unknown.
|
||||
/// </summary>
|
||||
public int? CurrentChargeBars { get; set; }
|
||||
|
||||
|
@ -87,4 +87,4 @@ namespace TINK.View
|
|||
public string Message { get; set; }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -100,7 +100,7 @@ namespace TINK.View.MyBikes
|
|||
{
|
||||
if (m_oViewModel == null)
|
||||
{
|
||||
// View model might be null (Example: Occured when page to querry for location permissions was opened)
|
||||
// View model might be null (Example: Occured when page to query for location permissions was opened)
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
using System;
|
||||
using TINK.Model.Station;
|
||||
using System;
|
||||
using TINK.Model.Stations;
|
||||
#if USEFLYOUT
|
||||
using TINK.View.MasterDetail;
|
||||
#endif
|
||||
|
@ -9,12 +9,12 @@ using Xamarin.Forms.Xaml;
|
|||
namespace TINK.View.Root
|
||||
{
|
||||
/// <summary>
|
||||
/// Mamages creation of detail pages if a flyout page menu entry is selected.
|
||||
/// Manages creation of detail pages if a flyout page menu entry is selected.
|
||||
/// Exposes flyout page style navigation which is used by detail pages.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Examples of use cases when detail pages do navigation:
|
||||
// - switch to map page after succesfully logging in/ logging out
|
||||
// - switch to map page after successfully logging in/ logging out
|
||||
// - switch to login page form bikes at station page if not yet logged in
|
||||
/// </remarks>
|
||||
[XamlCompilation(XamlCompilationOptions.Compile)]
|
||||
|
@ -29,7 +29,7 @@ namespace TINK.View.Root
|
|||
InitializeComponent();
|
||||
FlyoutPage.ListView.ItemSelected += OnListViewItemSelected;
|
||||
|
||||
// Any type of split behaviour conflics with map shifting functionality (assuming FlyoutPage behaves same like MasterDetailPage).
|
||||
// Any type of split behavior conflics with map shifting functionality (assuming FlyoutPage behaves same like MasterDetailPage).
|
||||
FlyoutLayoutBehavior = FlyoutLayoutBehavior.Popover;
|
||||
|
||||
var navigationPage = Detail as NavigationPage;
|
||||
|
@ -62,7 +62,7 @@ namespace TINK.View.Root
|
|||
}
|
||||
|
||||
// Set selected station to new
|
||||
App.ModelRoot.SelectedStation = new NullStation();
|
||||
App.ModelRoot.SelectedStation = new TINK.Model.Stations.StationNS.NullStation();
|
||||
|
||||
ShowPage(item.TargetType, item.Title);
|
||||
|
||||
|
@ -92,4 +92,4 @@ namespace TINK.View.Root
|
|||
Detail = new NavigationPage(page);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue