Merge branch 'main' into new_appserver

# Conflicts:
#	lib/content_views/approach_area_page.dart
#	lib/content_views/assigned_jobs_page.dart
#	lib/content_views/main_page.dart
#	lib/content_views/task_list_page.dart
#	lib/main.dart
#	lib/popups/accept_jobs_popup.dart
#	lib/protocoll_messages/logout_message.dart
#	lib/protocoll_messages/logout_message.g.dart
#	lib/tools/constants.dart
#	lib/tools/mqtt_core.dart
#	pubspec.lock
#	pubspec.yaml
This commit is contained in:
Sven committed 2024-03-26 12:56:04 +01:00
commit 880cdd65ff
74 files changed
+2463 -441

No files matched your search

+60 -13
View File
@@ -1,5 +1,6 @@
import 'dart:convert';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:isar/isar.dart';
import 'package:stadtbote/content_views/accepted_jobs_page.dart';
@@ -10,19 +11,21 @@ import 'package:stadtbote/content_views/messages_page.dart';
import 'package:stadtbote/content_views/utils/content_view_widget.dart';
import 'package:stadtbote/content_views/utils/header_info.dart';
import 'package:stadtbote/model/job.dart';
import 'package:stadtbote/model/log_entry.dart';
import 'package:stadtbote/model/message.dart';
import 'package:stadtbote/model/session_status.dart';
import 'package:stadtbote/model/status.dart';
import 'package:stadtbote/popups/infos_popup.dart';
import 'package:stadtbote/protocoll_messages/device_log_response.dart';
import 'package:stadtbote/protocoll_messages/logout_message.dart';
import 'package:stadtbote/tools/message_service.dart';
import 'package:stadtbote/tools/messages/job_deleted_message.dart';
import 'package:stadtbote/tools/messages/job_received_message.dart';
import 'package:stadtbote/tools/messages/message_message.dart';
import 'package:stadtbote/tools/messages/refresh_badges_message.dart';
import 'package:stadtbote/tools/messages/session_info_update.dart';
import 'package:badges/badges.dart' as badges;
import 'package:stadtbote/tools/messages/status_info_update.dart';
import 'package:stadtbote/tools/messages/update_badges_message.dart';
import 'package:stadtbote/tools/mqtt_core.dart';
import '../main.dart';
@@ -30,8 +33,8 @@ import '../tools/constants.dart';
import '../tools/util.dart';
class MainPage extends ContentViewWidget {
final ValueNotifier<String> _zipValueNotifier = ValueNotifier("----");
final ValueNotifier<String> sidValueNotifier = ValueNotifier("----");
final ValueNotifier<String> _zipValueNotifier = ValueNotifier("-----");
final ValueNotifier<String> sidValueNotifier = ValueNotifier("-----");
MainPage({super.key});
@@ -233,7 +236,13 @@ class _MainPageState extends State<MainPage> {
getDefaultButton(
_loggedOut ? 'Anmelden' : 'Abmelden',
image: Image.asset(_loggedOut ? 'assets/anmelden.png' : 'assets/abmelden.png', width: 30, height: 30),
() async => {_logout()}),
() async {
if (!kDebugMode) {
_logout(context);
} else {
_test();
}
}),
Expanded(
child: Container(
decoration: BoxDecoration(
@@ -278,7 +287,7 @@ class _MainPageState extends State<MainPage> {
_refreshBadges();
});
MessageService().subscribe<RefreshBadgesMessage>(Constants.messageTopicRefreshBadges, this, (RefreshBadgesMessage refreshMessage) {
MessageService().subscribe<UpdateBadgesMessage>(Constants.messageTopicUpdateBadges, this, (UpdateBadgesMessage message) {
_refreshBadges();
});
}
@@ -312,20 +321,58 @@ class _MainPageState extends State<MainPage> {
}
}
_logout() {
_logout(context) {
if (!_loggedOut) {
_sendLogoutMessage();
Future.delayed(const Duration(seconds: 1), () async {
MqttCore.instance.diconnect();
});
showLogoutAlertDialog(context);
} else {
MqttCore.setup();
_loggedOut = false;
setState(() {});
}
}
_loggedOut = !_loggedOut;
showLogoutAlertDialog(BuildContext context) {
Widget yesButton = TextButton(
child: const Text("Ja"),
onPressed: () {
Navigator.of(context).pop();
_sendLogoutMessage();
setState(() {});
Future.delayed(const Duration(seconds: 1), () async {
MqttCore.instance.diconnect();
});
_loggedOut = true;
setState(() {});
},
);
Widget noButton = TextButton(
child: const Text("Nein"),
onPressed: () {
Navigator.of(context).pop();
},
);
// set up the AlertDialog
AlertDialog alert = AlertDialog(
title: const Text("Warnung"),
content: const Text("Wollen Sie sich wirklich abmelden?"),
actions: [
yesButton, noButton,
],
);
// show the dialog
showDialog(
context: context,
builder: (BuildContext context) {
return alert;
},
);
}
_sendLogoutMessage() {