Version 3.0.382

This commit is contained in:
Anja 2024-04-16 11:29:40 +02:00
parent 3a363acf3a
commit a7117bc0f1
31 changed files with 252 additions and 251 deletions

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="internalOnly" package="com.TeilRad.LastenradBayern" android:versionName="3.0.381" android:versionCode="381"> <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="internalOnly" package="com.TeilRad.LastenradBayern" android:versionName="3.0.382" android:versionCode="382">
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="34" /> <uses-sdk android:minSdkVersion="19" android:targetSdkVersion="34" />
<!-- Google Maps related permissions --> <!-- Google Maps related permissions -->
<!-- Permission to receive remote notifications from Google Play Services --> <!-- Permission to receive remote notifications from Google Play Services -->

View file

@ -12,7 +12,7 @@ using Xamarin.Forms;
[assembly: AssemblyConfiguration("")] [assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")] [assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("LastenradBayern.Android")] [assembly: AssemblyProduct("LastenradBayern.Android")]
[assembly: AssemblyCopyright("Copyright © 2020")] [assembly: AssemblyCopyright("Copyright © 2020")]
[assembly: AssemblyTrademark("")] [assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")] [assembly: AssemblyCulture("")]
[assembly: ComVisible(false)] [assembly: ComVisible(false)]

View file

@ -1,4 +1,4 @@
using Foundation; using Foundation;
using UIKit; using UIKit;
using Xamarin.Forms; using Xamarin.Forms;
using Xamarin.Forms.Platform.iOS; using Xamarin.Forms.Platform.iOS;

View file

@ -56,9 +56,9 @@
<key>CFBundleDisplayName</key> <key>CFBundleDisplayName</key>
<string>LastenradBayern</string> <string>LastenradBayern</string>
<key>CFBundleVersion</key> <key>CFBundleVersion</key>
<string>381</string> <string>382</string>
<key>CFBundleShortVersionString</key> <key>CFBundleShortVersionString</key>
<string>3.0.381</string> <string>3.0.382</string>
<key>ITSAppUsesNonExemptEncryption</key> <key>ITSAppUsesNonExemptEncryption</key>
<false/> <false/>
</dict> </dict>

View file

@ -14,7 +14,7 @@
</NuGetPackageImportStamp> </NuGetPackageImportStamp>
<ReleaseVersion>3.0</ReleaseVersion> <ReleaseVersion>3.0</ReleaseVersion>
<ProvisioningType>manual</ProvisioningType> <ProvisioningType>manual</ProvisioningType>
<MtouchSdkVersion>16.4</MtouchSdkVersion> <MtouchSdkVersion>17.4</MtouchSdkVersion>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhoneSimulator' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhoneSimulator' ">
<DebugSymbols>true</DebugSymbols> <DebugSymbols>true</DebugSymbols>
@ -28,7 +28,7 @@
<MtouchArch>x86_64</MtouchArch> <MtouchArch>x86_64</MtouchArch>
<MtouchLink>None</MtouchLink> <MtouchLink>None</MtouchLink>
<MtouchDebug>true</MtouchDebug> <MtouchDebug>true</MtouchDebug>
<CodesignProvision></CodesignProvision> <CodesignProvision>Provisioning_Profile_LastenradBayern_Development</CodesignProvision>
<CodesignKey>Apple Development: Oliver Hauff (8SZ7J9P24J)</CodesignKey> <CodesignKey>Apple Development: Oliver Hauff (8SZ7J9P24J)</CodesignKey>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhoneSimulator' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhoneSimulator' ">
@ -59,7 +59,7 @@
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements> <CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
<MtouchLink>None</MtouchLink> <MtouchLink>None</MtouchLink>
<MtouchInterpreter>-all</MtouchInterpreter> <MtouchInterpreter>-all</MtouchInterpreter>
<CodesignProvision>Provisioning_Profile_LastenradBayern_Development</CodesignProvision> <CodesignProvision></CodesignProvision>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
<DebugType>none</DebugType> <DebugType>none</DebugType>
@ -256,6 +256,7 @@
<BundleResource Include="Resources\menu%403x.png" /> <BundleResource Include="Resources\menu%403x.png" />
<BundleResource Include="Resources\de.lproj\InfoPlist.strings" /> <BundleResource Include="Resources\de.lproj\InfoPlist.strings" />
<BundleResource Include="Resources\en.lproj\InfoPlist.strings" /> <BundleResource Include="Resources\en.lproj\InfoPlist.strings" />
<BundleResource Include="PrivacyInfo.xcprivacy" LogicalName="PrivacyInfo.xcprivacy" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Reference Include="System" /> <Reference Include="System" />

View file

@ -0,0 +1,41 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSPrivacyAccessedAPITypes</key>
<array>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryFileTimestamp</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>C617.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategorySystemBootTime</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>35F9.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryDiskSpace</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>E174.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>CA92.1</string>
</array>
</dict>
</array>
</dict>
</plist>

View file

@ -1,4 +1,4 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Globalization; using System.Globalization;
using System.Linq; using System.Linq;

View file

@ -95,21 +95,14 @@
</StackLayout> </StackLayout>
<!--If Not Connected To Internet-->
<sharedGui:NotConnectedToNetView/>
<!--Bike data--> <!--Bike data-->
<Grid <Grid
RowDefinitions="Auto,1*" RowDefinitions="1*"
RowSpacing="0"> RowSpacing="0">
<!--Hint for Outdated Data.-->
<sharedGui:HintForRefreshingPageView
Grid.Row="0"/>
<!--Bike(s)--> <!--Bike(s)-->
<ListView <ListView
Grid.Row="1" Grid.Row="0"
x:Name="BikesAtStationListView" x:Name="BikesAtStationListView"
BackgroundColor="{DynamicResource background-color}" BackgroundColor="{DynamicResource background-color}"
SelectionMode="None" SelectionMode="None"
@ -124,7 +117,7 @@
<!--No Bikes--> <!--No Bikes-->
<Label <Label
Grid.Row="1" Grid.Row="0"
Margin="20" Margin="20"
IsVisible="{Binding IsNoBikesAtStationVisible}" IsVisible="{Binding IsNoBikesAtStationVisible}"
Text="{Binding NoBikesAtStationText}"/> Text="{Binding NoBikesAtStationText}"/>

View file

@ -25,23 +25,21 @@
Spacing="0" Spacing="0"
Grid.Row="0"> Grid.Row="0">
<sharedGui:NotConnectedToNetView/>
<Grid <Grid
RowDefinitions="20,46,1*,Auto" RowDefinitions="20,46,1*,Auto"
ColumnDefinitions="1*,Auto,1*" ColumnDefinitions="1*,Auto,1*"
RowSpacing="0" RowSpacing="0"
IsEnabled="{Binding IsMapPageEnabled}" IsEnabled="{Binding IsMapPageEnabled}"
VerticalOptions="FillAndExpand"> VerticalOptions="FillAndExpand">
<!--Map--> <!--Map-->
<maps:Map <maps:Map
Grid.RowSpan="3" Grid.RowSpan="3"
Grid.ColumnSpan="3" Grid.ColumnSpan="3"
WidthRequest="320" WidthRequest="320"
HeightRequest="800" HeightRequest="800"
x:Name="MyMap" x:Name="MyMap"
MapType="Street"> MapType="Street">
<maps:Map.Behaviors> <maps:Map.Behaviors>
<bindings:BindingPinsBehavior Value="{Binding Pins}"/> <bindings:BindingPinsBehavior Value="{Binding Pins}"/>
<bindings:PinClickedToCommandBehavior Command="{Binding PinClickedCommand}"/> <bindings:PinClickedToCommandBehavior Command="{Binding PinClickedCommand}"/>
@ -50,55 +48,55 @@
<!--Buttons for choosing bike type--> <!--Buttons for choosing bike type-->
<Frame <Frame
CornerRadius="13" CornerRadius="13"
Grid.Row="1" Grid.Row="1"
Grid.Column="1" Grid.Column="1"
Margin="0" Margin="0"
Padding="0" Padding="0"
IsVisible="{Binding IsNavBarVisible}" IsVisible="{Binding IsNavBarVisible}"
BackgroundColor="{DynamicResource secondary-back-title-color}"> BackgroundColor="{DynamicResource secondary-back-title-color}">
<StackLayout <StackLayout
Orientation="Horizontal" Orientation="Horizontal"
Margin="0" Margin="0"
Padding="0"> Padding="0">
<Button <Button
x:Name="CitybikeButton" x:Name="CitybikeButton"
AutomationId ="FilterCitybike_button" AutomationId ="FilterCitybike_button"
Text="{x:Static resources:AppResources.MarkingCityBike}" Text="{x:Static resources:AppResources.MarkingCityBike}"
Command="{Binding OnToggleCargoToCitybike}" Command="{Binding OnToggleCargoToCitybike}"
IsVisible="{Binding IsToggleVisible}" IsVisible="{Binding IsToggleVisible}"
BackgroundColor="{Binding CitybikeColor}" BackgroundColor="{Binding CitybikeColor}"
BorderColor="{Binding CitybikeColor}" BorderColor="{Binding CitybikeColor}"
BorderWidth="0" BorderWidth="0"
VerticalOptions="Center" VerticalOptions="Center"
HorizontalOptions="Center" HorizontalOptions="Center"
WidthRequest="94" WidthRequest="94"
HeightRequest="40" HeightRequest="40"
CornerRadius="10" CornerRadius="10"
Margin="3,0,0,0" Margin="3,0,0,0"
FontSize="Small" FontSize="Small"
FontAttributes="Bold" FontAttributes="Bold"
TextColor="{Binding NoCitybikeColor}"> TextColor="{Binding NoCitybikeColor}">
</Button> </Button>
<Button <Button
x:Name="CargoButton" x:Name="CargoButton"
AutomationId ="FilterCargo_button" AutomationId ="FilterCargo_button"
Text="{x:Static resources:AppResources.MarkingCargoBike}" Text="{x:Static resources:AppResources.MarkingCargoBike}"
Command="{Binding OnToggleCitybikeToCargo}" Command="{Binding OnToggleCitybikeToCargo}"
IsVisible="{Binding IsToggleVisible}" IsVisible="{Binding IsToggleVisible}"
BackgroundColor="{Binding CargoColor}" BackgroundColor="{Binding CargoColor}"
BorderColor="{Binding CargoColor}" BorderColor="{Binding CargoColor}"
BorderWidth="0" BorderWidth="0"
VerticalOptions="Center" VerticalOptions="Center"
HorizontalOptions="Center" HorizontalOptions="Center"
WidthRequest="94" WidthRequest="94"
HeightRequest="40" HeightRequest="40"
CornerRadius="10" CornerRadius="10"
Margin="0,0,3,0" Margin="0,0,3,0"
FontSize="Small" FontSize="Small"
FontAttributes="Bold" FontAttributes="Bold"
TextColor="{Binding NoCargoColor}"> TextColor="{Binding NoCargoColor}">
</Button> </Button>
</StackLayout> </StackLayout>
</Frame> </Frame>

View file

@ -52,21 +52,14 @@
Spacing="0" Spacing="0"
Orientation="Vertical"> Orientation="Vertical">
<!--No Network Connection-->
<sharedGui:NotConnectedToNetView/>
<!--Bike data--> <!--Bike data-->
<Grid <Grid
RowDefinitions="Auto,1*" RowDefinitions="1*"
RowSpacing="0"> RowSpacing="0">
<!--Hint for Outdated Data.-->
<sharedGui:HintForRefreshingPageView
Grid.Row="0"/>
<!--Bike(s)--> <!--Bike(s)-->
<ListView <ListView
Grid.Row="1" Grid.Row="0"
x:Name="MyBikesListView" x:Name="MyBikesListView"
BackgroundColor="{DynamicResource background-color}" BackgroundColor="{DynamicResource background-color}"
SelectionMode="None" SelectionMode="None"
@ -81,7 +74,7 @@
<!--No Bikes--> <!--No Bikes-->
<Label <Label
Grid.Row="1" Grid.Row="0"
Margin="20" Margin="20"
IsVisible="{Binding IsNoBikesOccupiedVisible}" IsVisible="{Binding IsNoBikesOccupiedVisible}"
Text="{Binding NoBikesOccupiedText}"/> Text="{Binding NoBikesOccupiedText}"/>

View file

@ -104,21 +104,13 @@
</StackLayout> </StackLayout>
<!--No Network Connection-->
<sharedGui:NotConnectedToNetView/>
<!--Bike data--> <!--Bike data-->
<Grid <Grid
RowDefinitions="Auto,Auto" RowDefinitions="1*"
RowSpacing="0"> RowSpacing="0">
<!--Hint for Outdated Data.-->
<sharedGui:HintForRefreshingPageView
Grid.Row="0"/>
<!--Bike--> <!--Bike-->
<ListView <ListView
Grid.Row="1"
x:Name="SelectBikeListView" x:Name="SelectBikeListView"
BackgroundColor="{DynamicResource background-color}" BackgroundColor="{DynamicResource background-color}"
SelectionMode="None" SelectionMode="None"

View file

@ -72,7 +72,7 @@ namespace SharedBusinessLogic.Tests.ViewModel.Bikes.Bike.CopriLock.RequestHandle
Is.True); Is.True);
Assert.That( Assert.That(
subsequent.LockitButtonText, subsequent.LockitButtonText,
Is.EqualTo("Reserve bike")); Is.EqualTo("Reserve / Rent"));
Assert.That( Assert.That(
subsequent.IsLockitButtonVisible, subsequent.IsLockitButtonVisible,
Is.True); Is.True);
@ -147,7 +147,7 @@ namespace SharedBusinessLogic.Tests.ViewModel.Bikes.Bike.CopriLock.RequestHandle
Is.True); Is.True);
Assert.That( Assert.That(
subsequent.LockitButtonText, subsequent.LockitButtonText,
Is.EqualTo("Reserve bike")); Is.EqualTo("Reserve / Rent"));
Assert.That( Assert.That(
subsequent.IsLockitButtonVisible, subsequent.IsLockitButtonVisible,
Is.True); Is.True);
@ -222,7 +222,7 @@ namespace SharedBusinessLogic.Tests.ViewModel.Bikes.Bike.CopriLock.RequestHandle
Is.True); Is.True);
Assert.That( Assert.That(
subsequent.LockitButtonText, subsequent.LockitButtonText,
Is.EqualTo("Reserve bike")); Is.EqualTo("Reserve / Rent"));
Assert.That( Assert.That(
subsequent.IsLockitButtonVisible, subsequent.IsLockitButtonVisible,
Is.True); Is.True);
@ -354,7 +354,7 @@ namespace SharedBusinessLogic.Tests.ViewModel.Bikes.Bike.CopriLock.RequestHandle
Is.True); Is.True);
Assert.That( Assert.That(
subsequent.LockitButtonText, subsequent.LockitButtonText,
Is.EqualTo("Reserve bike")); Is.EqualTo("Reserve / Rent"));
Assert.That( Assert.That(
subsequent.IsLockitButtonVisible, subsequent.IsLockitButtonVisible,
Is.True); Is.True);
@ -431,7 +431,7 @@ namespace SharedBusinessLogic.Tests.ViewModel.Bikes.Bike.CopriLock.RequestHandle
Is.True); Is.True);
Assert.That( Assert.That(
subsequent.LockitButtonText, subsequent.LockitButtonText,
Is.EqualTo("Reserve bike")); Is.EqualTo("Reserve / Rent"));
Assert.That( Assert.That(
subsequent.IsLockitButtonVisible, subsequent.IsLockitButtonVisible,
Is.True); Is.True);
@ -508,7 +508,7 @@ namespace SharedBusinessLogic.Tests.ViewModel.Bikes.Bike.CopriLock.RequestHandle
Is.True); Is.True);
Assert.That( Assert.That(
subsequent.LockitButtonText, subsequent.LockitButtonText,
Is.EqualTo("Reserve bike")); Is.EqualTo("Reserve / Rent"));
Assert.That( Assert.That(
subsequent.IsLockitButtonVisible, subsequent.IsLockitButtonVisible,
Is.True); Is.True);
@ -585,7 +585,7 @@ namespace SharedBusinessLogic.Tests.ViewModel.Bikes.Bike.CopriLock.RequestHandle
Is.True); Is.True);
Assert.That( Assert.That(
subsequent.LockitButtonText, subsequent.LockitButtonText,
Is.EqualTo("Reserve bike")); Is.EqualTo("Reserve / Rent"));
Assert.That( Assert.That(
subsequent.IsLockitButtonVisible, subsequent.IsLockitButtonVisible,
Is.True); Is.True);

View file

@ -353,7 +353,7 @@ namespace SharedBusinessLogic.Tests.ViewModel.Bikes.Bike.CopriLock.RequestHandle
Is.True); Is.True);
Assert.That( Assert.That(
subsequent.LockitButtonText, subsequent.LockitButtonText,
Is.EqualTo("Reserve bike")); Is.EqualTo("Reserve / Rent"));
Assert.That( Assert.That(
subsequent.IsLockitButtonVisible, subsequent.IsLockitButtonVisible,
Is.True); Is.True);

View file

@ -1,7 +1,6 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by a tool. // This code was generated by a tool.
// Runtime Version:4.0.30319.42000
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
@ -14,12 +13,10 @@ namespace ShareeBike.MultilingualResources {
/// <summary> /// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc. /// A strongly-typed resource class, for looking up localized strings, etc.
/// This class was generated by MSBuild using the GenerateResource task.
/// To add or remove a member, edit your .resx file then rerun MSBuild.
/// </summary> /// </summary>
// This class was auto-generated by the StronglyTypedResourceBuilder [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Build.Tasks.StronglyTypedResourceBuilder", "15.1.0.0")]
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
public class AppResources { public class AppResources {
@ -177,15 +174,6 @@ namespace ShareeBike.MultilingualResources {
} }
} }
/// <summary>
/// Looks up a localized string similar to Reserve bike.
/// </summary>
public static string ActionReserveBike {
get {
return ResourceManager.GetString("ActionReserveBike", resourceCulture);
}
}
/// <summary> /// <summary>
/// Looks up a localized string similar to Connect lock. /// Looks up a localized string similar to Connect lock.
/// </summary> /// </summary>

View file

@ -24,9 +24,6 @@
<data name="ActionOpenLockAndRentBike" xml:space="preserve"> <data name="ActionOpenLockAndRentBike" xml:space="preserve">
<value>Miete starten &amp; Schloss öffnen</value> <value>Miete starten &amp; Schloss öffnen</value>
</data> </data>
<data name="ActionReserveBike" xml:space="preserve">
<value>Rad reservieren</value>
</data>
<data name="ActionEndRental" xml:space="preserve"> <data name="ActionEndRental" xml:space="preserve">
<value>Miete beenden</value> <value>Miete beenden</value>
</data> </data>

View file

@ -1412,9 +1412,6 @@ You can find your rented bikes under "My bikes".</value>
<data name="QuestionRentalProcessRentBikeTitle" xml:space="preserve"> <data name="QuestionRentalProcessRentBikeTitle" xml:space="preserve">
<value>Rent bike?</value> <value>Rent bike?</value>
</data> </data>
<data name="ActionReserveBike" xml:space="preserve">
<value>Reserve bike</value>
</data>
<data name="QuestionRentalProcessReserveBikeText" xml:space="preserve"> <data name="QuestionRentalProcessReserveBikeText" xml:space="preserve">
<value>Would you like to reserve the bike for {1} minutes free of charge?</value> <value>Would you like to reserve the bike for {1} minutes free of charge?</value>
</data> </data>

View file

@ -22,10 +22,6 @@
<source>Start rental &amp; Open lock</source> <source>Start rental &amp; Open lock</source>
<target state="translated">Miete starten &amp; Schloss öffnen</target> <target state="translated">Miete starten &amp; Schloss öffnen</target>
</trans-unit> </trans-unit>
<trans-unit id="ActionReserveBike" translate="yes" xml:space="preserve">
<source>Reserve bike</source>
<target state="final">Rad reservieren</target>
</trans-unit>
<trans-unit id="ActionEndRental" translate="yes" xml:space="preserve"> <trans-unit id="ActionEndRental" translate="yes" xml:space="preserve">
<source>End rental</source> <source>End rental</source>
<target state="translated">Miete beenden</target> <target state="translated">Miete beenden</target>

View file

@ -1,4 +1,5 @@
using ShareeBike.Model.State; using ShareeBike.Model.State;
using ShareeBike.MultilingualResources;
namespace ShareeBike.ViewModel.Bikes.Bike.BC namespace ShareeBike.ViewModel.Bikes.Bike.BC
{ {
@ -10,13 +11,13 @@ namespace ShareeBike.ViewModel.Bikes.Bike.BC
switch (state) switch (state)
{ {
case InUseStateEnum.Disposable: case InUseStateEnum.Disposable:
return "Rad reservieren"; return AppResources.ActionRequestBike;
case InUseStateEnum.Reserved: case InUseStateEnum.Reserved:
return "Reservierung aufheben"; return AppResources.ActionCancelReservation;
case InUseStateEnum.Booked: case InUseStateEnum.Booked:
return "Miete beenden"; return AppResources.ActionEndRental;
default: default:
return $"{state}"; return $"{state}";

View file

@ -29,7 +29,7 @@ namespace ShareeBike.ViewModel.Bikes.Bike.CopriLock.RequestHandler
IBikesViewModel bikesViewModel, IBikesViewModel bikesViewModel,
IUser activeUser) : base( IUser activeUser) : base(
selectedBike, selectedBike,
AppResources.ActionOpenLockAndRentBike, // Button text: "Schloss öffnen & Rad mieten" AppResources.ActionOpenLockAndRentBike, // Button text: "Miete starten & Schloss öffnen"
true, // Show copri button to enable booking and opening true, // Show copri button to enable booking and opening
isConnectedDelegate, isConnectedDelegate,
connectorFactory, connectorFactory,
@ -39,7 +39,7 @@ namespace ShareeBike.ViewModel.Bikes.Bike.CopriLock.RequestHandler
bikesViewModel, bikesViewModel,
activeUser) activeUser)
{ {
LockitButtonText = AppResources.ActionReserveBike; // Copri text: "Rad reservieren" LockitButtonText = AppResources.ActionRequestBike; // Copri text: "Reservieren / Mieten"
IsLockitButtonVisible = true; IsLockitButtonVisible = true;
} }

View file

@ -25,7 +25,6 @@
<Compile Include="$(MSBuildThisFileDirectory)ViewModel\Bar.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ViewModel\Bar.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ViewModel\BarLevelInputViewModel.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ViewModel\BarLevelInputViewModel.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ViewModel\BarLevelViewModel.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ViewModel\BarLevelViewModel.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ViewModel\NotConnectedToNetViewModel.cs" />
<Compile Include="$(MSBuildThisFileDirectory)View\BarLevelInputView.xaml.cs"> <Compile Include="$(MSBuildThisFileDirectory)View\BarLevelInputView.xaml.cs">
<DependentUpon>BarLevelInputView.xaml</DependentUpon> <DependentUpon>BarLevelInputView.xaml</DependentUpon>
<SubType>Code</SubType> <SubType>Code</SubType>
@ -61,9 +60,6 @@
<DependentUpon>RentalProcessStepBarFinished.xaml</DependentUpon> <DependentUpon>RentalProcessStepBarFinished.xaml</DependentUpon>
<SubType>Code</SubType> <SubType>Code</SubType>
</Compile> </Compile>
<Compile Include="$(MSBuildThisFileDirectory)View\HintForRefreshingPageView.xaml.cs">
<DependentUpon>HintForRefreshingPageView.xaml</DependentUpon>
</Compile>
<Compile Include="$(MSBuildThisFileDirectory)View\Bike\RentalProcess\RentalProcessBookedClosedEndRental.xaml.cs"> <Compile Include="$(MSBuildThisFileDirectory)View\Bike\RentalProcess\RentalProcessBookedClosedEndRental.xaml.cs">
<DependentUpon>RentalProcessBookedClosedEndRental.xaml</DependentUpon> <DependentUpon>RentalProcessBookedClosedEndRental.xaml</DependentUpon>
<SubType>Code</SubType> <SubType>Code</SubType>
@ -71,9 +67,6 @@
<Compile Include="$(MSBuildThisFileDirectory)View\Bike\RentalProcess\RentalProcessBookedOpenCloseLock.xaml.cs"> <Compile Include="$(MSBuildThisFileDirectory)View\Bike\RentalProcess\RentalProcessBookedOpenCloseLock.xaml.cs">
<DependentUpon>RentalProcessBookedOpenCloseLock.xaml</DependentUpon> <DependentUpon>RentalProcessBookedOpenCloseLock.xaml</DependentUpon>
</Compile> </Compile>
<Compile Include="$(MSBuildThisFileDirectory)View\NotConnectedToNetView.xaml.cs">
<DependentUpon>NotConnectedToNetView.xaml</DependentUpon>
</Compile>
<Compile Include="$(MSBuildThisFileDirectory)View\RunningProcessView.xaml.cs"> <Compile Include="$(MSBuildThisFileDirectory)View\RunningProcessView.xaml.cs">
<DependentUpon>RunningProcessView.xaml</DependentUpon> <DependentUpon>RunningProcessView.xaml</DependentUpon>
<SubType>Code</SubType> <SubType>Code</SubType>
@ -103,18 +96,6 @@
<Generator>MSBuild:UpdateDesignTimeXaml</Generator> <Generator>MSBuild:UpdateDesignTimeXaml</Generator>
</EmbeddedResource> </EmbeddedResource>
</ItemGroup> </ItemGroup>
<ItemGroup>
<EmbeddedResource Include="$(MSBuildThisFileDirectory)View\NotConnectedToNetView.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="$(MSBuildThisFileDirectory)View\HintForRefreshingPageView.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
</EmbeddedResource>
</ItemGroup>
<ItemGroup> <ItemGroup>
<EmbeddedResource Include="$(MSBuildThisFileDirectory)View\Bike\RentalProcess\RentalProcessBookedClosedEndRental.xaml"> <EmbeddedResource Include="$(MSBuildThisFileDirectory)View\Bike\RentalProcess\RentalProcessBookedClosedEndRental.xaml">
<SubType>Designer</SubType> <SubType>Designer</SubType>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?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.381" android:versionCode="381"> <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="internalOnly" package="com.hauffware.sharee" android:versionName="3.0.382" android:versionCode="382">
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="34" /> <uses-sdk android:minSdkVersion="19" android:targetSdkVersion="34" />
<!-- Google Maps related permissions --> <!-- Google Maps related permissions -->

View file

@ -1,4 +1,4 @@
using System.Reflection; using System.Reflection;
using System.Runtime.CompilerServices; using System.Runtime.CompilerServices;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
using Android.App; using Android.App;
@ -12,7 +12,7 @@ using Xamarin.Forms;
[assembly: AssemblyConfiguration("")] [assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")] [assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("ShareeBike.Android")] [assembly: AssemblyProduct("ShareeBike.Android")]
[assembly: AssemblyCopyright("Copyright © 2020")] [assembly: AssemblyCopyright("Copyright © 2020")]
[assembly: AssemblyTrademark("")] [assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")] [assembly: AssemblyCulture("")]
[assembly: ComVisible(false)] [assembly: ComVisible(false)]

View file

@ -1,4 +1,4 @@
using Foundation; using Foundation;
using UIKit; using UIKit;
using Xamarin.Forms; using Xamarin.Forms;
using Xamarin.Forms.Platform.iOS; using Xamarin.Forms.Platform.iOS;

View file

@ -56,9 +56,9 @@
<key>CFBundleDisplayName</key> <key>CFBundleDisplayName</key>
<string>sharee.bike</string> <string>sharee.bike</string>
<key>CFBundleVersion</key> <key>CFBundleVersion</key>
<string>381</string> <string>382</string>
<key>CFBundleShortVersionString</key> <key>CFBundleShortVersionString</key>
<string>3.0.381</string> <string>3.0.382</string>
<key>ITSAppUsesNonExemptEncryption</key> <key>ITSAppUsesNonExemptEncryption</key>
<false/> <false/>
</dict> </dict>

View file

@ -0,0 +1,41 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSPrivacyAccessedAPITypes</key>
<array>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryFileTimestamp</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>C617.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategorySystemBootTime</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>35F9.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryDiskSpace</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>E174.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>CA92.1</string>
</array>
</dict>
</array>
</dict>
</plist>

View file

@ -28,8 +28,9 @@
<MtouchArch>x86_64</MtouchArch> <MtouchArch>x86_64</MtouchArch>
<MtouchLink>None</MtouchLink> <MtouchLink>None</MtouchLink>
<MtouchDebug>true</MtouchDebug> <MtouchDebug>true</MtouchDebug>
<CodesignProvision></CodesignProvision> <CodesignProvision>Provisioning_Profile_shareebike_Development</CodesignProvision>
<CodesignKey>Apple Development: Oliver Hauff (8SZ7J9P24J)</CodesignKey> <CodesignKey>Apple Development: Oliver Hauff (8SZ7J9P24J)</CodesignKey>
<MtouchSdkVersion>17.4</MtouchSdkVersion>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhoneSimulator' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhoneSimulator' ">
<DebugType>none</DebugType> <DebugType>none</DebugType>
@ -41,8 +42,9 @@
<MtouchLink>SdkOnly</MtouchLink> <MtouchLink>SdkOnly</MtouchLink>
<MtouchArch>x86_64</MtouchArch> <MtouchArch>x86_64</MtouchArch>
<ConsolePause>false</ConsolePause> <ConsolePause>false</ConsolePause>
<CodesignProvision>sharee.bike to App Store 3</CodesignProvision> <CodesignProvision>Automatisch</CodesignProvision>
<CodesignKey>Apple Distribution: TeilRad GmbH (LXJD6URCHR)</CodesignKey> <CodesignKey>Apple Distribution: TeilRad GmbH (LXJD6URCHR)</CodesignKey>
<MtouchSdkVersion>17.4</MtouchSdkVersion>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhone' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhone' ">
<DebugSymbols>true</DebugSymbols> <DebugSymbols>true</DebugSymbols>
@ -78,6 +80,7 @@
<CrashReportingApiKey> <CrashReportingApiKey>
</CrashReportingApiKey> </CrashReportingApiKey>
<MtouchLink>SdkOnly</MtouchLink> <MtouchLink>SdkOnly</MtouchLink>
<MtouchSdkVersion>17.4</MtouchSdkVersion>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Ad-Hoc|iPhone' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Ad-Hoc|iPhone' ">
<DebugType>none</DebugType> <DebugType>none</DebugType>
@ -95,6 +98,7 @@
</MtouchNoSymbolStrip> </MtouchNoSymbolStrip>
<MtouchLink>SdkOnly</MtouchLink> <MtouchLink>SdkOnly</MtouchLink>
<OnDemandResourcesPrefetchOrder></OnDemandResourcesPrefetchOrder> <OnDemandResourcesPrefetchOrder></OnDemandResourcesPrefetchOrder>
<MtouchSdkVersion>17.4</MtouchSdkVersion>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'AppStore|iPhone' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'AppStore|iPhone' ">
<DebugType>none</DebugType> <DebugType>none</DebugType>
@ -108,6 +112,7 @@
<CodesignKey>Apple Distribution: TeilRad GmbH (LXJD6URCHR)</CodesignKey> <CodesignKey>Apple Distribution: TeilRad GmbH (LXJD6URCHR)</CodesignKey>
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements> <CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
<MtouchLink>SdkOnly</MtouchLink> <MtouchLink>SdkOnly</MtouchLink>
<MtouchSdkVersion>17.4</MtouchSdkVersion>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(RunConfiguration)' == 'Default' "> <PropertyGroup Condition=" '$(RunConfiguration)' == 'Default' ">
<AppExtensionDebugBundleId /> <AppExtensionDebugBundleId />
@ -253,6 +258,7 @@
<BundleResource Include="Resources\menu%403x.png" /> <BundleResource Include="Resources\menu%403x.png" />
<BundleResource Include="Resources\de.lproj\InfoPlist.strings" /> <BundleResource Include="Resources\de.lproj\InfoPlist.strings" />
<BundleResource Include="Resources\en.lproj\InfoPlist.strings" /> <BundleResource Include="Resources\en.lproj\InfoPlist.strings" />
<BundleResource Include="PrivacyInfo.xcprivacy" LogicalName="PrivacyInfo.xcprivacy" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Reference Include="System" /> <Reference Include="System" />

View file

@ -1,4 +1,4 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Globalization; using System.Globalization;
using System.Linq; using System.Linq;

View file

@ -95,21 +95,14 @@
</StackLayout> </StackLayout>
<!--If Not Connected To Internet-->
<sharedGui:NotConnectedToNetView/>
<!--Bike data--> <!--Bike data-->
<Grid <Grid
RowDefinitions="Auto,1*" RowDefinitions="1*"
RowSpacing="0"> RowSpacing="0">
<!--Hint for Outdated Data.-->
<sharedGui:HintForRefreshingPageView
Grid.Row="0"/>
<!--Bike(s)--> <!--Bike(s)-->
<ListView <ListView
Grid.Row="1" Grid.Row="0"
x:Name="BikesAtStationListView" x:Name="BikesAtStationListView"
BackgroundColor="{DynamicResource background-color}" BackgroundColor="{DynamicResource background-color}"
SelectionMode="None" SelectionMode="None"
@ -124,7 +117,7 @@
<!--No Bikes--> <!--No Bikes-->
<Label <Label
Grid.Row="1" Grid.Row="0"
Margin="20" Margin="20"
IsVisible="{Binding IsNoBikesAtStationVisible}" IsVisible="{Binding IsNoBikesAtStationVisible}"
Text="{Binding NoBikesAtStationText}"/> Text="{Binding NoBikesAtStationText}"/>

View file

@ -25,23 +25,21 @@
Spacing="0" Spacing="0"
Grid.Row="0"> Grid.Row="0">
<sharedGui:NotConnectedToNetView/>
<Grid <Grid
RowDefinitions="20,46,1*,Auto" RowDefinitions="20,46,1*,Auto"
ColumnDefinitions="1*,Auto,1*" ColumnDefinitions="1*,Auto,1*"
RowSpacing="0" RowSpacing="0"
IsEnabled="{Binding IsMapPageEnabled}" IsEnabled="{Binding IsMapPageEnabled}"
VerticalOptions="FillAndExpand"> VerticalOptions="FillAndExpand">
<!--Map--> <!--Map-->
<maps:Map <maps:Map
Grid.RowSpan="3" Grid.RowSpan="3"
Grid.ColumnSpan="3" Grid.ColumnSpan="3"
WidthRequest="320" WidthRequest="320"
HeightRequest="800" HeightRequest="800"
x:Name="MyMap" x:Name="MyMap"
MapType="Street"> MapType="Street">
<maps:Map.Behaviors> <maps:Map.Behaviors>
<bindings:BindingPinsBehavior Value="{Binding Pins}"/> <bindings:BindingPinsBehavior Value="{Binding Pins}"/>
<bindings:PinClickedToCommandBehavior Command="{Binding PinClickedCommand}"/> <bindings:PinClickedToCommandBehavior Command="{Binding PinClickedCommand}"/>
@ -50,54 +48,54 @@
<!--Buttons for choosing bike type--> <!--Buttons for choosing bike type-->
<Frame <Frame
CornerRadius="13" CornerRadius="13"
Grid.Row="1" Grid.Row="1"
Grid.Column="1" Grid.Column="1"
Margin="0" Margin="0"
Padding="0" Padding="0"
IsVisible="{Binding IsNavBarVisible}" IsVisible="{Binding IsNavBarVisible}"
BackgroundColor="{DynamicResource secondary-back-title-color}"> BackgroundColor="{DynamicResource secondary-back-title-color}">
<StackLayout <StackLayout
Orientation="Horizontal" Orientation="Horizontal"
Margin="0" Margin="0"
Padding="0"> Padding="0">
<Button <Button
x:Name="CitybikeButton" x:Name="CitybikeButton"
AutomationId ="FilterCitybike_button" AutomationId ="FilterCitybike_button"
Text="{x:Static resources:AppResources.MarkingCityBike}" Text="{x:Static resources:AppResources.MarkingCityBike}"
Command="{Binding OnToggleCargoToCitybike}" Command="{Binding OnToggleCargoToCitybike}"
IsVisible="{Binding IsToggleVisible}" IsVisible="{Binding IsToggleVisible}"
BackgroundColor="{Binding CitybikeColor}" BackgroundColor="{Binding CitybikeColor}"
BorderColor="{Binding CitybikeColor}" BorderColor="{Binding CitybikeColor}"
BorderWidth="0" BorderWidth="0"
VerticalOptions="Center" VerticalOptions="Center"
HorizontalOptions="Center" HorizontalOptions="Center"
WidthRequest="94" WidthRequest="94"
HeightRequest="40" HeightRequest="40"
CornerRadius="10" CornerRadius="10"
Margin="3,0,0,0" Margin="3,0,0,0"
FontSize="Small" FontSize="Small"
FontAttributes="Bold" FontAttributes="Bold"
TextColor="{Binding NoCitybikeColor}"> TextColor="{Binding NoCitybikeColor}">
</Button> </Button>
<Button <Button
x:Name="CargoButton" x:Name="CargoButton"
AutomationId ="FilterCargo_button" AutomationId ="FilterCargo_button"
Text="{x:Static resources:AppResources.MarkingCargoBike}" Text="{x:Static resources:AppResources.MarkingCargoBike}"
Command="{Binding OnToggleCitybikeToCargo}" Command="{Binding OnToggleCitybikeToCargo}"
IsVisible="{Binding IsToggleVisible}" IsVisible="{Binding IsToggleVisible}"
BackgroundColor="{Binding CargoColor}" BackgroundColor="{Binding CargoColor}"
BorderColor="{Binding CargoColor}" BorderColor="{Binding CargoColor}"
BorderWidth="0" BorderWidth="0"
VerticalOptions="Center" VerticalOptions="Center"
HorizontalOptions="Center" HorizontalOptions="Center"
WidthRequest="94" WidthRequest="94"
HeightRequest="40" HeightRequest="40"
CornerRadius="10" CornerRadius="10"
Margin="0,0,3,0" Margin="0,0,3,0"
FontSize="Small" FontSize="Small"
FontAttributes="Bold" FontAttributes="Bold"
TextColor="{Binding NoCargoColor}"> TextColor="{Binding NoCargoColor}">
</Button> </Button>
</StackLayout> </StackLayout>
</Frame> </Frame>

View file

@ -52,21 +52,14 @@
Spacing="0" Spacing="0"
Orientation="Vertical"> Orientation="Vertical">
<!--No Network Connection-->
<sharedGui:NotConnectedToNetView/>
<!--Bike data--> <!--Bike data-->
<Grid <Grid
RowDefinitions="Auto,1*" RowDefinitions="1*"
RowSpacing="0"> RowSpacing="0">
<!--Hint for Outdated Data.-->
<sharedGui:HintForRefreshingPageView
Grid.Row="0"/>
<!--Bike(s)--> <!--Bike(s)-->
<ListView <ListView
Grid.Row="1" Grid.Row="0"
x:Name="MyBikesListView" x:Name="MyBikesListView"
BackgroundColor="{DynamicResource background-color}" BackgroundColor="{DynamicResource background-color}"
SelectionMode="None" SelectionMode="None"
@ -81,7 +74,7 @@
<!--No Bikes--> <!--No Bikes-->
<Label <Label
Grid.Row="1" Grid.Row="0"
Margin="20" Margin="20"
IsVisible="{Binding IsNoBikesOccupiedVisible}" IsVisible="{Binding IsNoBikesOccupiedVisible}"
Text="{Binding NoBikesOccupiedText}"/> Text="{Binding NoBikesOccupiedText}"/>

View file

@ -104,21 +104,13 @@
</StackLayout> </StackLayout>
<!--No Network Connection-->
<sharedGui:NotConnectedToNetView/>
<!--Bike data--> <!--Bike data-->
<Grid <Grid
RowDefinitions="Auto,Auto" RowDefinitions="1*"
RowSpacing="0"> RowSpacing="0">
<!--Hint for Outdated Data.-->
<sharedGui:HintForRefreshingPageView
Grid.Row="0"/>
<!--Bike--> <!--Bike-->
<ListView <ListView
Grid.Row="1"
x:Name="SelectBikeListView" x:Name="SelectBikeListView"
BackgroundColor="{DynamicResource background-color}" BackgroundColor="{DynamicResource background-color}"
SelectionMode="None" SelectionMode="None"