diff --git a/AutoCat/Screens/EventsScreen/EventsScreen.swift b/AutoCat/Screens/EventsScreen/EventsScreen.swift index 17a51fd..02ceec6 100644 --- a/AutoCat/Screens/EventsScreen/EventsScreen.swift +++ b/AutoCat/Screens/EventsScreen/EventsScreen.swift @@ -51,7 +51,7 @@ struct EventsScreen: View { presenting: viewModel.pastedEvent) { event in Button("Cancel", role: .cancel, action: {}) Button("OK") { - viewModel.pasteEvent(event) + Task { await viewModel.addEvent(event) } } .keyboardShortcut(.defaultAction) } message: { event in diff --git a/AutoCat/Screens/EventsScreen/EventsViewModel.swift b/AutoCat/Screens/EventsScreen/EventsViewModel.swift index c66059d..230d950 100644 --- a/AutoCat/Screens/EventsScreen/EventsViewModel.swift +++ b/AutoCat/Screens/EventsScreen/EventsViewModel.swift @@ -69,19 +69,21 @@ class EventsViewModel: ACHudContainer { } } + func addEvent(_ event: VehicleEventDto) async { + + await eventOperation { + try await self.storageService.add(event: event, to: self.vehicle.getNumber()) + } apiOperation: { + try await self.apiService.add(event: event, to: self.vehicle.getNumber()) + } + + updateEvents() + } + func addNewEvent() async { let newEvent = VehicleEventDto(lat: 0, lon: 0, addedBy: settingsService.user.email) - - if let event = await coordinator?.editEvent(event: newEvent) { - await eventOperation { - try await self.storageService.add(event: event, to: self.vehicle.getNumber()) - } apiOperation: { - try await self.apiService.add(event: event, to: self.vehicle.getNumber()) - } - - updateEvents() - } + await addEvent(newEvent) } func deleteEvent(_ event: EventModel) async { @@ -172,8 +174,4 @@ class EventsViewModel: ACHudContainer { return date + "\n" + location } - - func pasteEvent(_ event: VehicleEventDto) { - - } }