public virtual void ReadFrom(XElement xE) { SearchParameters = null; IdeaType = null; RequestType = null; RequestedAttributeTypes = null; Paging = null; LocaleCode = null; CurrencyCode = null; foreach (var xItem in xE.Elements()) { var localName = xItem.Name.LocalName; if (localName == "searchParameters") { if (SearchParameters == null) { SearchParameters = new List <SearchParameter>(); } var searchParametersItem = InstanceCreator.CreateSearchParameter(xItem); searchParametersItem.ReadFrom(xItem); SearchParameters.Add(searchParametersItem); } else if (localName == "ideaType") { IdeaType = IdeaTypeExtensions.Parse(xItem.Value); } else if (localName == "requestType") { RequestType = RequestTypeExtensions.Parse(xItem.Value); } else if (localName == "requestedAttributeTypes") { if (RequestedAttributeTypes == null) { RequestedAttributeTypes = new List <AttributeType>(); } RequestedAttributeTypes.Add(AttributeTypeExtensions.Parse(xItem.Value)); } else if (localName == "paging") { Paging = new Paging(); Paging.ReadFrom(xItem); } else if (localName == "localeCode") { LocaleCode = xItem.Value; } else if (localName == "currencyCode") { CurrencyCode = xItem.Value; } } }
private void DoSimpleSearch(string searchText) { SearchParameters searchParams = new SearchParameters(); searchParams.Add(new SearchOptions(SearchType.Theme, searchText) { FindAll = true }); searchParams.Location = "All Themes"; Stopwatch time = Stopwatch.StartNew(); IEnumerable<TmNode> nodes = themesTreeView.RootNodes.SelectMany(n => n.Recurse(node => node.Children) .Where(x => x.Matches(searchParams)) ); DisplaySearchResults(searchParams, nodes); time.Stop(); Trace.TraceInformation("Time for simple search: {0}ms", time.Elapsed.Milliseconds); }
private void AddSearchParametersExecute(SearchParametersViewModel obj) { SearchParameters.Add(new SearchParametersViewModel()); SelectedItem = SearchParameters[SearchParameters.Count - 1]; }
public WranglerViewModel() { SearchParameters.Add(new SearchParametersViewModel()); SelectedItem = SearchParameters[0]; }
private SearchParameters BuildSearchParameters() { var sp = new SearchParameters { MatchAll = (andOrButton1.Text == Resources.SearchForm_AndOrButtons_And), SearchThemes = searchThemesCheckBox.Checked, SearchCategories = searchCategoriesCheckBox.Checked }; SearchOptions so; if (HaveThemeSearch) { if (themeNameCheckBox.Checked && themeDescriptionCheckBox.Checked && themeSummaryCheckBox.Checked && themeKeywordsCheckBox.Checked) { so = new SearchOptions(SearchType.Theme, themeNameTextBox.Text) { FindAll = allThemeNamesRadioButton.Checked }; sp.Add(so); } else { if (themeNameCheckBox.Checked) { so = new SearchOptions(SearchType.ThemeName, themeNameTextBox.Text) { FindAll = allThemeNamesRadioButton.Checked }; sp.Add(so); } if (themeDescriptionCheckBox.Checked) { so = new SearchOptions(SearchType.ThemeDescription, themeNameTextBox.Text) { FindAll = allThemeNamesRadioButton.Checked }; sp.Add(so); } if (themeSummaryCheckBox.Checked) { so = new SearchOptions(SearchType.ThemeSummary, themeNameTextBox.Text) { FindAll = allThemeNamesRadioButton.Checked }; sp.Add(so); } if (themeKeywordsCheckBox.Checked) { so = new SearchOptions(SearchType.ThemeTags, themeNameTextBox.Text) { FindAll = allThemeNamesRadioButton.Checked }; sp.Add(so); } } } if (HaveMetaSearch) { if (MetadataAllSectionsCheckBox.Checked) { sp.Add(MetaSearch("")); // search the whole document } else { if (metadataAbstactsCheckBox.Checked) { sp.Add(MetaSearch("abstract")); // /metadata/idinfo/descript/abstract } if (metadataPlaceKeywordsCheckBox.Checked) { sp.Add(MetaSearch("placekey"));// /metadata/idinfo/keywords/place/placekey } if (metadataThemeKeywordsCheckBox.Checked) { sp.Add(MetaSearch("themekey")); // /metadata/idinfo/keywords/theme/themekey } } } if (HaveDateSearch) { so = new SearchOptions(SearchType.PubDate, null); if (pubDateAfter.Checked) { so.MaxDaysSinceEdit = (DateTime.Now - pubDateAfter.Value).Days; } if (pubDateBefore.Checked) { so.MinDaysSinceEdit = (DateTime.Now - pubDateBefore.Value).Days; if (so.MinDaysSinceEdit < 0) { so.MinDaysSinceEdit = 0; } } sp.Add(so); } if (HaveParkCode) { // Xpath in FGDC Metadata: /metadata/NPS_Info/NPS_Unit/UnitCode so = new SearchOptions(SearchType.Metadata, parkUnitCodeTextBox.Text) { XmlElement = "UnitCode" }; sp.Add(so); } return(sp); }
private SearchParameters BuildSearchParameters() { var sp = new SearchParameters { MatchAll = (andOrButton1.Text == Resources.SearchForm_AndOrButtons_And), SearchThemes = searchThemesCheckBox.Checked, SearchCategories = searchCategoriesCheckBox.Checked }; SearchOptions so; if (HaveThemeSearch) { if (themeNameCheckBox.Checked && themeDescriptionCheckBox.Checked && themeSummaryCheckBox.Checked && themeKeywordsCheckBox.Checked) { so = new SearchOptions(SearchType.Theme, themeNameTextBox.Text) { FindAll = allThemeNamesRadioButton.Checked }; sp.Add(so); } else { if (themeNameCheckBox.Checked) { so = new SearchOptions(SearchType.ThemeName, themeNameTextBox.Text) { FindAll = allThemeNamesRadioButton.Checked }; sp.Add(so); } if (themeDescriptionCheckBox.Checked) { so = new SearchOptions(SearchType.ThemeDescription, themeNameTextBox.Text) { FindAll = allThemeNamesRadioButton.Checked }; sp.Add(so); } if (themeSummaryCheckBox.Checked) { so = new SearchOptions(SearchType.ThemeSummary, themeNameTextBox.Text) { FindAll = allThemeNamesRadioButton.Checked }; sp.Add(so); } if (themeKeywordsCheckBox.Checked) { so = new SearchOptions(SearchType.ThemeTags, themeNameTextBox.Text) { FindAll = allThemeNamesRadioButton.Checked }; sp.Add(so); } } } if (HaveMetaSearch) { if (MetadataAllSectionsCheckBox.Checked) sp.Add(MetaSearch("")); // search the whole document else { if (metadataAbstactsCheckBox.Checked) sp.Add(MetaSearch("abstract")); // /metadata/idinfo/descript/abstract if (metadataPlaceKeywordsCheckBox.Checked) sp.Add(MetaSearch("placekey"));// /metadata/idinfo/keywords/place/placekey if (metadataThemeKeywordsCheckBox.Checked) sp.Add(MetaSearch("themekey")); // /metadata/idinfo/keywords/theme/themekey } } if (HaveDateSearch) { so = new SearchOptions(SearchType.PubDate, null); if (pubDateAfter.Checked) so.MaxDaysSinceEdit = (DateTime.Now - pubDateAfter.Value).Days; if (pubDateBefore.Checked) { so.MinDaysSinceEdit = (DateTime.Now - pubDateBefore.Value).Days; if (so.MinDaysSinceEdit < 0) so.MinDaysSinceEdit = 0; } sp.Add(so); } if (HaveParkCode) { // Xpath in FGDC Metadata: /metadata/NPS_Info/NPS_Unit/UnitCode so = new SearchOptions(SearchType.Metadata, parkUnitCodeTextBox.Text) {XmlElement = "UnitCode"}; sp.Add(so); } return sp; }