// ================================= // ======= SERVER BROWSER TAB ====== // ================================= private void ReloadServerBrowserListView() { var lastUpdated = PublicServerManager.GetLastUpdated(); lblReloadTime.Content = lastUpdated == DateTime.MinValue ? "" : "Downloaded: " + lastUpdated; lstPublicServers.Items.Clear(); foreach (var server in PublicServerManager.ServerList) { var localDefinedServer = ServerManager.FindByGuid(server.id); if (localDefinedServer == null) { server.Action = "Import"; } else { if (localDefinedServer.Name != server.name || localDefinedServer.Address != server.server_host || localDefinedServer.Port != server.server_port) { server.Action = "Update"; } else { server.Action = null; } } lstPublicServers.Items.Add(server); } }
private async void BtnDownloadServerBrowserList_Click(object sender, RoutedEventArgs e) { btnDownloadServerBrowserList.IsEnabled = false; try { var publicServerListUrl = Properties.Settings.Default.PublicServerListUrl; if (String.IsNullOrWhiteSpace(publicServerListUrl) || !Uri.TryCreate(publicServerListUrl, UriKind.Absolute, out var uri)) { MessageBox.Show("Server list is not a valid Uri:" + Environment.NewLine + publicServerListUrl, "BtnDownloadServerBrowserList_Click", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (await PublicServerManager.UpdateFromPublicServerList(httpClient, uri)) { ReloadServerBrowserListView(); } } finally { btnDownloadServerBrowserList.IsEnabled = true; } }