Example #1
0
        public void PerformTvDBSearch(SearchCriteria crit)
        {
            if (!VM_ShokoServer.Instance.ServerOnline)
            {
                return;
            }

            Cursor       = Cursors.Wait;
            SearchStatus = string.Format(Shoko.Commons.Properties.Resources.Community_Searching);

            txtSearch.Text = crit.AnimeID.ToString();

            try
            {
                TVDBResults.Clear();
                btnRandomAnime.IsEnabled = false;
                btnSearch.IsEnabled      = false;

                Cursor = Cursors.Wait;

                searchTvDBWorker.RunWorkerAsync(crit);
            }
            catch (Exception ex)
            {
                Utils.ShowErrorMessage(ex);
            }
        }
        public void PerformSearch(SearchCriteria crit)
        {
            if (!JMMServerVM.Instance.ServerOnline)
            {
                return;
            }

            this.Cursor  = Cursors.Wait;
            SearchStatus = string.Format("Searching...");

            try
            {
                TVDBResults.Clear();
                btnRandomAnime.IsEnabled = false;
                btnSearch.IsEnabled      = false;

                this.Cursor = Cursors.Wait;

                searchWorker.RunWorkerAsync(crit);
            }
            catch (Exception ex)
            {
                Utils.ShowErrorMessage(ex);
            }
        }
Example #3
0
        void btnRandomAnime_Click(object sender, RoutedEventArgs e)
        {
            if (!JMMServerVM.Instance.ServerOnline)
            {
                return;
            }

            SearchStatus = Properties.Resources.Community_Searching;

            btnRandomAnime.IsEnabled = false;
            btnSearch.IsEnabled      = false;

            this.Cursor = Cursors.Wait;
            try
            {
                if (tabResults.SelectedIndex == 0)
                {
                    TVDBResults.Clear();

                    JMMServerBinary.Contract_Azure_AnimeLink contract = JMMServerVM.Instance.clientBinaryHTTP.Admin_GetRandomLinkForApproval((int)AzureLinkType.TvDB);
                    if (contract != null)
                    {
                        AzureAnimeLink link = new AzureAnimeLink(contract);
                        SearchCriteria crit = new SearchCriteria();
                        crit.AnimeID   = link.RandomAnimeID;
                        crit.ExtraInfo = string.Format(Properties.Resources.Community_TvDBApproval, link.AnimeNeedingApproval);

                        PerformTvDBSearch(crit);
                    }
                }
                else if (tabResults.SelectedIndex == 1)
                {
                    TraktResults.Clear();

                    JMMServerBinary.Contract_Azure_AnimeLink contract = JMMServerVM.Instance.clientBinaryHTTP.Admin_GetRandomLinkForApproval((int)AzureLinkType.Trakt);
                    if (contract != null)
                    {
                        AzureAnimeLink link = new AzureAnimeLink(contract);
                        SearchCriteria crit = new SearchCriteria();
                        crit.AnimeID   = link.RandomAnimeID;
                        crit.ExtraInfo = string.Format(Properties.Resources.Community_TraktApproval, link.AnimeNeedingApproval);

                        PerformTraktSearch(crit);
                    }
                }
            }
            catch (Exception ex)
            {
                this.Cursor = Cursors.Arrow;
                btnRandomAnime.IsEnabled = true;
                btnSearch.IsEnabled      = true;
                Utils.ShowErrorMessage(ex);
            }
        }
Example #4
0
        void btnRandomAnime_Click(object sender, RoutedEventArgs e)
        {
            if (!VM_ShokoServer.Instance.ServerOnline)
            {
                return;
            }

            SearchStatus = Shoko.Commons.Properties.Resources.Community_Searching;

            btnRandomAnime.IsEnabled = false;
            btnSearch.IsEnabled      = false;

            Cursor = Cursors.Wait;
            try
            {
                if (tabResults.SelectedIndex == 0)
                {
                    TVDBResults.Clear();

                    Azure_AnimeLink link = VM_ShokoServer.Instance.ShokoServices.Admin_GetRandomLinkForApproval((int)AzureLinkType.TvDB);
                    if (link != null)
                    {
                        SearchCriteria crit = new SearchCriteria();
                        crit.AnimeID   = link.RandomAnimeID;
                        crit.ExtraInfo = string.Format(Shoko.Commons.Properties.Resources.Community_TvDBApproval, link.AnimeNeedingApproval);

                        PerformTvDBSearch(crit);
                    }
                }
                else if (tabResults.SelectedIndex == 1)
                {
                    TraktResults.Clear();

                    Azure_AnimeLink link = VM_ShokoServer.Instance.ShokoServices.Admin_GetRandomLinkForApproval((int)AzureLinkType.Trakt);
                    if (link != null)
                    {
                        SearchCriteria crit = new SearchCriteria();
                        crit.AnimeID   = link.RandomAnimeID;
                        crit.ExtraInfo = string.Format(Shoko.Commons.Properties.Resources.Community_TraktApproval, link.AnimeNeedingApproval);

                        PerformTraktSearch(crit);
                    }
                }
            }
            catch (Exception ex)
            {
                Cursor = Cursors.Arrow;
                btnRandomAnime.IsEnabled = true;
                btnSearch.IsEnabled      = true;
                Utils.ShowErrorMessage(ex);
            }
        }
Example #5
0
        void searchTvDBWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            try
            {
                SearchTvDBResults res = e.Result as SearchTvDBResults;
                if (!string.IsNullOrEmpty(res.ErrorMessage))
                {
                    //MessageBox.Show()
                    SearchStatus = res.ErrorMessage;
                    return;
                }

                foreach (VM_CrossRef_AniDB_TvDBV2 tvxref in res.TvDBLinks)
                {
                    TVDBResults.Add(tvxref);
                }

                SearchStatus = string.Empty;
                if (!string.IsNullOrEmpty(res.ExtraInfo))
                {
                    SearchStatus = res.ExtraInfo;
                }

                //SearchStatus = string.Format("{0} Anime still need TvDB approval", link.AnimeNeedingApproval);
            }
            catch (Exception ex)
            {
                Utils.ShowErrorMessage(ex);
            }
            finally
            {
                Cursor = Cursors.Arrow;
                btnRandomAnime.IsEnabled = true;
                btnSearch.IsEnabled      = true;
            }
        }
        void btnRandomAnime_Click(object sender, RoutedEventArgs e)
        {
            if (!JMMServerVM.Instance.ServerOnline)
            {
                return;
            }

            SearchStatus = "Searching...";

            btnRandomAnime.IsEnabled = false;
            btnSearch.IsEnabled      = false;

            this.Cursor = Cursors.Wait;
            try
            {
                TVDBResults.Clear();

                JMMServerBinary.Contract_Azure_AnimeLink contract = JMMServerVM.Instance.clientBinaryHTTP.Admin_GetRandomLinkForApproval((int)AzureLinkType.TvDB);
                if (contract != null)
                {
                    AzureAnimeLink link = new AzureAnimeLink(contract);
                    SearchCriteria crit = new SearchCriteria();
                    crit.AnimeID   = link.RandomAnimeID;
                    crit.ExtraInfo = string.Format("{0} Anime still need TvDB approval", link.AnimeNeedingApproval);

                    PerformSearch(crit);
                }
            }
            catch (Exception ex)
            {
                this.Cursor = Cursors.Arrow;
                btnRandomAnime.IsEnabled = true;
                btnSearch.IsEnabled      = true;
                Utils.ShowErrorMessage(ex);
            }
        }