internal void Close(bool askSaveChanges) { if (HasChanges && askSaveChanges) { MessengerInstance.Send(new AreYouSureMessage("Änderungen", "Sollen die Änderungen gespeichert werden?", () => { //Save changes SaveChangesCommand.Execute(null); })); } MessengerInstance.Send(new CloseTournamentMessage(this)); }
private void SetPassword(object parameter) { var passwords = parameter as PasswordBox[]; if (passwords == null) { return; } if (Settings.IsMasterPasswordSet) { string currentPassword = Hashing.EncryptString(passwords[2].Password); string storedPassword = Settings.WindowOpen; if (storedPassword == null) { Settings.IsMasterPasswordSet = false; SettingsChanging(); SaveChangesCommand.Execute(null); return; } if (currentPassword != storedPassword) { windowService.ShowMessageDialog("Wrong current password.", false); return; } } string password = passwords[0].Password; string confirmPassword = passwords[1].Password; if (password != confirmPassword) { windowService.ShowMessageDialog("Passwords don't match", false); return; } if (!string.IsNullOrEmpty(password.Trim())) { Settings.IsMasterPasswordSet = true; Settings.WindowOpen = Hashing.EncryptString(password); windowService.ShowMessageDialog("Password set.", false); } else { Settings.IsMasterPasswordSet = false; Settings.WindowOpen = ""; } SettingsChanging(); SaveChangesCommand.Execute(null); }
private void Start() { if (PlayAreas.Count == 0) { MessengerInstance.Send(new NoPlayAreaDefinedMessage()); return; } if (TeamCount != Teams.Count()) { MessengerInstance.Send(new TeamCountMismatchMessage(Model.Id.Value, Teams.Count, TeamCount)); return; } if (HasChanges) { bool abortStart = true; MessengerInstance.Send(new AreYouSureMessage("Ungespeicherte Änderungen", "Es gibt noch ungespeicherte Änderungen.\nDiese müssen gespeichert werden vor dem Start.\nWollen Sie jetzt speichern und fortfahren?", () => { abortStart = false; })); if (abortStart) { return; } SaveChangesCommand.Execute(null); } try { var resp = App.RestClient.StartWithHttpMessagesAsync(Id); resp.ContinueWith(t => { Model = resp.Result.Body; UpdateFromModel(Model); } ); } catch (Exception e) { if (e.GetType() == typeof(AggregateException) || e.GetType() == typeof(Microsoft.Rest.HttpOperationException)) { MessengerInstance.Send(new CommunicationErrorMessage()); } else { throw e; } } // Alle Properties => RaisePropertyChanged / Command.CanExecute updaten }