public override void RenderInViewMode(HtmlTextWriter writer, CmsPage page, int identifier, CmsLanguage langToRenderFor, string[] param) { AddProcurementCommandToEditMenu(page, page); StringBuilder html = new StringBuilder(); ProcurementDb db = new ProcurementDb(); ProcurementDb.ProcurementAggregatorData ProcurementAggregator = db.fetchProcurementAggregator(page, identifier, langToRenderFor, true); int currYear = PageUtils.getFromForm("yr", Int32.MinValue); if (currYear == Int32.MinValue) { currYear = ProcurementAggregator.YearToDisplay; } List <ProcurementDb.ProcurementDetailsData> articleList = new List <ProcurementDb.ProcurementDetailsData>(); Dictionary <CmsPage, CmsPlaceholderDefinition[]> childPages = CmsContext.getAllPlaceholderDefinitions("ProcurementDetails", page, CmsContext.PageGatheringMode.ChildPagesOnly); foreach (CmsPage childPage in childPages.Keys) { foreach (CmsPlaceholderDefinition def in childPages[childPage]) { ProcurementDb.ProcurementDetailsData entity = db.fetchProcurementDetails(childPage, def.Identifier, langToRenderFor, true); articleList.Add(entity); } } // -- display results html.Append(getHtmlForSummaryView(articleList.ToArray(), currYear, langToRenderFor)); writer.Write(html.ToString()); }
public override void RenderInEditMode(HtmlTextWriter writer, CmsPage page, int identifier, CmsLanguage langToRenderFor, string[] param) { // CmsContext.setCurrentCultureInfo(langToRenderFor); ProcurementDb db = new ProcurementDb(); ProcurementDb.ProcurementAggregatorData entity = db.fetchProcurementAggregator(page, identifier, langToRenderFor, true); string ProjectSummaryId = "ProjectSummary_" + page.ID.ToString() + "_" + identifier.ToString() + "_" + langToRenderFor.shortCode; // ------- CHECK THE FORM FOR ACTIONS string action = PageUtils.getFromForm(ProjectSummaryId + "_Action", ""); if (action.Trim().ToLower() == "update") { // save the data to the database int id = PageUtils.getFromForm(ProjectSummaryId + "_ProjectSummaryId", -1); int newDefaultYear = PageUtils.getFromForm("defaultYear_" + ProjectSummaryId, -1); entity.YearToDisplay = newDefaultYear; bool b = db.updateProcurementAggregator(page, identifier, langToRenderFor, entity); if (!b) { writer.Write("Error saving updates to database!"); } } // ------- START RENDERING // note: no need to put in the <form></form> tags. StringBuilder html = new StringBuilder(); html.Append("<p><strong>Procurement Aggregator Display Settings:</strong></p>"); html.Append("<table>"); string s = PageUtils.getInputTextHtml("defaultYear_" + ProjectSummaryId, "defaultYear_" + ProjectSummaryId, entity.YearToDisplay.ToString(), 7, 4); html.Append("<tr><td>Default Year to display summaries for: (-1 = all years)</td>"); html.Append("<td>" + s + "</td></tr>"); html.Append("</table>"); html.Append("<input type=\"hidden\" name=\"" + ProjectSummaryId + "_Action\" value=\"update\">"); html.Append("<input type=\"hidden\" name=\"" + ProjectSummaryId + "_ProjectSummaryId\" value=\"" + page.ID.ToString() + "\">"); writer.WriteLine(html.ToString()); }