コード例 #1
0
ファイル: PagesShortUrl.cs プロジェクト: thinhtp/liteweb.info
        /// <summary>
        /// Builds the link from an object
        /// </summary>
        /// <param name="_newsDetailsRow"></param>
        public void BuildLink(Object articleObject)
        {
            if (articleObject == null)
            {
                return;
            }

            SqlDataReader thisArticle     = articleObject as SqlDataReader;
            Pages_View    _articleDetails = null;

            if (thisArticle == null)
            {
                object obj = DataBinder.Eval(articleObject, "PageId");
                if (obj != null)
                {
                    ArticleId = (int)obj;
                }

                if (ArticleId == null)
                {
                    return;
                }

                _articleDetails = articleObject as Pages_View;

                if (_articleDetails == null)
                {
                    _articleDetails = new Pages_View
                    {
                        PageId   = ArticleId.Value,
                        Title    = DataBinder.Eval(articleObject, "Title").ToString(),
                        PageFile = DataBinder.Eval(articleObject, "PageFile").ToString(),
//						TypeName = DataBinder.Eval(articleObject, "TypeName").ToString(),
//						TypeUniqueName = DataBinder.Eval(articleObject, "TypeUniqueName").ToString(),
                        URL = DataBinder.Eval(articleObject, "URL").ToString()
                    };
                    DateTime?pageDate = DataBinder.Eval(articleObject, "PublishDate") as DateTime?;
                    if (pageDate != null)
                    {
                        _articleDetails.PublishDate = pageDate.Value;
                    }
                }
            }
            else
            {
                ArticleId = (int)thisArticle["NewsId"];

                _articleDetails = new Pages_View
                {
                    PageId      = ArticleId.Value,
                    Title       = thisArticle["Title"].ToString(),
                    PageFile    = thisArticle["PageFile"].ToString(),
                    PublishDate = (DateTime)thisArticle["PublishDate"],
                    //TypeName = thisArticle["TypeName"].ToString(),
                    //TypeUniqueName = thisArticle["TypeUniqueName"].ToString(),
                    URL = thisArticle["URL"].ToString()
                };
            }
            BuildLink(_articleDetails);
        }
コード例 #2
0
ファイル: PagesShortUrl.cs プロジェクト: thinhtp/liteweb.info
        /// <summary>
        /// Builds the link and content for a news link.
        /// </summary>
        /// <param name="_pagesDetails"></param>
        public void BuildLink(Pages_View _pagesDetails)
        {
            string pageUrl = _pagesDetails.FullURL;

            if (!String.IsNullOrWhiteSpace(HideFromFullUrl))
            {
                pageUrl = pageUrl.Replace(HideFromFullUrl, "");
            }

            string url = WebTools.WebContext.Protocol + "://" + WebTools.WebContext.ServerName +
                         "/" + pageUrl;

            RedirectsManager rMgr = new RedirectsManager();

            var _href = rMgr.AddRedirection(url);

            if (!string.IsNullOrWhiteSpace(_href))
            {
                this.HRef = "http://sab.is/" + _href;
            }

            this.Target = "_blank";
        }