private void SearchUser_Click(object sender, EventArgs e) { //opens the connection var connectionString = ConfigurationManager.ConnectionStrings["EmployeeManagement"].ConnectionString; SqlConnection con = new SqlConnection(connectionString); //checks to see if the search box is populated if not then show all employees if (AdminSearch.Text == "") { //opens connection con.Open(); //creating the sql command SqlCommand Tcmd = con.CreateCommand(); //setting the command type Tcmd.CommandType = CommandType.Text; //selecting all employees Tcmd.CommandText = "select * from Employees"; //executing the sql Tcmd.ExecuteNonQuery(); //creating the new datatable to fill DataTable dta = new DataTable(); SqlDataAdapter adapt = new SqlDataAdapter(Tcmd); //filling the adapter with the correct data from the dt adapt.Fill(dta); //filling the dgv with the data dataGridView4.DataSource = dta; con.Close(); //refreshing the dgv dataGridView4.Refresh(); } else { //opens connection con.Open(); //selected everything from the dgv where the first name is equal to whats in the txtbox SqlDataAdapter search = new SqlDataAdapter("select * from Employees where FirstName like '" + AdminSearch.Text + "%'", con); DataTable dt = new DataTable(); search.Fill(dt); dataGridView4.DataSource = dt; con.Close(); AdminSearch.Clear(); } }
public ManualSearchResult Search([FromBody] AdminSearch value) { var results = new List <TrackerCacheResult>(); var query = new TorznabQuery() { SearchTerm = value.Query, Categories = value.Category == 0 ? new int[0] : new int[1] { value.Category } }; query.ExpandCatsToSubCats(); var trackers = indexerService.GetAllIndexers().Where(t => t.IsConfigured).ToList(); if (!string.IsNullOrWhiteSpace(value.Tracker)) { trackers = trackers.Where(t => t.ID == value.Tracker).ToList(); } if (value.Category != 0) { trackers = trackers.Where(t => t.TorznabCaps.Categories.Select(c => c.ID).Contains(value.Category)).ToList(); } Parallel.ForEach(trackers.ToList(), indexer => { try { var searchResults = indexer.PerformQuery(query).Result; searchResults = indexer.CleanLinks(searchResults); cacheService.CacheRssResults(indexer, searchResults); searchResults = indexer.FilterResults(query, searchResults); lock (results) { foreach (var result in searchResults) { var item = Mapper.Map <TrackerCacheResult>(result); item.Tracker = indexer.DisplayName; item.TrackerId = indexer.ID; item.Peers = item.Peers - item.Seeders; // Use peers as leechers results.Add(item); } } } catch (Exception e) { logger.Error(e, "An error occured during manual search on " + indexer.DisplayName + ": " + e.Message); } }); ConfigureCacheResults(results); if (trackers.Count > 1) { results = results.OrderByDescending(d => d.PublishDate).ToList(); } var manualResult = new ManualSearchResult() { Results = results, Indexers = trackers.Select(t => t.DisplayName).ToList() }; if (manualResult.Indexers.Count == 0) { manualResult.Indexers = new List <string>() { "None" } } ; logger.Info(string.Format("Manual search for \"{0}\" on {1} with {2} results.", query.GetQueryString(), string.Join(", ", manualResult.Indexers), manualResult.Results.Count)); return(manualResult); } }
public ManualSearchResult Search([FromBody] AdminSearch value) { var results = new List <TrackerCacheResult>(); var stringQuery = new TorznabQuery(); var queryStr = value.Query; if (queryStr != null) { var seasonMatch = Regex.Match(queryStr, @"S(\d{2,4})"); if (seasonMatch.Success) { stringQuery.Season = int.Parse(seasonMatch.Groups[1].Value); queryStr = queryStr.Remove(seasonMatch.Index, seasonMatch.Length); } var episodeMatch = Regex.Match(queryStr, @"E(\d{2,4})"); if (episodeMatch.Success) { stringQuery.Episode = episodeMatch.Groups[1].Value; queryStr = queryStr.Remove(episodeMatch.Index, episodeMatch.Length); } queryStr = queryStr.Trim(); } stringQuery.SearchTerm = queryStr; stringQuery.Categories = value.Category == 0 ? new int[0] : new int[1] { value.Category }; stringQuery.ExpandCatsToSubCats(); // try to build an IMDB Query var imdbID = ParseUtil.GetFullImdbID(stringQuery.SanitizedSearchTerm); TorznabQuery imdbQuery = null; if (imdbID != null) { imdbQuery = new TorznabQuery() { ImdbID = imdbID, Categories = stringQuery.Categories, Season = stringQuery.Season, Episode = stringQuery.Episode, }; imdbQuery.ExpandCatsToSubCats(); } var trackers = indexerService.GetAllIndexers().Where(t => t.IsConfigured).ToList(); if (!string.IsNullOrWhiteSpace(value.Tracker)) { trackers = trackers.Where(t => t.ID == value.Tracker).ToList(); } if (value.Category != 0) { trackers = trackers.Where(t => t.TorznabCaps.Categories.Select(c => c.ID).Contains(value.Category)).ToList(); } Parallel.ForEach(trackers.ToList(), indexer => { try { var query = stringQuery; // use imdb Query for trackers which support it if (imdbQuery != null && indexer.TorznabCaps.SupportsImdbSearch) { query = imdbQuery; } var searchResults = indexer.PerformQuery(query).Result; searchResults = indexer.CleanLinks(searchResults); cacheService.CacheRssResults(indexer, searchResults); searchResults = indexer.FilterResults(query, searchResults); lock (results) { foreach (var result in searchResults) { var item = Mapper.Map <TrackerCacheResult>(result); item.Tracker = indexer.DisplayName; item.TrackerId = indexer.ID; item.Peers = item.Peers - item.Seeders; // Use peers as leechers results.Add(item); } } } catch (Exception e) { logger.Error(e, "An error occured during manual search on " + indexer.DisplayName + ": " + e.Message); } }); ConfigureCacheResults(results); if (trackers.Count > 1) { results = results.OrderByDescending(d => d.PublishDate).ToList(); } var manualResult = new ManualSearchResult() { Results = results, Indexers = trackers.Select(t => t.DisplayName).ToList() }; if (manualResult.Indexers.Count == 0) { manualResult.Indexers = new List <string>() { "None" } } ; logger.Info(string.Format("Manual search for \"{0}\" on {1} with {2} results.", stringQuery.GetQueryString(), string.Join(", ", manualResult.Indexers), manualResult.Results.Count)); return(manualResult); } }