示例#1
0
        public SyndicationFeed BuildFeed(string websiteUrl, Func <CmsPage, string> generateEntryUrl)
        {
            string rssFeedTitle = settingData.Get(Constant.Settings.SiteLogo).Value;
            string rssFeedDescr = settingData.Get(Constant.Settings.SiteSubLogo).Value;

            IEnumerable <CmsPage>  entries = pageData.LoadLast(10);
            List <SyndicationItem> items   =
                entries.Select(entry => new SyndicationItem(entry.SeoTitle,
                                                            SyndicationContent.
                                                            CreateHtmlContent(entry.PageContent),
                                                            new Uri(generateEntryUrl(entry)),
                                                            string.Format("item-id-{0}", entry.Id),
                                                            entry.CreatedAt)).ToList();

            return(new SyndicationFeed(rssFeedTitle,
                                       rssFeedDescr,
                                       new Uri(websiteUrl),
                                       "syndicationID",
                                       DateTime.Now,
                                       items));
        }
示例#2
0
        public IEnumerable <CmsPage> LoadLastCreated()
        {
            int numberOfLastPageToLoad = 10;

            try
            {
                CmsSetting lastCreated = settingData.Get(Constant.Settings.LastCreated);
                if (lastCreated != null)
                {
                    numberOfLastPageToLoad = lastCreated.GetIntValue();
                }
            }
            catch (Exception ex)
            {
                log.Info(ex.Message);
            }

            IEnumerable <CmsPage> lastPages = pageData.LoadLast(numberOfLastPageToLoad);
            int defaultPageid = LoadDefault().Id;

            lastPages = lastPages.Where(x => x.Id != defaultPageid);
            return(lastPages.ToList());
        }