public static async Task CheckUpdates() { Log.Info("Check updates"); try { var current = Assembly.GetExecutingAssembly().GetName().Version; var result = await UpdaterApi.CheckAsync(ConstStrings.GITHUB_USER, nameof(Kebler), current); Log.Info($"Current {current} Serv {result.Item2}"); App.Instance.IsUpdateReady = result.Item1; if (result.Item1) { var mgr = new WindowManager(); var dialogres = await mgr.ShowDialogAsync(new MessageBoxViewModel(Strings.NewUpdate, string.Empty, Enums.MessageBoxDilogButtons.YesNo, true)); if (dialogres == true) { InstallUpdates(); } } } catch (Exception ex) { App.Instance.IsUpdateReady = false; Log.Error(ex); } }
public static async Task CheckUpdates() { Log.Info("Check updates"); try { var current = Assembly.GetExecutingAssembly().GetName().Version; var result = await UpdaterApi.Check(ConstStrings.GITHUB_USER, nameof(Kebler), current, ConfigService.Instanse.AllowPreRelease); Log.Info($"Current {current} Serv {result.Item2.name}"); App.Instance.IsUpdateReady = result.Item1; if (result.Item1) { var mgr = new WindowManager(); var lt = LocalizationProvider.GetLocalizedValue(nameof(Strings.NewUpdate)); var dialogres = await mgr.ShowDialogAsync(new MessageBoxViewModel(lt.Replace("%d", result.Item2.tag_name), string.Empty, Enums.MessageBoxDilogButtons.YesNo, true)); if (dialogres == true) { InstallUpdates(); } } } catch (Exception ex) { App.Instance.IsUpdateReady = false; Log.Error(ex); Crashes.TrackError(ex); } }
async void startFree() { Log($"Oh my god. That is first time..... go for update with 0.0.0.0 version"); var result = await UpdaterApi.Check(ConstStrings.GITHUB_USER, nameof(Kebler), new Version(0, 0, 0, 0), App.Beta); App.CreateShortcut(); var updateUrl = result.Item2.assets.LastOrDefault()?.browser_download_url; StartDownlaod(updateUrl); }
private async void MainWindow_Loaded(object sender, RoutedEventArgs e) { if (App.Force) { startFree(); } else { string? getEnv = null; Version?current = null; getEnv = Environment.GetEnvironmentVariable(nameof(Kebler), EnvironmentVariableTarget.User); if (!string.IsNullOrEmpty(getEnv)) { Log($"We found old version on GetEnvironmentVariable: {getEnv}"); if (File.Exists(getEnv)) { current = new Version(FileVersionInfo.GetVersionInfo(getEnv).FileVersion); Log($"Current version is: {current}"); Log($"Okay. Try get server version (github version)"); var result = await UpdaterApi.Check(ConstStrings.GITHUB_USER, nameof(Kebler), current, App.Beta); Log($"Server version is: {result.Item2.name}"); if (result.Item2.name > current) { var updateUrl = result.Item2.assets.Last().browser_download_url; Log($"So here is: {updateUrl}"); StartDownlaod(result.Item2.assets.Last().browser_download_url); } else { Process.Start(getEnv); App.DONE(true); } } else { startFree(); } } else { startFree(); } } }
public void HasUpdate() { var getEnv = Environment.GetEnvironmentVariable(nameof(Kebler), EnvironmentVariableTarget.User); var current = new Version(FileVersionInfo.GetVersionInfo(getEnv).FileVersion); var result = UpdaterApi.Check(ConstStrings.GITHUB_USER, nameof(Kebler), current); Log($"Current {current} Serv {result.Item2}"); Log($"Env Path: {getEnv}"); if (getEnv == null) { var updateUrl = UpdaterApi.GetlatestUri(); var wd = new MainWindow(new Uri(updateUrl)); wd.ShowDialog(); Current.Shutdown(0); } else { var updateUrl = UpdaterApi.GetlatestUri(); if (File.Exists(ConstStrings.KeblerExepath)) { if (result.Item2 > current) { var wd = new MainWindow(new Uri(updateUrl)); wd.ShowDialog(); Current.Shutdown(0); } else { CreateShortcut(); Process.Start(getEnv); Current.Shutdown(0); } } else { var wd = new MainWindow(new Uri(updateUrl)); wd.ShowDialog(); Current.Shutdown(0); } } }