diff --git a/Jugenddienst Stunden/Models/Stunde.cs b/Jugenddienst Stunden/Models/Stunde.cs
index 1effe77..d114c47 100644
--- a/Jugenddienst Stunden/Models/Stunde.cs
+++ b/Jugenddienst Stunden/Models/Stunde.cs
@@ -9,7 +9,7 @@ namespace Jugenddienst_Stunden.Models {
private static readonly string BaseAddress = "http://hours.dauni.mine.nu:81";
//private static readonly string apiKey = "MTQzfEFlMVRjQXdZMnI4RmpxZ0FSY3A0VEN2bVZYVXxodHRwOi8vaG91cnMuZGF1bmkubWluZS5udTo4MS9hcHBhcGk="; //Christine
- private static readonly string apiKey = "MTU0fGpkQUNYTGkvcjMvVk4rNkMyK0dDQkJmMkFwVXxodHRwOi8vaG91cnMuZGF1bmkubWluZS5udTo4MS9hcHBhcGk="; //Damian
+ public static string apiKey = "MTU0fGpkQUNYTGkvcjMvVk4rNkMyK0dDQkJmMkFwVXxodHRwOi8vaG91cnMuZGF1bmkubWluZS5udTo4MS9hcHBhcGk="; //Damian
private static readonly string requestUrl = $"{BaseAddress}/appapi?hours";
public DateTime Date { get; set; }
diff --git a/Jugenddienst Stunden/ViewModels/StundenViewModel.cs b/Jugenddienst Stunden/ViewModels/StundenViewModel.cs
index 4a8b9d9..ecdf4c2 100644
--- a/Jugenddienst Stunden/ViewModels/StundenViewModel.cs
+++ b/Jugenddienst Stunden/ViewModels/StundenViewModel.cs
@@ -57,5 +57,6 @@ namespace Jugenddienst_Stunden.ViewModels {
OnPropertyChanged(nameof(Hours));
}
+
}
}
diff --git a/Jugenddienst Stunden/Views/AboutPage.xaml.cs b/Jugenddienst Stunden/Views/AboutPage.xaml.cs
index 8d158b5..73070ca 100644
--- a/Jugenddienst Stunden/Views/AboutPage.xaml.cs
+++ b/Jugenddienst Stunden/Views/AboutPage.xaml.cs
@@ -1,28 +1,64 @@
-using ZXing;
-using ZXing.Net.Maui.Controls;
+using Microsoft.Maui.Controls;
+using System.Collections.Generic;
+using ZXing.Net.Maui;
+
namespace Jugenddienst_Stunden.Views;
-public partial class AboutPage : ContentPage
-{
- public AboutPage()
- {
+public partial class AboutPage : ContentPage {
+
+ private DateTime _lastDetectionTime;
+ private readonly TimeSpan _detectionInterval = TimeSpan.FromSeconds(3);
+
+ public AboutPage() {
InitializeComponent();
+
barcodeScannerView.Options = new ZXing.Net.Maui.BarcodeReaderOptions {
Formats = ZXing.Net.Maui.BarcodeFormat.QrCode,
AutoRotate = true,
Multiple = false
};
-
}
private void BarcodesDetected(object sender, ZXing.Net.Maui.BarcodeDetectionEventArgs e) {
- var first = e.Results?.FirstOrDefault();
- if (first is null) {
- return;
+ //var first = e.Results?.FirstOrDefault();
+
+ var currentTime = DateTime.Now;
+ if ((currentTime - _lastDetectionTime) > _detectionInterval) {
+ _lastDetectionTime = currentTime;
+ foreach (var barcode in e.Results) {
+ MainThread.InvokeOnMainThreadAsync(() => {
+ DisplayAlert("Barcode erkannt", $"Barcode: {barcode.Format} - {barcode.Value}", "OK");
+ Models.Stunde.apiKey = barcode.Value;
+ });
+ }
}
- Dispatcher.DispatchAsync(async () => {
- await DisplayAlert("Scan-Ergebnis", $"Barcode: {first.Value}", "OK");
- });
+
+ //if (first is null) {
+ // return;
+ //}
+ //Dispatcher.DispatchAsync(async () => {
+ // await DisplayAlert("Scan-Ergebnis", $"Barcode: {first.Value}", "OK");
+ //});
+ //MainThread.InvokeOnMainThreadAsync(() => {
+ // DisplayAlert("Barcode erkannt", $"Barcode: {first.Format} - {first.Value}", "OK");
+ // Models.Stunde.apiKey = first.Value;
+ //});
+
}
+ protected override void OnDisappearing() {
+ base.OnDisappearing();
+ barcodeScannerView.CameraLocation = CameraLocation.Front;
+ barcodeScannerView.IsDetecting = false;
+
+ }
+
+ protected override void OnAppearing() {
+ base.OnAppearing();
+
+ barcodeScannerView.IsDetecting = true;
+ barcodeScannerView.CameraLocation = CameraLocation.Rear;
+ }
+
+
}
\ No newline at end of file
diff --git a/Jugenddienst Stunden/Views/StundenPage.xaml b/Jugenddienst Stunden/Views/StundenPage.xaml
index 2f2ddf8..c17001d 100644
--- a/Jugenddienst Stunden/Views/StundenPage.xaml
+++ b/Jugenddienst Stunden/Views/StundenPage.xaml
@@ -20,11 +20,11 @@
-
-
-
-
-
+
+
+
+
+
\ No newline at end of file