public static bool EvaluateAnimeTextSearch(VM_AniDB_Anime anime, string filterText, SeriesSearchType searchType = SeriesSearchType.TitleOnly)
        {
            filterText = filterText.Trim();
            if (string.IsNullOrEmpty(filterText))
            {
                return(true);
            }
            if (anime == null)
            {
                return(false);
            }

            // search the romaji name, english names etc from anidb
            if (anime.GetAllTitles() != null)
            {
                foreach (string title in anime.GetAllTitles())
                {
                    if (title.FuzzyMatches(filterText))
                    {
                        return(true);
                    }
                }
            }

            // check the tags
            if (searchType == SeriesSearchType.Everything && anime.GetAllTags().Contains(filterText, StringComparer.InvariantCultureIgnoreCase))
            {
                return(true);
            }

            return(false);
        }
        public static bool EvaluateAnimeTextSearch(VM_AniDB_Anime anime, string filterText, SeriesSearchType searchType)
        {
            if (string.IsNullOrEmpty(filterText) || anime == null)
            {
                return(true);
            }

            // search the romaji name, english names etc from anidb
            if (anime.GetAllTitles().SubContains(filterText))
            {
                return(true);
            }


            if (searchType == SeriesSearchType.Everything)
            {
                // check the tags
                if (anime.GetAllTags().Contains(filterText, StringComparer.InvariantCultureIgnoreCase))
                {
                    return(true);
                }
            }

            return(false);
        }
Exemplo n.º 3
0
        public void Init(VM_AniDB_Anime anime, string defaultGroupName)
        {
            VM_AnimeSearch srch = new VM_AnimeSearch();

            srch.AnimeID   = anime.AnimeID;
            srch.MainTitle = anime.MainTitle;
            srch.Titles    = new HashSet <string>(anime.GetAllTitles(), StringComparer.InvariantCultureIgnoreCase);

            SetSelectedAnime(srch);
            EvaluateRadioButtons();

            rbGroupExisting.IsChecked = true;

            AllGroups     = new ObservableCollection <VM_AnimeGroup_User>();
            SearchResults = new ObservableCollectionEx <VM_AnimeSearch>();

            try
            {
                ViewGroups = CollectionViewSource.GetDefaultView(AllGroups);
                ViewGroups.SortDescriptions.Add(new SortDescription("SortName", ListSortDirection.Ascending));

                ViewSearchResults = CollectionViewSource.GetDefaultView(SearchResults);
                ViewSearchResults.SortDescriptions.Add(new SortDescription("MainTitle", ListSortDirection.Ascending));

                List <VM_AnimeGroup_User> grpsRaw = VM_ShokoServer.Instance.ShokoServices.GetAllGroups(VM_ShokoServer.Instance.CurrentUser.JMMUserID).CastList <VM_AnimeGroup_User>();

                foreach (VM_AnimeGroup_User grp in grpsRaw)
                {
                    AllGroups.Add(grp);
                }

                ViewGroups.Filter = GroupSearchFilter;

                txtGroupName.Text     = defaultGroupName;
                txtGroupSortName.Text = defaultGroupName;
            }
            catch (Exception ex)
            {
                Utils.ShowErrorMessage(ex);
            }
        }
Exemplo n.º 4
0
 private string FormatTextOtherTitles()
 {
     return(string.Join(" **", MainAnime.GetAllTitles().ToList().Take(4)));
 }