コード例 #1
0
        /// <summary>
        /// Generates an appropriate template name for the given search result.
        /// </summary>
        /// <param name="res">The source EndecaResult.</param>
        /// <returns>A String template name.</returns>
        private string GetSearchResultTemplate(SiteWideSearchAPIResult res)
        {
            switch (res.ContentType)
            {
            case "cgvInfographic":
            case "gloVideo":
            case "gloVideoCarousel":
                return("Media");

            default:
                return("Default");
            }
        }
コード例 #2
0
        protected void rptSearchResults_OnItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                SiteWideSearchAPIResult searchResultRow = (SiteWideSearchAPIResult)e.Item.DataItem;

                Literal litTitle = (Literal)e.Item.FindControl("litTitle");

                if (searchResultRow != null && litTitle != null)
                {
                    //the title text that needs to be removed from the search result Title
                    string removeTitleText = ContentDeliveryEngineConfig.PageTitle.AppendPageTitle.Title;

                    litTitle.Text = (!string.IsNullOrEmpty(removeTitleText) && searchResultRow.Title.Contains(removeTitleText)) ? searchResultRow.Title.Remove(searchResultRow.Title.IndexOf(removeTitleText)) : searchResultRow.Title;
                }
            }
        }
コード例 #3
0
ファイル: SideWideSearch.cs プロジェクト: blairl-nih/wcms-cde
        protected void rptSearchResults_OnItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                SiteWideSearchAPIResult searchResultRow = (SiteWideSearchAPIResult)e.Item.DataItem;

                System.Web.UI.HtmlControls.HtmlAnchor titleLink = (System.Web.UI.HtmlControls.HtmlAnchor)e.Item.FindControl("titleLink");

                if (searchResultRow != null && titleLink != null)
                {
                    //the title text that needs to be removed from the search result Title
                    string removeTitleText = ContentDeliveryEngineConfig.PageTitle.AppendPageTitle.Title;

                    titleLink.InnerText = (!string.IsNullOrEmpty(removeTitleText) && searchResultRow.Title.Contains(removeTitleText)) ? searchResultRow.Title.Remove(searchResultRow.Title.IndexOf(removeTitleText)) : searchResultRow.Title;
                    titleLink.HRef      = searchResultRow.Url;
                }
            }
        }
コード例 #4
0
        /// <summary>
        /// Returns an appropriate content-type label for the given EndecaResult.
        /// </summary>
        /// <param name="res">The source EndecaResult used to generate the label.</param>
        /// <returns>A language-specific label for the result.</returns>
        private String GetSearchResultLabel(SiteWideSearchAPIResult res)
        {
            string language = PageAssemblyContext.Current.PageAssemblyInstruction.Language;
            string label    = res.ContentType;

            switch (res.ContentType)
            {
            case "cgvInfographic":
                label = language == "es" ? "Infografía" : "Infographic";
                break;

            case "gloVideo":
                label = language == "es" ? "Video" : "Video";
                break;

            case "gloVideoCarousel":
                label = language == "es" ? "Lista de reproducción de videos" : "Video Playlist";
                break;
            }

            return(label);
        }