示例#1
0
        /// <summary>
        /// Used for counting security score list data
        /// </summary>
        public void SecurityScoreDataCount()
        {
            if (pbData.Locked)
            {
                return;
            }
            AllPasswordsCount = pbData.GetSecureItemCountByType(SecurityItemsDefaultProperties.SecurityItemType_PasswordVault);
            var SecurityScoreDuplicateDataItems = BindingSecurityScoreList(SecurityScoreItemType.duplicate);

            Steps[0].Count = SecurityScoreDuplicateDataItems.Count();
            (Steps[0]  as DublicatePasswordsStep).DublicateSecurityScoreData = SecurityScoreDuplicateDataItems.GroupBy(x => x.password);


            var SecurityScoreWeakDataItems = BindingSecurityScoreList(SecurityScoreItemType.week);

            Steps[1].Count             = SecurityScoreWeakDataItems.Count();
            Steps[1].SecurityScoreData = SecurityScoreWeakDataItems;

            var SecurityScoreOldDataItems = BindingSecurityScoreList(SecurityScoreItemType.old);

            Steps[2].Count             = SecurityScoreOldDataItems.Count();
            Steps[2].SecurityScoreData = SecurityScoreOldDataItems;

            _securityScoreDecimal = SecurityScoreDataHelper.GetSecurityScorePercentage(SecurityScoreDuplicateDataItems, SecurityScoreWeakDataItems, SecurityScoreOldDataItems);
            SecurityScore         = string.Format("{0:0}%", _securityScoreDecimal);
        }
示例#2
0
        public SecurityScoreViewModel(IResolver resolver)
        {
            pbData                   = resolver.GetInstanceOf <IPBData>();
            inAppAnalyitics          = resolver.GetInstanceOf <IInAppAnalytics>();
            _securityScoreDataHelper = new Helpers.SecurityScoreDataHelper(resolver);
            this.resolver            = resolver;

            RefreshStats();
            InitializeCommands();

            var setting = pbData.GetUserSetting(DefaultProperties.Configuration_Key_SecurityScoreInfo);

            if (!string.IsNullOrWhiteSpace(setting))
            {
                bool ret;
                if (bool.TryParse(setting, out ret))
                {
                    ShowUpdatePasswordInfo = !ret;
                }
            }
        }
示例#3
0
        public void RefreshStats()
        {
            //vedo - async
            Application.Current.Dispatcher.BeginInvoke((Action)(() =>
            {
                SecurityScoreDataCount();

                var scLog = inAppAnalyitics.Get <Events.AnalyticsLog, AnalyticsItem>();

                var item = new AnalyticsItem(Convert.ToInt32(_securityScoreDecimal), DuplicatePasswordCounter, WeakPasswordCounter, OldPasswordCounter, SecurityScoreDataHelper.GetSecurityScoreData(SecurityScoreItemType.all).Count());

                scLog.Log(item);
            }));
        }
示例#4
0
 public List <SecurityScoreData> BindingSecurityScoreList(string type)
 {
     return(SecurityScoreDataHelper.GetSecurityScoreData(type));
 }