示例#1
0
        /// <summary>
        /// Generates the horsify filters from database filters.
        /// </summary>
        /// <param name="filters">The filters.</param>
        /// <returns></returns>
        private IEnumerable <DjHorsifyFilterModel> GenerateHorsifyFilters(IEnumerable <Music.Data.Model.Filter> filters)
        {
            var horsifyFilters = new List <DjHorsifyFilterModel>();

            foreach (var filter in filters)
            {
                var horsifyFilter = HorsifyFilter.GetFilterFromString(filter.SearchTerms, filter);
                horsifyFilter.FileName = filter.Name;
                horsifyFilter.Id       = (int)filter.Id;
                horsifyFilters.Add(new DjHorsifyFilterModel(horsifyFilter));
            }

            return(horsifyFilters);
        }
        //Final Search filter
        //SearchFilter filter = new SearchFilter();

        private void OnSelectResultItem(object[] selectedItems)
        {
            if (selectedItems?.Length > 0)
            {
                var result = (string)selectedItems[0];

                if (!SelectedFilters.Any(x => x.Filters.Contains(result)))
                {
                    var filter = new HorsifyFilter()
                    {
                        SearchType = SearchType,
                        Filters    = new System.Collections.Generic.List <string>()
                        {
                            result
                        }
                    };

                    SelectedFilters.Add(filter);
                    //this.SelectedFilters.Add(result);
                }
            }
        }
示例#3
0
        public SearchFilter GenerateSearchFilter(IDjHorsifyOption djHorsifyOption)
        {
            IList <HorsifyFilter> horsifyFilters = new List <HorsifyFilter>();

            if (djHorsifyOption.SelectedFilters?.Count > 0)
            {
                foreach (var item in djHorsifyOption.SelectedFilters)
                {
                    var filter = new HorsifyFilter()
                    {
                        FileName          = item.FileName,
                        Filters           = item.Filters,
                        Id                = item.Id,
                        SearchAndOrOption = item.SearchAndOrOption,
                        SearchType        = item.SearchType
                    };

                    horsifyFilters.Add(filter);
                }

                return(new SearchFilter()
                {
                    BpmRange = djHorsifyOption.BpmRange,
                    Filters = horsifyFilters,
                    RatingRange = djHorsifyOption.RatingRange,
                    MusicKeys = djHorsifyOption.SelectedKeys.ToString()
                });
            }

            return(new SearchFilter()
            {
                BpmRange = djHorsifyOption.BpmRange,
                RatingRange = djHorsifyOption.RatingRange,
                MusicKeys = djHorsifyOption.SelectedKeys.ToString()
            });
        }