Exemplo n.º 1
0
        /// <summary>
        /// Retourne le mot de passe de l'utilisateur
        /// </summary>
        /// <returns>le mot de passe</returns>
        public static async Task <string> GetPasswordUser()
        {
            if (await _fichier.FileExist())
            {
                //récupération du mot de passe de l'utilisateur
                var mdpHash = await _fichier.LireString();

                return(DechiffrementStringSurchiffre(mdpHash));
            }
            return(null);
        }
Exemplo n.º 2
0
        /// <summary>
        /// charge le fichier de paramètre si il existe
        /// </summary>
        public static async Task Load(bool fullLoad)
        {
            //lecture
            if (_fichier != null && await _fichier.FileExist())
            {
                var inFile = await _fichier.LireString();

                var xsb   = new XmlSerializer(typeof(Param));
                var rd    = new StringReader(inFile);
                var param = xsb.Deserialize(rd) as Param;
                if (param != null)
                {
                    if (fullLoad)
                    {
                        ContexteAppli.IdCouleurTheme = param.EmplacementListeCouleur < ContexteStatic.ListeCouleur.Count
                            ? param.EmplacementListeCouleur
                            : ContexteStatic.ListeCouleur.IndexOf(0xFF00613F);
                        ListeLangues.ChangeLangueAppli(param.IdLangue);
                    }
                    ContexteAppli.IsCortanaActive = param.IsCortanaActive;
                }
                else
                {
                    ContexteAppli.IdCouleurTheme  = ContexteStatic.ListeCouleur.IndexOf(0xFF00613F);
                    ContexteAppli.IsCortanaActive = false;
                }
            }
            else
            {
                ContexteAppli.IdCouleurTheme  = ContexteStatic.ListeCouleur.IndexOf(0xFF00613F);
                ContexteAppli.IsCortanaActive = false;
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// Charger les données liées au roaming
        /// </summary>
        /// <returns>la task</returns>
        private static async Task DemarrageRoaming()
        {
            if (_roamingCompte == null)
            {
                _roamingCompte = new RoamingCompteModel();
            }

            if (_roamingCompteFile == null)
            {
                _roamingCompteFile = new ComFile(ContexteStatic.FichierCompteRoaming, ComFile.PlaceEcriture.Roaming);

                var sqlite = await ComSqlite.GetComSqlite();

                var dbExist = await sqlite.CheckDbExist();

                //controle du fichier (si il est vide et que la base de donnée (si elle existe) contient des données, on syncrhonise)
                if ((!await _roamingCompteFile.FileExist() || (await _roamingCompteFile.FileExist() && await _roamingCompteFile.GetSizeFile() == 0)) &&
                    App.ModeApp == AppareilEnum.ModeAppareilPrincipal &&
                    dbExist)
                {
                    var business = new BanqueBusiness();
                    await business.Initialization;
                    var listeBanque = await business.GetBanques();

                    foreach (var banque in listeBanque)
                    {
                        await AjouterBanque(banque);

                        var listeCompte = await business.GetCompteFmBanque(banque.Id);

                        foreach (var compte in listeCompte)
                        {
                            await AjouterCompte(compte);
                        }
                    }
                }
            }

            await LoadFileCompte();
        }
Exemplo n.º 4
0
        /// <summary>
        /// Charge les données du fichier de compte en roaming s'il existe
        /// </summary>
        private static async Task LoadFileCompte()
        {
            if (await _roamingCompteFile.FileExist() && await _roamingCompteFile.GetSizeFile() > 0)
            {
                var inFile = await _roamingCompteFile.LireByteArray();

                var xmlIn = CryptUtils.AesDecryptByteArrayToString(inFile, ContexteStatic.CleChiffrement,
                                                                   ContexteStatic.CleChiffrement);

                var xsb = new XmlSerializer(typeof(RoamingCompteModel));
                var rd  = new StringReader(xmlIn);
                _roamingCompte = xsb.Deserialize(rd) as RoamingCompteModel;
            }
        }
Exemplo n.º 5
0
        /// <summary>
        /// Charge le fichier des timers
        /// </summary>
        public async Task <bool> LoadFile()
        {
            try
            {
                //lecture et déserialization
                var xsb = new XmlSerializer(typeof(ListTimer));
                if (await _fichierData.FileExist() && ListeCaR != null && ListeChronos != null && ListeCaR.Count <= 0 && ListeChronos.Count <= 0)
                {
                    using (var rd = new StringReader(await _fichierData.LireString()))
                    {
                        var listTmp = xsb.Deserialize(rd) as ListTimer;
                        if (listTmp != null)
                        {
                            _listeCaR    = new ObservableCollection <CaR>(listTmp._listeCaR);
                            _listeChrono = new ObservableCollection <Chrono>(listTmp._listeChrono);

                            var emplacement = 0;

                            foreach (var c in _listeCaR)
                            {
                                emplacement++;
                                //control des données de chaque compte à rebours
                                c.Control();

                                //on controle et corrige les éventuels doublon d'id
                                for (var i = emplacement; i < _listeCaR.Count; i++)
                                {
                                    if (_listeCaR[i].Id == c.Id)
                                    {
                                        _listeCaR[i].Id = ((_listeCaR.Count == 0)
                                            ? 0
                                            : _listeCaR.OrderByDescending(s => s.Id).FirstOrDefault().Id) + 1;
                                    }
                                }
                            }

                            foreach (var c in _listeChrono)
                            {
                                emplacement++;
                                //control des données de chaque compte à rebours
                                c.Control();

                                //on controle et corrige les éventuels doublon d'id
                                for (var i = emplacement; i < _listeCaR.Count; i++)
                                {
                                    if (_listeCaR[i].Id == c.Id)
                                    {
                                        _listeCaR[i].Id = ((_listeCaR.Count == 0)
                                            ? 0
                                            : _listeCaR.OrderByDescending(s => s.Id).FirstOrDefault().Id) + 1;
                                    }
                                }
                            }

                            OrderByTimer      = listTmp.OrderByTimer;
                            MinuteRepeatToast = listTmp.MinuteRepeatToast;
                            NbRepeatToast     = listTmp.NbRepeatToast;
                            CouleurFond       = listTmp.CouleurFond;
                        }
                        else
                        {
                            _listeCaR    = new ObservableCollection <CaR>();
                            _listeChrono = new ObservableCollection <Chrono>();
                        }
                    }
                }
            }
            catch
            {
                //en cas d'erreur on réinitilise tout
                ListeCaR     = new ObservableCollection <CaR>();
                _listeChrono = new ObservableCollection <Chrono>();
                OrderByTimer = false;
                return(false);
            }
            TrierListeCaR();
            MajBadge();
            return(true);
        }