/// <summary> /// Sauvegarde dans le fichier les modifications apportés un mot de passe, ou l'ajout de ce dernier /// </summary> /// <returns>les erreurs éventuellements générés</returns> public async Task <string> Save() { var retour = Validate(); //si aucune erreur if (string.IsNullOrWhiteSpace(retour)) { //en cas d'ajout du mot de passe if (Action.Equals(ActionMotDePasseEnum.Ajouter)) { var mdp = new MotDePasse { Titre = Titre, Login = Login, MotDePasseObjet = Password, SiteWeb = Site, Commentaire = Commentaire, DossierPossesseur = DossierPossesseur, IdIcone = SelectedIcone }; var res = ContexteAppli.ListeIcone.Where(x => (int)x.Tag == SelectedIcone).ToList(); if (res.Count > 0) { mdp.Icone = (BitmapImage)res[0].Source; } else { mdp.Icone = null; } DossierPossesseur.ListeMotDePasse.Add(mdp); } //en cas de modification placement des nouvelles informations if (Action.Equals(ActionMotDePasseEnum.Modifier)) { PasswordOriginal.Titre = Titre; PasswordOriginal.Login = Login; PasswordOriginal.MotDePasseObjet = Password; PasswordOriginal.IdIcone = SelectedIcone; PasswordOriginal.Commentaire = Commentaire; PasswordOriginal.SiteWeb = Site; var res = ContexteAppli.ListeIcone.Where(x => (int)x.Tag == PasswordOriginal.IdIcone).ToList(); if (res.Count > 0) { PasswordOriginal.Icone = (BitmapImage)res[0].Source; } else { PasswordOriginal.Icone = null; } } //sauvegarde await PasswordBusiness.Save(); //mise à jour de la liste de cortana await CortanaBusiness.UpdateCortana(); } return(retour); }
/// <summary> /// supprime un mot de passe des données de l'utilisateur et sauvegarde le fichier /// </summary> public async Task SupprimerMotDepasse() { Password.DossierPossesseur.ListeMotDePasse.Remove(Password); await PasswordBusiness.Save(); //mise à jour de la liste de cortana await CortanaBusiness.UpdateCortana(); }
/// <summary> /// Efface le fichier de mot de passe /// </summary> /// <returns></returns> public static async Task <bool> ReinitAppli() { //efface le fichier des mots de passes if (await PasswordBusiness.Delete() && await ParamBusiness.Delete() && await CortanaBusiness.DeletePassword()) { await IconeBusiness.DeletelAll(); await ImageUnlockBusiness.DeleteFile(); await CortanaBusiness.UpdateCortana(); await Initialize(true, null); return(true); } return(false); }
private async void validerButton_Click(object sender, RoutedEventArgs e) { WaitRing.IsActive = true; ValiderButton.IsEnabled = false; ParcourirButton.IsEnabled = false; ChangerDossierButton.IsEnabled = false; EraseCheckBox.IsEnabled = false; MdpTextbox.IsEnabled = false; var erreur = ""; try { //vérification du format if (FormatComboBox.SelectedItem != null) { ViewModel.FormatChoisi = ((ImportExportViewModel.ExportFormat)FormatComboBox.SelectedItem); } else { erreur = ResourceLoader.GetForCurrentView("Errors").GetString("erreurAucunFormat"); } ViewModel.MdpCypher = MdpTextbox.Password; //ViewModel.SelectedDossier = ContexteAppli.PageViewMere.GetDossierSelected(); switch (ViewModel.Mode) { case ImportExportEnum.Import: switch (ViewModel.FormatChoisi.Id) { case 1: erreur = await ViewModel.ImporterCsv(); break; case 2: erreur = await ViewModel.ImporterXml(); break; case 3: erreur = await ViewModel.ImporterKwi(); break; } break; case ImportExportEnum.Export: switch (ViewModel.FormatChoisi.Id) { case 1: erreur = await ViewModel.ExporterCsv(); break; case 2: erreur = await ViewModel.ExporterXml(); break; case 3: erreur = await ViewModel.ExporterKwi(); break; } break; } if (!string.IsNullOrWhiteSpace(erreur)) { TextBlockErreur.Text = erreur; } else { await PasswordBusiness.Save(); //mise à jour de la liste de cortana await CortanaBusiness.UpdateCortana(); switch (ViewModel.Mode) { case ImportExportEnum.Import: await MessageBox.ShowAsync(ResourceLoader.GetForCurrentView().GetString("textImportOK"), "", MessageBoxButton.Ok); break; case ImportExportEnum.Export: await MessageBox.ShowAsync(ResourceLoader.GetForCurrentView().GetString("textExportOK"), "", MessageBoxButton.Ok); break; } ((Frame)Window.Current.Content).Navigate(typeof(MainPageView)); } } catch { TextBlockErreur.Text = ResourceLoader.GetForCurrentView("Errors").GetString("erreurInconnu"); } WaitRing.IsActive = false; ValiderButton.IsEnabled = true; ParcourirButton.IsEnabled = true; ChangerDossierButton.IsEnabled = true; EraseCheckBox.IsEnabled = true; MdpTextbox.IsEnabled = true; }