Beispiel #1
0
        public async Task DeletePassword()
        {
            if (appController.Busy)
            {
                return;
            }
            else
            {
                appController.EnableBusyState();
            }

            var vm = viewModelsController.GetViewModel <DeleteViewModel>();

            if (vm.SelectedPassword == null)
            {
                appController.DisableBusyState();
                return;
            }

            try
            {
                await appRepository.DeletePassword(vm.SelectedPassword.Id);

                appController.RefreshViewModels();

                appController.DisableBusyState();
                appController.ShowInfoPage("Success!", "Password Deleted!");
            }
            catch (Exception)
            {
                appController.DisableBusyState();
                appController.ShowInfoPage("Issue!", "Please try again!");
            }
        }
        public async Task SavePassword()
        {
            if (appController.Busy)
            {
                return;
            }
            else
            {
                appController.EnableBusyState();
            }

            var vm = viewModelsController.GetViewModel <CreateViewModel>();

            if (string.IsNullOrEmpty(vm.Login) ||
                string.IsNullOrEmpty(vm.Name) ||
                string.IsNullOrEmpty(vm.Email) ||
                (string.IsNullOrEmpty(vm.Password) &&
                 string.IsNullOrEmpty(vm.CustomPassword)))
            {
                appController.DisableBusyState();
                return;
            }

            try
            {
                var modelToAdd = new PasswordRecord
                {
                    Email        = vm.Email,
                    Name         = vm.Name,
                    Password     = string.IsNullOrEmpty(vm.CustomPassword) ? vm.Password : vm.CustomPassword,
                    Lenght       = string.IsNullOrEmpty(vm.CustomPassword) ? vm.Password.Length : vm.CustomPassword.Length,
                    Login        = vm.Login,
                    LowerCases   = string.IsNullOrEmpty(vm.CustomPassword) ? passwordReviewer.CheckLowerCase(vm.Password) : passwordReviewer.CheckLowerCase(vm.CustomPassword),
                    UpperCases   = string.IsNullOrEmpty(vm.CustomPassword) ? passwordReviewer.CheckUpperCase(vm.Password) : passwordReviewer.CheckUpperCase(vm.CustomPassword),
                    NumbersCases = string.IsNullOrEmpty(vm.CustomPassword) ? passwordReviewer.CheckNumericCase(vm.Password) : passwordReviewer.CheckNumericCase(vm.CustomPassword),
                    SpecialCases = string.IsNullOrEmpty(vm.CustomPassword) ? passwordReviewer.CheckSpecialCase(vm.Password) : passwordReviewer.CheckSpecialCase(vm.CustomPassword),
                    PolishCases  = string.IsNullOrEmpty(vm.CustomPassword) ? passwordReviewer.CheckPolishCase(vm.Password) : passwordReviewer.CheckPolishCase(vm.CustomPassword),
                };

                await appRepository.CreatePassword(modelToAdd);

                appController.RefreshViewModels();
                appController.DisableBusyState();
                appController.ShowInfoPage("Hasło zapisane!", "Sprawdź Panel by zobaczyć wszystkie dane.");
            }
            catch (Exception)
            {
                appController.DisableBusyState();
                appController.ShowInfoPage("Hasło nie zostało zapisane!", "Spróbuj jeszcze raz.");
            }
        }