Ejemplo n.º 1
0
        /// <summary>
        /// Deletes currently selected results
        /// </summary>
        private void DeleteResult()
        {
            var selectedItem = ListViewModel.SelectedItem();

            if (selectedItem == null)
            {
                return;
            }

            var vm = new DecisionDialogViewModel()
            {
                Title      = "Usuwanie rezultatu",
                Message    = "Czy chcesz usunąć ten rezultat?",
                AcceptText = LocalizationResource.Yes,
                CancelText = LocalizationResource.No,
            };

            DI.UI.ShowMessage(vm);

            if (vm.UserResponse == false)
            {
                return;
            }

            try
            {
                // Try to delete the file
                ResultFileWriter.DeleteFile(selectedItem);
            }
            catch (Exception ex)
            {
                // If an error occured, show info to the user
                DI.UI.ShowMessage(new MessageBoxDialogViewModel
                {
                    Title   = LocalizationResource.DeletionError,
                    Message = "Nie udało się usunąć tego rezultatu." + "\n" +
                              LocalizationResource.ErrorContentSemicolon + ex.Message,
                    OkText = LocalizationResource.Ok
                });

                DI.Logger.Log("Unable to delete result from local folder, error message: " + ex.Message);
            }

            // Reload items
            ListViewModel.LoadItems();

            SetDefaults();
            OnPropertyChanged(nameof(ItemsLoadedCount));
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Saves results to file
        /// </summary>
        /// <returns>True if operation was successful; otherwise, false</returns>
        private bool TrySaveResultsToFile()
        {
            try
            {
                // Try to write the results to file
                ResultFileWriter.WriteToFile(new ClientTestResults()
                {
                    Answers           = UserAnswers,
                    SessionIdentifier = SessionIdentifier,
                    Client            = new TestResultsClientModel()
                    {
                        Name           = mClientModel.Name,
                        LastName       = mClientModel.LastName,
                        MachineName    = mClientModel.MachineName,
                        Mark           = UserMark,
                        PointsScored   = UserScore,
                        QuestionsOrder = QuestionsOrder,
                    },
                    Test = CurrentTest,
                });

                DI.UI.ShowMessage(new MessageBoxDialogViewModel
                {
                    Title   = "Wyniki testu w pliku",
                    Message = "Wyniki testu zostały zapisane do pliku, ponieważ połączenie z serwerem zostało utracone.",
                    OkText  = "Ok"
                });

                DI.Logger.Log($"Test results saved to file");

                return(true);
            }
            catch (Exception ex)
            {
                DI.UI.ShowMessage(new MessageBoxDialogViewModel
                {
                    Title   = "Błąd zapisu",
                    Message = "Nie udało się zapisać ani wysłać wyników testu." +
                              "\nTreść błędu: " + ex.Message,
                    OkText = "Ok"
                });

                DI.Logger.Log($"Unable to save the results, error message: {ex.Message}");

                return(false);
            }
        }