コード例 #1
0
        private string GetSearchText()
        {
            string searchText = String.Empty;

            if (IsNewPageLoad)
            {
                searchText           = Server.UrlDecode(Util.GetQueryStringParameterString("search"));
                this.tv.CallBackData = searchText;
            }
            else if (IsCallback)
            {
                searchText = this.tv.CallBackData;
            }
            else if (IsPostBack) // Note: IsPostBack="true" even when IsCallback is true, so check this last
            {
                searchText           = this.txtSearch.Text.Trim();
                this.tv.CallBackData = searchText;
            }

            // Sueetie Modified - Enter Search Terms
            if (!string.IsNullOrEmpty(searchText))
            {
                SearchCommon.EnterSearchTerm(searchText, SearchType.Media);
            }

            return(searchText);
        }
コード例 #2
0
        protected void DoSearch(string _srchQuery)
        {
            if (!string.IsNullOrEmpty(txtSearch.Text))
            {
                SearchCommon.EnterSearchTerm(txtSearch.Text.Trim(), SearchType.Global);
                bool IsRestrictedUser = !CurrentSueetieUser.IsSueetieAdministrator;
                if (_srchQuery.ToLower().Contains(" or ") || _srchQuery.ToLower().Contains(" and "))
                {
                    _srchQuery = "(" + _srchQuery.Replace(" or ", " OR ").Replace(" and ", " AND ").Replace(" not ", " NOT ") + ")";
                }

                string _appFilter = string.Empty;
                if (!_srchQuery.Contains("App:"))
                {
                    foreach (ListItem cb in cblSearchApps.Items)
                    {
                        if (cb.Selected)
                        {
                            _appFilter += "App:" + cb.Value + "|";
                        }
                    }
                    if (!string.IsNullOrEmpty(_appFilter))
                    {
                        _appFilter = " AND (" + _appFilter.Substring(0, _appFilter.LastIndexOf("|")).Replace("|", " OR ") + ")";
                    }
                }
                else
                {
                    foreach (ListItem cb in cblSearchApps.Items)
                    {
                        cb.Selected = false;
                    }
                }
                string _groupFilter = " AND (GroupKey:na)";
                //string _groupFilter = string.Empty;

                List <SueetieSearchResult> results = search.Search(_srchQuery + _appFilter + _groupFilter, MaxResultsCount, IsRestrictedUser);
                rptResults.DataSource = results;
                rptResults.DataBind();
                if (results.Count() > 0)
                {
                    noResults.Visible  = false;
                    rptResults.Visible = true;
                }
                else
                {
                    terms.Text        = HttpUtility.HtmlEncode(txtSearch.Text);
                    noResults.Visible = true;
                }
            }
        }
コード例 #3
0
 private void Page_Load(object sender, EventArgs e)
 {
     if (!IsPostBack)
     {
         if (Request.QueryString["srch"] != null)
         {
             if (Request.QueryString["app"] != null)
             {
                 string appKey = Request.QueryString.Get("app");
                 foreach (ListItem cb in cblSearchApps.Items)
                 {
                     if (cb.Value.ToLower() == appKey.ToLower())
                     {
                         cb.Selected = true;
                     }
                     else
                     {
                         cb.Selected = false;
                     }
                 }
             }
             else
             {
                 foreach (ListItem cb in cblSearchApps.Items)
                 {
                     cb.Selected = true;
                 }
             }
             string _srchQuery = Request.QueryString["srch"].Replace(" ", "+");
             txtSearch.Text = _srchQuery;
             SearchCommon.EnterSearchTerm(_srchQuery, SearchType.Global);
             DoSearch(_srchQuery);
         }
     }
     txtSearch.Focus();
     txtSearch.Attributes.Add("onKeyPress", "javascript:if (event.keyCode == 13) __doPostBack('" + btnSearch.UniqueID + "','')");
 }
コード例 #4
0
ファイル: search.aspx.cs プロジェクト: Pathfinder-Fr/Website
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);

            rep.ItemDataBound += new RepeaterItemEventHandler(rep_ItemDataBound);

            var term = Request.QueryString["q"];

            if (!Utils.StringIsNullOrWhitespace(term))
            {
                bool includeComments = (Request.QueryString["comment"] == "true");

                // Sueetie Modified - Enter Search Terms
                SearchCommon.EnterSearchTerm(term, SearchType.Blog);

                var encodedTerm = Server.HtmlEncode(term);
                Page.Title           = Server.HtmlEncode(Resources.labels.searchResultsFor) + " '" + encodedTerm + "'";
                h1Headline.InnerHtml = Resources.labels.searchResultsFor + " '" + encodedTerm + "'";

                Uri url;
                if (!Uri.TryCreate(term, UriKind.Absolute, out url))
                {
                    List <IPublishable> list = Search.Hits(term, includeComments);
                    BindSearchResult(list);
                }
                else
                {
                    SearchByApml(url);
                }
            }
            else
            {
                Page.Title           = Resources.labels.search;
                h1Headline.InnerHtml = Resources.labels.search;
            }
        }