diff --git a/RIADigiDoc/UI/Component/DiagnosticsView.swift b/RIADigiDoc/UI/Component/DiagnosticsView.swift index 1de95571..85d23643 100644 --- a/RIADigiDoc/UI/Component/DiagnosticsView.swift +++ b/RIADigiDoc/UI/Component/DiagnosticsView.swift @@ -144,11 +144,13 @@ struct DiagnosticsView: View { languageSettings.localized("Main diagnostics restart message deactivate"), isPresented: $viewModel.showRestartDeactivateAlert ) {alertContent} - .task { - await viewModel - .getConfigurationData( - configuration: viewModel.configuration - ) + .onAppear { + Task { + await viewModel + .getConfigurationData( + configuration: viewModel.configuration + ) + } } .onChange(of: viewModel.configuration, { _, newConfig in if let newConfig { diff --git a/RIADigiDoc/ViewModel/DiagnosticsViewModel.swift b/RIADigiDoc/ViewModel/DiagnosticsViewModel.swift index f73e3336..4ab410f3 100644 --- a/RIADigiDoc/ViewModel/DiagnosticsViewModel.swift +++ b/RIADigiDoc/ViewModel/DiagnosticsViewModel.swift @@ -114,6 +114,14 @@ class DiagnosticsViewModel: DiagnosticsViewModelProtocol, Loggable { func getRpUuid() async -> String { await dataStore.getRelyingPartyUUID() } + + func getTsaUrl() async -> String { + await dataStore.getTSAUrl() + } + + func getSivaUrl() async -> String { + await dataStore.getValidationServiceURL() + } private func getVersionContent() { self.versionSectionContent = @@ -134,12 +142,14 @@ class DiagnosticsViewModel: DiagnosticsViewModelProtocol, Loggable { guard let config = configuration else { return } let rpUuid = await getRpUuid() + let tsaUrl = await getTsaUrl() + let sivaUrl = await getSivaUrl() self.urlSectionContent = [ ("CONFIG_URL", config.metaInf.url), ("TSL_URL", config.tslUrl.absoluteString), - ("SIVA_URL", config.sivaUrl.absoluteString), - ("TSA_URL", config.tsaUrl.absoluteString), + ("SIVA_URL", !sivaUrl.isEmpty ? sivaUrl : config.sivaUrl.absoluteString), + ("TSA_URL", !tsaUrl.isEmpty ? tsaUrl : config.tsaUrl.absoluteString), ("LDAP_PERSON_URL", config.ldapPersonUrl.absoluteString), ("LDAP_CORP_URL", config.ldapCorpUrl.absoluteString), ("MID_PROXY_URL", config.midRestUrl.absoluteString), @@ -148,7 +158,7 @@ class DiagnosticsViewModel: DiagnosticsViewModelProtocol, Loggable { ("SIDV2_SK_URL", config.sidV2SkRestUrl.absoluteString), ("RPUUID", rpUuid == Constants.Signing.RelyingPartyUUID ? "Main diagnostics rpuuid default" - : rpUuid + : "Main diagnostics rpuuid custom" ) ] } diff --git a/RIADigiDoc/ViewModel/Protocols/DiagnosticsViewModelProtocol.swift b/RIADigiDoc/ViewModel/Protocols/DiagnosticsViewModelProtocol.swift index 758b5283..528e0e6f 100644 --- a/RIADigiDoc/ViewModel/Protocols/DiagnosticsViewModelProtocol.swift +++ b/RIADigiDoc/ViewModel/Protocols/DiagnosticsViewModelProtocol.swift @@ -51,5 +51,7 @@ public protocol DiagnosticsViewModelProtocol: Sendable { func removeObservers() async func getRpUuid() async -> String + func getTsaUrl() async -> String + func getSivaUrl() async -> String func observeConfigurationUpdates() async }