public string htmSearchQuery(string search) { pSearch = search; string response = ""; // int[] test = {1, 2, 415}; SearchService.SearchResult[] searchResults = searchService.Search(GetFoldersToSearch(DailyEZObject), search); //start our html response += "<div class='leftColumnContent'>"; //make a dictionary to store the duplicates Dictionary<string, List<SearchService.SearchResult>> dictionary = MakeSearchDictionaries(searchResults); //create a list for the headers List<SearchService.SearchResult> headers = new List<SearchService.SearchResult>(); //create a new list of KeyValuePairs<string, SearchResult's List>. This is done so we can easily sort the values List<KeyValuePair<string, List<SearchService.SearchResult>>> myList = new List<KeyValuePair<string, List<SearchService.SearchResult>>>(dictionary); //change header titles before sort FormatHeaderTitles(myList); //our sorting function, takes the first pair, and comparies the link title to the second pair's link title. myList.Sort( delegate(KeyValuePair<string, List<SearchService.SearchResult>> firstPair, KeyValuePair<string, List<SearchService.SearchResult>> secondPair) { //return firstPair.Value[0].Link_Title.CompareTo(secondPair.Value[0].Link_Title); return PageRank(search, secondPair.Value).CompareTo(PageRank(search, firstPair.Value)); } ); //position go till we can't anymore int divIndex = 0; foreach (KeyValuePair<string, List<SearchService.SearchResult>> e in myList) { if (e.Value.Count >= 1) { com.dailyez.Link link = new com.dailyez.Link(); link.Title = e.Value[0].Link_Title; link.URL = e.Value[0].Link_URL; link.Target = ""; bool oneIsLink = false; //for every SearchResult inside the list of the current dictionary value foreach (SearchService.SearchResult r in e.Value) { //find out if at least one of them is a hyperlink if (r.Link_URL.Length > 5) { oneIsLink = true; break; } } //one of the values is a hyperlink...make the starting div if (oneIsLink) { if (debug == true) response += "<span style='color:red'>" + PageRank(search, e.Value) + "</span>"; response += Code.Utility.GetA(link) +"<br/>"; // <div id='resultsDiv[X]' style='display:none;font-family:Arial'> response += "<div id='resultsDiv" + divIndex + "' style='display:none;font-family:Arial;line-spacing:20px; margin-left:10px;'>"; } //body of the div foreach (SearchService.SearchResult result in e.Value) { if (result.Link_URL.Length > 5) { com.dailyez.Link innerLink = new com.dailyez.Link(); innerLink.Title = result.Page_Title; innerLink.URL = "" + result.Page_ID; innerLink.Target = ""; response += Code.Utility.GetA(innerLink) + "<br/>"; } else { com.dailyez.Link innerLink = new com.dailyez.Link(); innerLink.Title = result.Link_Title; // innerLink.Title = result.Link_Title + " - " + service.GetPage(ConfigurationManager.AppSettings["webServiceKey"], result.Page_ID).Title; innerLink.URL = "" + result.Page_ID; innerLink.Target = ""; response += Code.Utility.GetA(innerLink) + "<br/>"; // headers.Add(result); } } if (oneIsLink) response += "</div>"; divIndex++; } else { if (e.Value[0].Link_URL.Length > 5) { com.dailyez.Link link = new com.dailyez.Link(); link.Title = e.Value[0].Link_Title; link.URL = e.Value[0].Link_URL; link.Target = ""; com.dailyez.Link pageLink = new com.dailyez.Link(); pageLink.Title = e.Value[0].Page_Title; pageLink.URL = "" + e.Value[0].Page_ID; response += Code.Utility.GetA(link) + " @ " + Code.Utility.GetA(pageLink) + "<br/>"; } else { var innerLink = new com.dailyez.Link { Title = "" + e.Value[0].Link_Title, URL = "" + e.Value[0].Page_ID, Target = "" }; // innerLink.Title = result.Link_Title + " - " + service.GetPage(ConfigurationManager.AppSettings["webServiceKey"], result.Page_ID).Title; response += Code.Utility.GetA(innerLink) + "<br/>"; //commented out add headers here } } } //add headers SearchResult[] srHeaders = Code.Utility.ConvertToLocalSearchResult(headers.ToArray()); List<SearchResult> headerList = new List<SearchResult>(srHeaders); headerList.Sort(); foreach (var result in headerList) { var innerLink = new com.dailyez.Link { Title = result.Page_Title + " - " + result.Link_Title, URL = "" + result.Page_ID, Target = "" }; // response += DailyEZUtility.GetA(innerLink) + "<br/>"; } if (response.Length < 1) response = "<span style='font-family:arial; font-size:12pt;'>Sorry, No Search Results.</span>"; response += "</div>"; return response; }
public string HtmSearchQuery(string search) { PSearch = search; var words = search.Split(new char[] { ' ' }); var clientID = Utility.GetIntFromCookie(Request, "clientID"); var euID = Utility.GetIntFromCookie(Request, "euID"); var service = new com.dailyez.Service(); var dailyEZ = BasePage.DailyEZObject; var response = ""; // int[] test = {1, 2, 415}; var searchResults = _searchService.Search(GetFoldersToSearch(dailyEZ), search); //start our html response += "<div class='leftColumnContent'>"; //make a dictionary to store the duplicates Dictionary<string, List<SearchService.SearchResult>> dictionary = MakeSearchDictionaries(searchResults); //create a list for the headers var headers = new List<SearchService.SearchResult>(); //create a new list of KeyValuePairs<string, SearchResult's List>. This is done so we can easily sort the values var myList = new List<KeyValuePair<string, List<SearchService.SearchResult>>>(dictionary); //change header titles before sort FormatHeaderTitles(myList); //our sorting function, takes the first pair, and comparies the link title to the second pair's link title. myList.Sort( delegate(KeyValuePair<string, List<SearchService.SearchResult>> firstPair, KeyValuePair<string, List<SearchService.SearchResult>> secondPair) { //return firstPair.Value[0].Link_Title.CompareTo(secondPair.Value[0].Link_Title); return PageRank(search, secondPair.Value).CompareTo(PageRank(search, firstPair.Value)); } ); //position go till we can't anymore var divIndex = 0; foreach (KeyValuePair<string, List<SearchService.SearchResult>> e in myList) { if (e.Value.Count >= 1) { var link = new com.dailyez.Link { Title = e.Value[0].Link_Title, URL = e.Value[0].Link_URL, Target = "" }; var oneIsLink = false; //for every SearchResult inside the list of the current dictionary value foreach (SearchService.SearchResult r in e.Value) { //find out if at least one of them is a hyperlink if (r.Link_URL.Length > 5) { oneIsLink = true; break; } } //one of the values is a hyperlink...make the starting div if (oneIsLink) { if (Debug == true) response += "<span style='color:red'>" + PageRank(search, e.Value) + "</span>"; response += Utility.GetA(link) + " " + e.Value.Count + " pages "; response += "<span style='font-size:8pt; cursor:pointer; color:blue;' onclick=\"javascript:document.getElementById('resultsDiv" + divIndex + "').style.display = 'block';\">show</span> "; response += "<span style='font-size:8pt; cursor:pointer; color:blue;' onclick=\"javascript:document.getElementById('resultsDiv" + divIndex + "').style.display = 'none';\">hide</span><br/>"; // <div id='resultsDiv[X]' style='display:none;font-family:Arial'> response += "<div id='resultsDiv" + divIndex + "' style='display:none;font-family:Arial;line-spacing:20px; margin-left:10px;'>"; } //body of the div foreach (var result in e.Value) { if (result.Link_URL.Length > 5) { var innerLink = new com.dailyez.Link { Title = result.Page_Title, URL = "" + result.Page_ID, Target = "" }; response += Utility.GetA(innerLink) + "<br/>"; } else { var innerLink = new com.dailyez.Link { Title = result.Link_Title, URL = "" + result.Page_ID, Target = "" }; // innerLink.Title = result.Link_Title + " - " + service.GetPage(ConfigurationManager.AppSettings["webServiceKey"], result.Page_ID).Title; response += Utility.GetA(innerLink) + "<br/>"; // headers.Add(result); } } if (oneIsLink) response += "</div>"; divIndex++; } else { if (e.Value[0].Link_URL.Length > 5) { var link = new com.dailyez.Link(); link.Title = e.Value[0].Link_Title; link.URL = e.Value[0].Link_URL; link.Target = ""; var pageLink = new com.dailyez.Link(); pageLink.Title = e.Value[0].Page_Title; pageLink.URL = "" + e.Value[0].Page_ID; response += Utility.GetA(link) + " @ " + Utility.GetA(pageLink) + "<br/>"; } else { var innerLink = new com.dailyez.Link(); // innerLink.Title = result.Link_Title + " - " + service.GetPage(ConfigurationManager.AppSettings["webServiceKey"], result.Page_ID).Title; innerLink.Title = "" + e.Value[0].Link_Title; innerLink.URL = "" + e.Value[0].Page_ID; innerLink.Target = ""; response += Utility.GetA(innerLink) + "<br/>"; //commented out add headers here } } } //add headers var srHeaders = Utility.ConvertToLocalSearchResult(headers.ToArray()); var headerList = new List<SearchResult>(srHeaders); headerList.Sort(); foreach (SearchResult result in headerList) { var innerLink = new com.dailyez.Link { Title = result.Page_Title + " - " + result.Link_Title, URL = "" + result.Page_ID, Target = "" }; // response += DailyEZUtility.GetA(innerLink) + "<br/>"; } if (response.Length < 1) response = "<span style='font-family:arial; font-size:12pt;'>Sorry, No Search Results.</span>"; //-search ads SearchService.Ad_Assignment[] ads = _searchService.SearchAds(search); foreach (SearchService.Ad_Assignment a in ads) { if (a.Ad_ID != null) response += "<a href=\"http://www.ezcontrolpanel.com/Ad/ViewAd/" + a.Ad_ID + "\" target=\"_blank\">" + HttpUtility.HtmlEncode(_searchService.GetAd(a.Ad_ID.Value).Name) + "</a><br/>"; } response += "</div>"; response += "<div class='rightColumnContent' style='border:none;'>"; response += "</div><div style='clear:right;'></div><div style='background-color:white; margin-top:-80px; text-align:right; border:none;' class='rightColumnContent'>"; var litAds = new Literal(); Renderer.RenderJetNettAdsToLiteral(litAds, Request); response += "<br/><div style='float:right;line-height:normal;'>" + litAds.Text + "</div>"; response += "</div>"; return response; }
private static com.dailyez.Link[] BuildLink(SqlDataReader reader) { com.dailyez.Link link = null; ArrayList list = new ArrayList(); try { if (reader.HasRows) { while (reader.Read()) { link = new com.dailyez.Link(); link.ID = (int)reader["ID"]; link.PageID = (int)reader["Page_ID"]; link.Position = (int)reader["Position"]; link.IsLink = (Boolean)reader["Is_Link"]; link.Title = (string)reader["Title"]; try { link.URL = (string)reader["URL"]; } catch { link.URL = ""; } try { link.Target = (string)reader["Target"]; } catch { link.Target = ""; } list.Add(link); } } return (com.dailyez.Link[])list.ToArray(typeof(com.dailyez.Link)); } catch (Exception ex) { throw (new Exception("Error in BuildLink() --> " + ex.Message)); } }