public CommunitySearchSource( CommunitySearchPagePayloadContent searchOption, SearchProvider searchProvider ) { SearchKeyword = searchOption.Keyword; Mode = searchOption.Mode; Sort = searchOption.Sort; Order = searchOption.Order; SearchProvider = searchProvider; }
public static void SearchCommunity(this PageManager pageManager, string content, Mntone.Nico2.Order order, CommunitySearchSort sort, CommunitySearchMode mode) { var payload = new CommunitySearchPagePayloadContent() { Keyword = content, Order = order, Sort = sort, Mode = mode }; pageManager.OpenPage(HohoemaPageType.SearchResultCommunity, payload.ToParameterString()); }
public CommunitySearchSource( CommunitySearchPagePayloadContent searchOption , HohoemaApp app , PageManager pageManager ) { HohoemaApp = app; PageManager = pageManager; SearchKeyword = searchOption.Keyword; Mode = searchOption.Mode; Sort = searchOption.Sort; Order = searchOption.Order; }
public override Task OnNavigatedToAsync(INavigationParameters parameters) { var mode = parameters.GetNavigationMode(); if (mode == NavigationMode.New) { Keyword = System.Net.WebUtility.UrlDecode(parameters.GetValue <string>("keyword")); SearchOption = new CommunitySearchPagePayloadContent() { Keyword = Keyword }; } SelectedSearchTarget.Value = SearchOption?.SearchTarget ?? SearchTarget.Community; if (SearchOption == null) { throw new Models.Infrastructure.HohoemaExpception("コミュニティ検索"); } SelectedSearchSort.Value = CommunitySearchSortOptionListItems.FirstOrDefault(x => x.Order == SearchOption.Order && x.Sort == SearchOption.Sort); SelectedSearchMode.Value = CommunitySearchModeOptionListItems.FirstOrDefault(x => x.Mode == SearchOption.Mode); new[] { SelectedSearchSort.ToUnit(), SelectedSearchMode.ToUnit() } .CombineLatest() .Subscribe(async _ => { SearchOption.Sort = SelectedSearchSort.Value.Sort; SearchOption.Order = SelectedSearchSort.Value.Order; SearchOption.Mode = SelectedSearchMode.Value.Mode; ResetList(); }) .AddTo(_NavigatingCompositeDisposable); _searchHistoryRepository.Searched(SearchOption.Keyword, SearchOption.SearchTarget); return(base.OnNavigatedToAsync(parameters)); }