public async void DeleteQuiz(object sender, Windows.UI.Xaml.RoutedEventArgs e) { if (quizParams.Quiz == null) { DisplayErrorMessageAsync("Please select a quiz from the list"); return; } Quiz quiz = quizParams.Quiz; var myHashId = HashGenerator.ComputeSha256Hash(IdentityService.GetAccountIdentifier()); if (myHashId != quizParams.Quiz.UserIdHash) { DisplayErrorMessageAsync("Error. UserId hash did not match quiz's UserId hash."); return; } bool userConfirmed = await DisplayAreYouSureDialog().ConfigureAwait(true); if (userConfirmed) { if (IdentityService.IsLoggedIn()) { if (await QuizRequest.DeleteQuizAsync(quiz).ConfigureAwait(true)) { NavigationService.Navigate(typeof(MainPage)); } else { DisplayErrorMessageAsync("There was an error deleting the quiz."); } } } }
public async void FillQuizList() { //TODO: errorhandling no internet var thisHashId = HashGenerator.ComputeSha256Hash(IdentityService.GetAccountIdentifier()); var quizList = await QuizRequest.GetQuizzesFromIdHashAsync(thisHashId).ConfigureAwait(true); foreach (Quiz q in quizList) { QuizzesObservableCollection.Add(q); } }
public async void AddQuiz() { var myHashId = HashGenerator.ComputeSha256Hash(IdentityService.GetAccountIdentifier()); if (myHashId != quiz.UserIdHash) { DisplayErrorMessageAsync("Error. UserId hash did not match quiz's UserId hash."); return; } if (QuizIsValid(quiz)) { bool userConfirmed = await DisplayAreYouSureDialog().ConfigureAwait(true); if (userConfirmed) { quiz.QuizName = QuizNameHeader; //updating quiz and question's ICollections and deleting their ILists. quiz.Questions.Clear(); foreach (Question q in quiz.QuestionList) { quiz.Questions.Add(q); } quiz.QuestionList.Clear(); foreach (var question in quiz.Questions) { question.Answers.Clear(); foreach (var answer in question.AnswersList) { question.Answers.Add(answer); } question.AnswersList.Clear(); } if (IdentityService.IsLoggedIn()) { if (await QuizRequest.UpdateQuizCascadingAsync(quiz).ConfigureAwait(true)) { NavigationService.Navigate(typeof(MainPage)); } else { DisplayErrorMessageAsync("There was an error updating the quiz."); } } } } }
public async void AddQuiz() { if (QuizIsValid(quiz)) { bool userConfirmed = await DisplayAreYouSureDialog().ConfigureAwait(true); if (userConfirmed) { //updating quiz and question's ICollections and deleting their ILists. quiz.Questions.Clear(); foreach (Question q in quiz.QuestionList) { quiz.Questions.Add(q); } quiz.QuestionList = null; foreach (var q in quiz.Questions) { q.Answers.Clear(); foreach (var answer in q.AnswersList) { q.Answers.Add(answer); } q.AnswersList = null; } if (IdentityService.IsLoggedIn()) { quiz.UserIdHash = HashGenerator.ComputeSha256Hash(IdentityService.GetAccountIdentifier()); } if (await QuizRequest.AddQuizToDbAsync(quiz).ConfigureAwait(true)) { Quizzes.Add(quiz); NavigationService.Navigate(typeof(MainPage)); } else { DisplayErrorMessageAsync("There was an unknown error adding your quiz to the database."); } } } }