diff --git a/lib/content_views/main_page.dart b/lib/content_views/main_page.dart index fe69bf3..0ab5429 100644 --- a/lib/content_views/main_page.dart +++ b/lib/content_views/main_page.dart @@ -363,13 +363,13 @@ class _MainPageState extends State { var position = MyApp.currentPosition; var logoutMessage = LogoutMessage(); - logoutMessage.logout = LogoutContainer(); + logoutMessage.logout = true; if (position != null) { - logoutMessage.logout.pos = LogoutMessagePosition(); - logoutMessage.logout.pos!.time = position.timestamp.toIso8601String(); - logoutMessage.logout.pos!.lat = position.latitude; - logoutMessage.logout.pos!.long = position.longitude; - logoutMessage.logout.pos!.acc = position.accuracy.toInt(); + logoutMessage.pos = LogoutMessagePosition(); + logoutMessage.pos!.time = position.timestamp.toIso8601String(); + logoutMessage.pos!.lat = position.latitude; + logoutMessage.pos!.long = position.longitude; + logoutMessage.pos!.acc = position.accuracy.toInt(); } MqttCore.instance.publishPayloadMessage('session', logoutMessage.toJson()); diff --git a/lib/popups/accept_jobs_popup.dart b/lib/popups/accept_jobs_popup.dart index 25ab27b..4de743c 100644 --- a/lib/popups/accept_jobs_popup.dart +++ b/lib/popups/accept_jobs_popup.dart @@ -26,7 +26,7 @@ Future showAcceptJobsPopup(BuildContext context, List jobs, Function onFinished(); return true; - }, // False will prevent and true will allow to dismiss + }, child: AlertDialog( contentPadding: EdgeInsets.zero, shadowColor: Colors.transparent, @@ -38,13 +38,16 @@ Future showAcceptJobsPopup(BuildContext context, List jobs, Function onFinished(); } - MessageService().subscribe(Constants.messageTopicJobDeleted, jobsSet, (jobDeletedMessage) { + MessageService().unsubscribe(Constants.messageTopicJobDeleted, jobsSet); + MessageService().unsubscribe(Constants.messageTopicJobReceived, jobsSet); + + MessageService().subscribe(Constants.messageTopicJobDeleted, jobsSet, (jobDeletedMessage) async { jobsSet.removeWhere((element) => element.id == jobDeletedMessage.jobId); setState(() {}); }); - MessageService().subscribe(Constants.messageTopicJobReceived, jobsSet, (jobdMessage) { + MessageService().subscribe(Constants.messageTopicJobReceived, jobsSet, (jobdMessage) async { jobsSet.add(jobdMessage.job); setState(() {}); diff --git a/lib/popups/infos_popup.dart b/lib/popups/infos_popup.dart index 92c4f38..de7d0d6 100644 --- a/lib/popups/infos_popup.dart +++ b/lib/popups/infos_popup.dart @@ -5,7 +5,7 @@ import 'package:stadtbote/tools/mqtt_core.dart'; import 'package:stadtbote/tools/util.dart'; void showInfosPopup(BuildContext context, SessionStatus? status) async { - var text = "Versionsnummer: a210\n"; + var text = "Versionsnummer: a211\n"; text += "Verbindungsstatus: ${MqttCore.instance.connectionState == ConnectionStateEnum.connected ? "Verbunden" : "NICHT verbunden"}\n"; text += "GPS-Status: ${MyApp.currentPosition != null ? MyApp.currentPosition!.timestamp.toString() : "Unbekannt"}\n"; text += "\n"; diff --git a/lib/protocoll_messages/logout_message.dart b/lib/protocoll_messages/logout_message.dart index bc92ec8..fd657b5 100644 --- a/lib/protocoll_messages/logout_message.dart +++ b/lib/protocoll_messages/logout_message.dart @@ -4,7 +4,9 @@ part 'logout_message.g.dart'; @JsonSerializable() class LogoutMessage { - late LogoutContainer logout; + late bool logout; + + late LogoutMessagePosition? pos; LogoutMessage(); @@ -13,17 +15,6 @@ class LogoutMessage { Map toJson() => _$LogoutMessageToJson(this); } -@JsonSerializable() -class LogoutContainer { - late LogoutMessagePosition? pos; - - LogoutContainer(); - - factory LogoutContainer.fromJson(Map json) => _$LogoutContainerFromJson(json); - - Map toJson() => _$LogoutContainerToJson(this); -} - @JsonSerializable() class LogoutMessagePosition { late String time; diff --git a/lib/protocoll_messages/logout_message.g.dart b/lib/protocoll_messages/logout_message.g.dart index a107ce8..e9401e2 100644 --- a/lib/protocoll_messages/logout_message.g.dart +++ b/lib/protocoll_messages/logout_message.g.dart @@ -8,22 +8,14 @@ part of 'logout_message.dart'; LogoutMessage _$LogoutMessageFromJson(Map json) => LogoutMessage() - ..logout = - LogoutContainer.fromJson(json['logout'] as Map); - -Map _$LogoutMessageToJson(LogoutMessage instance) => - { - 'logout': instance.logout, - }; - -LogoutContainer _$LogoutContainerFromJson(Map json) => - LogoutContainer() + ..logout = json['logout'] as bool ..pos = json['pos'] == null ? null : LogoutMessagePosition.fromJson(json['pos'] as Map); -Map _$LogoutContainerToJson(LogoutContainer instance) => +Map _$LogoutMessageToJson(LogoutMessage instance) => { + 'logout': instance.logout, 'pos': instance.pos, };