/// <summary> /// Creates new instance of <see cref="CodeConfirmation"/> /// </summary> public CodeConfirmation(CodeConfirmationViewModel codeConfirmationViewModel) { // initializing components InitializeComponent(); this.Owner = App.Current.Windows[0]; this._codeConfirmationVM = codeConfirmationViewModel; this.DataContext = this._codeConfirmationVM; }
/// <summary> /// Creates new instance of <see cref="ConfirmCommand"/> /// </summary> /// <param name="executeMethod">Execute method</param> /// <param name="canExecuteMethod">Can execute method</param> public ConfirmCommand(CodeConfirmationViewModel codeConfirmationViewModel, Func <UserVerificationInfo, Task <Response <HttpResponseMessage> > > executeMethod, Func <UserVerificationInfo, bool> canExecuteMethod) : base(executeMethod, canExecuteMethod) { this._vm = codeConfirmationViewModel; this._isConfirmAvailable = true; }
/// <summary> /// Executes the command asynchronously /// </summary> /// <param name="parameter">Command parameter</param> public override async void Execute(object parameter) { if (!this._isSignUpAvailable) { return; } this._isSignUpAvailable = false; this._vm.SetVisibilities(Visibility.Visible, Visibility.Collapsed, true); var dictionary = App.Current.Resources; try { var register = (Register)parameter; var response = await this.ExecuteAsync(register); if (response.Result.IsSuccessStatusCode) { var vm = new CodeConfirmationViewModel(register.Username); var window = new CodeConfirmation(vm); window.Show(); } else { RecipeMessageBox.Show((string)dictionary["register_fail"]); } } catch (Exception) { RecipeMessageBox.Show((string)dictionary["server_error"]); } finally { this._isSignUpAvailable = true; this._vm.SetVisibilities(Visibility.Collapsed, Visibility.Visible, false); } }
public CodeConfirmation() { InitializeComponent(); NavigationPage.SetHasNavigationBar(this, false); BindingContext = new CodeConfirmationViewModel(); }