public override Rss.RssItem[] GetRssFeedItems(CmsPage page, CmsPlaceholderDefinition placeholderDefinition, CmsLanguage langToRenderFor) { List <Rss.RssItem> ret = new List <Rss.RssItem>(); // -- get the news NewsArticleDb.NewsArticleAggregatorData aggData = (new NewsArticleDb()).fetchNewsAggregator(page, placeholderDefinition.Identifier, langToRenderFor, true); RenderParameters renderParams = RenderParameters.fromParamList(placeholderDefinition.ParamList, aggData); NewsAggItem[] newsItems = FetchAllNewsAggItems(page, placeholderDefinition.Identifier, langToRenderFor, renderParams, CmsUrlFormat.FullIncludingProtocolAndDomainName); int currYear = renderParams.AggregatorData.YearToDisplay; foreach (NewsAggItem newsItem in newsItems) { if (currYear < 0 || newsItem.NewsDate.Year == currYear) { Rss.RssItem rssItem = new Rss.RssItem(); rssItem = InitRssItem(rssItem, page, langToRenderFor); rssItem.Title = newsItem.Title; rssItem.Link = new Uri(newsItem.PageDisplayURL, UriKind.RelativeOrAbsolute); rssItem.Guid = new Rss.RssGuid(rssItem.Link); rssItem.PubDate_GMT = newsItem.NewsDate.ToUniversalTime(); rssItem.Description = newsItem.NewsArticleHtml; ret.Add(rssItem); } } return(ret.ToArray()); } // GetRssFeedItems
public override void RenderInEditMode(HtmlTextWriter writer, CmsPage page, int identifier, CmsLanguage langToRenderFor, string[] paramList) { HtmlContentDb db = new HtmlContentDb(); RenderParameters param = RenderParameters.fromParamList(paramList); string htmlContent = ""; string editorId = "htmlcontent_" + page.ID.ToString() + "_" + identifier.ToString() + "_" + langToRenderFor.shortCode; // ------- CHECK THE FORM FOR ACTIONS string action = PageUtils.getFromForm(editorId + "_Action", ""); if (action.Trim().ToLower() == "update") { htmlContent = PageUtils.getFromForm("name_" + editorId, ""); bool b = db.saveUpdatedHtmlContent(page, identifier, langToRenderFor, htmlContent); } else { htmlContent = db.getHtmlContent(page, identifier, langToRenderFor, true); } // ------- START RENDERING // -- get the Javascript StringBuilder html = new StringBuilder(); string EOL = Environment.NewLine; // -- render the Control // Add the javascript references CKEditorHelpers.AddPageJavascriptStatements(page, editorId, param.renderWidth, param.renderHeight, langToRenderFor); StringBuilder arg0 = new StringBuilder(); arg0.Append("<div style=\"width: 100%\">"); arg0.Append("<textarea name=\"name_" + editorId + "\" id=\"" + editorId + "\" style=\"width: " + param.renderWidth + "; height: " + param.renderHeight + ";\">"); arg0.Append(htmlContent); arg0.Append("</textarea>" + EOL); arg0.Append("<input type=\"hidden\" name=\"" + editorId + "_Action\" value=\"update\">"); arg0.Append("</div>"); string formattedOutput = String.Format(param.renderTemplate, arg0.ToString()); html.Append(formattedOutput); writer.WriteLine(html.ToString()); }
public override void RenderInViewMode(HtmlTextWriter writer, CmsPage page, int identifier, CmsLanguage langToRenderFor, string[] param) { AddNewsArticleCommandToEditMenu(page, page); CmsPage currentPage = CmsContext.currentPage; StringBuilder html = new StringBuilder(); NewsArticleDb db = new NewsArticleDb(); NewsArticleDb.NewsArticleAggregatorData newsAggregator = db.fetchNewsAggregator(page, identifier, langToRenderFor, true); RenderParameters renderParams = RenderParameters.fromParamList(param, newsAggregator); NewsAggItem[] newsToShow = FetchAllNewsAggItems(page, identifier, langToRenderFor, renderParams, CmsUrlFormat.RelativeToRoot); // -- display results html.Append(getHtmlForSummaryView(newsToShow, renderParams, langToRenderFor)); writer.Write(html.ToString()); }
public override void RenderInViewMode(HtmlTextWriter writer, CmsPage page, int identifier, CmsLanguage langToRenderFor, string[] paramList) { RenderParameters param = RenderParameters.fromParamList(paramList); if (param.outputOnlyInEditMode) { return; // output nothing } HtmlContentDb db = new HtmlContentDb(); string arg0 = db.getHtmlContent(page, identifier, langToRenderFor, true); bool doOutput = true; if (param.outputOnlyIfHasContent) { if (arg0.Trim() == "") { return; // output nothing (and short-circuit the StripHTMLTags function) } string textOnly = StringUtils.StripHTMLTags(arg0); if (textOnly.Trim() != "") { doOutput = true; } else { return; // output nothing (short-circuit everything else) } } if (doOutput) { string formattedOutput = String.Format(param.renderTemplate, arg0.ToString()); writer.WriteLine(formattedOutput); } } // RenderView