Inhalt
Aktueller Ordner:
duesseldorfer-schuelerinventar-swift-client/Duesk/ViewModelsTimeSeriesViewModel.swift
import Foundation
import SwiftUI
@MainActor
class LoginViewModel: ObservableObject {
@Published var username = "gast"
@Published var password = "gast"
@Published var isLoading = false
@Published var errorMessage: String?
func login() async -> Bool {
isLoading = true
errorMessage = nil
do {
let response = try await APIService.shared.login(username: username, password: password)
if response.success, let userId = response.userID, let session = response.session {
SessionManager.shared.setSession(userId: userId, session: session)
isLoading = false
return true
} else {
errorMessage = response.error ?? "Anmeldung fehlgeschlagen"
isLoading = false
return false
}
} catch {
errorMessage = "Verbindungsfehler: \(error.localizedDescription)"
isLoading = false
return false
}
}
}