private void DisplaySideLinks()
    {
        if (!articleData.ParentId.HasValue)
        {
            return;
        }

        Guid parentId = articleData.ParentId.Value;

        if (articleData.ArticleLevelNo > 1)
        {
            // change to parentId of parent
            ArticleForFrontend parent = artPub.GetArticleDataForFrontend(parentId, c.qsCultureNameOfLangNo);

            if (parent != null)
            {
                parentId = parent.ParentId.Value;
            }
        }

        List <ArticleForFESideSection> sideLinks = artPub.GetArticleValidListForSideSection(parentId, c.qsCultureNameOfLangNo);

        if (sideLinks != null)
        {
            rptSideLinks.DataSource = sideLinks;
            rptSideLinks.DataBind();
        }
    }
Beispiel #2
0
        public void ImportDataFrom(ArticleForFrontend artFE)
        {
            ParentId                    = artFE.ParentId;
            ArticleLevelNo              = artFE.ArticleLevelNo.Value;
            ArticleAlias                = artFE.ArticleAlias;
            BannerPicFileName           = artFE.BannerPicFileName ?? "";
            LayoutModeId                = artFE.LayoutModeId.Value;
            ShowTypeId                  = artFE.ShowTypeId.Value;
            LinkUrl                     = artFE.LinkUrl;
            LinkTarget                  = artFE.LinkTarget;
            ControlName                 = artFE.ControlName;
            IsHideSelf                  = artFE.IsHideSelf;
            IsHideChild                 = artFE.IsHideChild;
            StartDate                   = artFE.StartDate.Value;
            EndDate                     = artFE.EndDate.Value;
            SortNo                      = artFE.SortNo.Value;
            SubjectAtBannerArea         = artFE.SubjectAtBannerArea;
            PublishDate                 = artFE.PublishDate.Value;
            IsShowInUnitArea            = artFE.IsShowInUnitArea;
            IsShowInSitemap             = artFE.IsShowInSitemap;
            SortFieldOfFrontStage       = artFE.SortFieldOfFrontStage;
            IsSortDescOfFrontStage      = artFE.IsSortDescOfFrontStage;
            IsListAreaShowInFrontStage  = artFE.IsListAreaShowInFrontStage;
            IsAttAreaShowInFrontStage   = artFE.IsAttAreaShowInFrontStage;
            IsPicAreaShowInFrontStage   = artFE.IsPicAreaShowInFrontStage;
            IsVideoAreaShowInFrontStage = artFE.IsVideoAreaShowInFrontStage;
            ArticleSubject              = artFE.ArticleSubject;
            ArticleContext              = artFE.ArticleContext;
            IsShowInLang                = artFE.IsShowInLang;
            Subtitle                    = artFE.Subtitle;
            PublisherName               = artFE.PublisherName;
            PostAccount                 = artFE.PostAccount;
            PostDate                    = artFE.PostDate.Value;

            if (!artFE.MdfDate.HasValue)
            {
                MdfAccount = PostAccount;
                MdfDate    = PostDate;
            }
            else
            {
                MdfAccount = artFE.MdfAccount;
                MdfDate    = artFE.MdfDate.Value;
            }
        }
        /// <summary>
        /// Retrieve article data by ArticleId
        /// </summary>
        protected bool RetrieveArticleData()
        {
            bool result = false;

            if (!articleData.ArticleId.HasValue)
            {
                return(result);
            }

            ArticleForFrontend article = artPub.GetArticleDataForFrontend(articleData.ArticleId.Value, qsCultureNameOfLangNo);

            if (article != null)
            {
                bool isValid = false;

                if (isPreviewMode)
                {
                    isValid = true;
                }
                else
                {
                    // check validation date, isHideSelf, isShowInLang
                    DateTime startDate    = article.StartDate.Value;
                    DateTime endDate      = article.EndDate.Value;
                    bool     isHideSelf   = article.IsHideSelf;
                    bool     isShowInLang = article.IsShowInLang;

                    if (startDate <= DateTime.Today && DateTime.Today <= endDate &&
                        !isHideSelf &&
                        isShowInLang)
                    {
                        isValid = true;
                    }
                    else
                    {
                        logger.DebugFormat("The article (id:[{0}]) that client requires is disabled.", articleData.ArticleId);
                    }
                }

                if (isValid)
                {
                    try
                    {
                        articleData.ImportDataFrom(article);
                        articleData.IsPreviewMode = isPreviewMode;

                        // get top level id's
                        ArticleTopLevelIds topLevelIds = artPub.GetArticleTopLevelIds(articleData.ArticleId.Value);

                        if (topLevelIds != null)
                        {
                            articleData.Lv1Id = topLevelIds.Lv1Id;
                            articleData.Lv2Id = topLevelIds.Lv2Id;
                            articleData.Lv3Id = topLevelIds.Lv3Id;
                        }
                        else
                        {
                            throw new Exception("dsTopLevelIds is empty");
                        }

                        result = true;
                    }
                    catch (Exception ex)
                    {
                        logger.Error(string.Format("Import data to ArticleData failed (id:[{0}]).", articleData.ArticleId), ex);
                    }
                }
            }
            else
            {
                logger.DebugFormat("Article data (id:[{0}]) is empty.", articleData.ArticleId);
            }

            return(result);
        }