bloxstrap/Bloxstrap/UI/ViewModels/Installer/WelcomeViewModel.cs
2024-10-06 21:52:54 +01:00

39 lines
1.3 KiB
C#

namespace Bloxstrap.UI.ViewModels.Installer
{
public class WelcomeViewModel : NotifyPropertyChangedViewModel
{
// formatting is done here instead of in xaml, it's just a bit easier
public string MainText => String.Format(
Strings.Installer_Welcome_MainText,
"[github.com/bloxstraplabs/bloxstrap](https://github.com/bloxstraplabs/bloxstrap)",
"[bloxstraplabs.com](https://bloxstraplabs.com)"
);
public string VersionNotice { get; private set; } = "";
public bool CanContinue { get; set; } = false;
public event EventHandler? CanContinueEvent;
// called by codebehind on page load
public async void DoChecks()
{
var releaseInfo = await App.GetLatestRelease();
if (releaseInfo is not null)
{
if (Utilities.CompareVersions(App.Version, releaseInfo.TagName) == VersionComparison.LessThan)
{
VersionNotice = String.Format(Strings.Installer_Welcome_UpdateNotice, App.Version, releaseInfo.TagName.Replace("v", ""));
OnPropertyChanged(nameof(VersionNotice));
}
}
CanContinue = true;
OnPropertyChanged(nameof(CanContinue));
CanContinueEvent?.Invoke(this, new EventArgs());
}
}
}