private SecureItemViewModel GetFullSecureItem(string Id)
        {
            var secureItem = pbData.GetSecureItemById(Id);
            var item       = SubItemsComponentTree.FirstOrDefault(x => x.ItemType == secureItem.Type);

            if (item != null)
            {
                return(Activator.CreateInstance(item.CreateItemType, secureItem, item.BackgoundColor, item.Icon) as SecureItemViewModel);
            }

            return(null);
        }
        public ISecureItemVM CreateItemForSearch(SecureItemSearchResult searchItem)
        {
            var item = SubItemsComponentTree.FirstOrDefault(x => x.ItemType == searchItem.Type);

            if (item != null)
            {
                var secureItemVM = Activator.CreateInstance(item.CreateItemType, searchItem, item.BackgoundColor, item.Icon) as SecureItemViewModel;
                if (secureItemVM != null)
                {
                    secureItemVM.Edit_Clicked         += EdiSearchItemClicked;
                    secureItemVM.DeletingIcon_Clicked += DeleteImage_Clicked;
                    return(secureItemVM);
                }
            }
            return(null);
        }
        public List <SecureItemViewModel> GetViewItems(bool recommendedsiteFlag)
        {
            Stopwatch watch = new Stopwatch();

            watch.Start();
            IPBData                    pbData   = resolver.GetInstanceOf <IPBData>();
            IPBWebAPI                  pbWebApi = resolver.GetInstanceOf <IPBWebAPI>();
            List <SecureItem>          sites;
            List <SecureItemViewModel> passVaultItems = new List <SecureItemViewModel>();

            try
            {
                if ((sites = pbData.GetSecureItemsByItemType(SecureItemType)) != null)
                {
                    foreach (var site in sites)
                    {
                        if (site.Data == null)
                        {
                            logger.Error("GetSortedViewItems: site data is null");
                            continue;
                        }
                        var item = SubItemsComponentTree.FirstOrDefault(x => x.ItemType == site.Type);
                        if (item != null)
                        {
                            var secureItemVM = Activator.CreateInstance(item.CreateItemType, site, item.BackgoundColor, item.Icon) as SecureItemViewModel;

                            passVaultItems.Add(secureItemVM);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show((string)System.Windows.Application.Current.FindResource("GeneralErrorText"));
                logger.Error(ex.Message);
            }
            watch.Stop();
            logger.Info("SecureItemsHolderViewModel.GetViewItems> items got: {0}, executed in: {1} ms", passVaultItems.Count, watch.ElapsedMilliseconds);
            return(passVaultItems);
        }
Example #4
0
        private void CreateSecureItems(IEnumerable <SecureItem> sites)
        {
            var secureItems = sites as SecureItem[] ?? sites.ToArray();

            foreach (var site in secureItems)
            {
                if (site.Data == null)
                {
                    Logger.Error("GetSortedViewItems: site data is null");
                    continue;
                }
                var item = SubItemsComponentTree.FirstOrDefault(x => x.ItemType == site.Type);
                if (item != null)
                {
                    var secureItemVm = Activator.CreateInstance(item.CreateItemType, site, item.BackgoundColor, item.Icon) as SecureItemViewModel;
                    AllItems.Add(secureItemVm);
                }
            }
            if (secureItems.Any())
            {
                RaisePropertyChanged("AllItems");
            }
        }
        public IEnumerable <SecureItemViewModel> GetViewItems()
        {
            var watch = new Stopwatch();

            watch.Start();
            var passVaultItems = new List <SecureItemViewModel>();

            try
            {
                List <SecureItem> sites;
                if ((sites = _pbData.GetSecureItemsByItemType("PV")) != null)
                {
                    foreach (var site in sites)
                    {
                        if (site.Data == null)
                        {
                            Logger.Error("GetSortedViewItems: site data is null");
                            continue;
                        }
                        var item = SubItemsComponentTree.FirstOrDefault(x => x.ItemType == site.Type);
                        if (item != null)
                        {
                            var secureItemVm = Activator.CreateInstance(item.CreateItemType, site, item.BackgoundColor, item.Icon) as SecureItemViewModel;
                            passVaultItems.Add(secureItemVm);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show((string)Application.Current.FindResource("GeneralErrorText"));
                Logger.Error(ex.Message);
            }
            watch.Stop();
            Logger.Info("items got: {0}, executed in: {1} ms", passVaultItems.Count, watch.ElapsedMilliseconds);
            return(passVaultItems);
        }
Example #6
0
        public List <SecureItemViewModel> GetViewItems(bool recommendedsiteFlag)
        {
            Stopwatch watch = new Stopwatch();

            watch.Start();
            IPBData                    pbData   = resolver.GetInstanceOf <IPBData>();
            IPBWebAPI                  pbWebApi = resolver.GetInstanceOf <IPBWebAPI>();
            List <SecureItem>          secureItems;
            List <SecureItemViewModel> passVaultItems = new List <SecureItemViewModel>();

            try
            {
                if (recommendedsiteFlag)
                {
                    //passVaultItems.Add(new DefaultView() { Id = "2", Image = System.Windows.Application.Current.FindResource("22").ToString(), Name = System.Windows.Application.Current.FindResource("BankAccount").ToString(), Category = System.Windows.Application.Current.FindResource("BankAccount").ToString(), Favorite = false, Username = null, LastAccess = null, RecommendedHoverText = System.Windows.Application.Current.FindResource("AddBank").ToString() });
                    //passVaultItems.Add(new DefaultView() { Id = "1", Image = System.Windows.Application.Current.FindResource("21").ToString(), Name = System.Windows.Application.Current.FindResource("CreditCard").ToString(), Category = System.Windows.Application.Current.FindResource("CreditCard").ToString(), Favorite = false, Username = null, LastAccess = null, RecommendedHoverText = System.Windows.Application.Current.FindResource("AddCreditCard").ToString() });
                }
                else
                {
                    if ((secureItems = pbData.GetSecureItemsByItemType(DefaultProperties.SecurityItemType_DigitalWallet)) != null)
                    {
                        string text2 = String.Empty;
                        string text1 = String.Empty;
                        foreach (var item in secureItems)
                        {
                            var sItem = SubItemsComponentTree.FirstOrDefault(x => x.ItemType == item.Type);

                            var secureItemVM = Activator.CreateInstance(sItem.CreateItemType, item, sItem.BackgoundColor, sItem.Icon) as SecureItemViewModel;

                            passVaultItems.Add(secureItemVM);

                            //text2 = String.Empty;
                            //text1 = item.Name;
                            //string image = String.Empty;
                            //switch (item.Type)
                            //{
                            //    case DefaultProperties.SecurityItemSubType_DW_Bank:
                            //        text2 = String.Empty;// item.Data.bank;
                            //        image = System.Windows.Application.Current.FindResource("22").ToString();
                            //        break;
                            //    case DefaultProperties.SecurityItemSubType_DW_CreditCard:
                            //        if (item.Data.cardNumber != null)
                            //        {
                            //            string num = string.Join(String.Empty, item.Data.cardNumber.Where(Char.IsLetterOrDigit).ToArray());

                            //            if (num.Length >= 4)
                            //                text2 += String.Format("**** - {0}", num.Substring(num.Length - 4, 4));
                            //            else
                            //                text2 += String.Format("**** - {0}", num);
                            //        }


                            //        if (item.Color == null) item.Color = "0";
                            //        if (String.IsNullOrEmpty(item.Color)) item.Color = "0";
                            //                                           break;
                            //    case DefaultProperties.SecurityItemSubType_DW_Paypal:
                            //        text2 = item.Data.username;
                            //        text1 = item.Name;
                            //        image = System.Windows.Application.Current.FindResource("23").ToString();
                            //        break;
                            //    default:
                            //        text2 = String.Empty;
                            //        text1 = String.Empty;
                            //        break;
                            //}
                            //passVaultItems.Add(new DefaultView() { Id = item.Id, Name = text1, Image = image, Category = item.Folder != null ? item.Folder.Name : "Other", Favorite = item.Favorite, Username = text2, LastAccess = item.LastAccess, shared = item.Share });
                            ////_items.Add(new DefaultView() { Id = item.Id, Name = item.Name, Image = image, Category = item.Category != null ? item.Category.Name : "Other", Favorite = item.Favorite, Username = text2, LastAccess = item.LastAccess, shared = item.Share });
                        }
                    }
                }

                //  passVaultItems = SortViewItems(sortIndex, passVaultItems);
            }
            catch (Exception ex)
            {
                MessageBox.Show((string)System.Windows.Application.Current.FindResource("GeneralErrorText"));
                logger.Error(ex.Message);
            }
            watch.Stop();
            logger.Info("executed in: {0} ms", watch.ElapsedMilliseconds);
            return(passVaultItems);
        }