public MyAccountViewModel(PanaceaServices core, IUserAccountManager manager) { _core = core; SignoutCommand = new RelayCommand(async arg => { if (_core.TryGetUiManager(out IUiManager ui)) { ui.GoHome(); } await manager.LogoutAsync(); }); BuyServiceCommand = new RelayCommand(arg => { if (_core.TryGetBilling(out IBillingManager billing)) { billing.NavigateToBuyServiceWizard(); } }); ChangeInfoCommand = new RelayCommand(arg => { if (_core.TryGetUiManager(out IUiManager ui)) { ui.Navigate(new UpdateAccountViewModel(_core)); } else { _core.Logger.Error(this, "ui manager not loaded"); } }); ChangeCredentialsCommand = new RelayCommand(arg => { if (_core.TryGetUiManager(out IUiManager ui)) { ui.Navigate(new UpdateCredentialsViewModel(_core)); } else { _core.Logger.Error(this, "ui manager not loaded"); } }); ResetPasswordCommand = new RelayCommand(async arg => { if (_core.TryGetUiManager(out IUiManager ui)) { await ui.ShowPopup <object>(new PasswordResetViewModel(_core)); } else { _core.Logger.Error(this, "ui manager not loaded"); } }); }