コード例 #1
0
        private static bool CheckPublishedStatus(this PageData page, PagePublishedStatus status)
        {
            var checkPoint = DateTime.Now;

            if (status != PagePublishedStatus.Ignore)
            {
                if (page.PendingPublish)
                {
                    return(false);
                }
                if (page.Status != VersionStatus.Published)
                {
                    return(false);
                }
                //TODO: update those line to meet with episerver 9.
                if ((status >= PagePublishedStatus.PublishedIgnoreStopPublish) && (page.StartPublish > checkPoint))
                {
                    return(false);
                }
                if ((status >= PagePublishedStatus.Published) && (page.StopPublish < checkPoint))
                {
                    return(false);
                }
            }

            return(true);
        }
コード例 #2
0
        private static bool CheckPublishedStatus(this IContent content, PagePublishedStatus status)
        {
            IVersionable obj = content as IVersionable;

            if (obj == null)
            {
                return(false);
            }

            if (status != PagePublishedStatus.Ignore)
            {
                if (obj.IsPendingPublish)
                {
                    return(false);
                }
                if (obj.Status != VersionStatus.Published)
                {
                    return(false);
                }
                if ((status >= PagePublishedStatus.PublishedIgnoreStopPublish) && (obj.StartPublish > DateTime.Now))                //Context.Current.RequestTime))
                {
                    return(false);
                }
                if ((status >= PagePublishedStatus.Published) && (obj.StopPublish < DateTime.Now))                //Context.Current.RequestTime))
                {
                    return(false);
                }
            }

            return(true);
        }