public override void RenderInViewMode(HtmlTextWriter writer, CmsPage page, int identifier, CmsLanguage langToRenderFor, string[] paramList) { // CmsContext.setCurrentCultureInfo(langToRenderFor); EventCalendarDb db = new EventCalendarDb(); EventCalendarDb.EventCalendarDetailsData entity = db.fetchDetailsData(page, identifier, langToRenderFor, true); CmsUrlFormat fileUrlFormat = CmsUrlFormat.RelativeToRoot; CmsPage parentPage = page.ParentPage; StringBuilder html = new StringBuilder(); html.Append("<table border=\"0\" cellspacing=\"10\" style=\"margin-bottom: 3em;\" >"); html.Append("<tr valign=\"top\">"); html.Append("<td>" + getDescriptionText(langToRenderFor) + ":</td>"); html.Append("<td>" + StringUtils.nl2br(entity.Description) + "</td>"); html.Append("</tr>"); html.Append("<tr valign=\"top\">"); html.Append("<td>" + getCategoryText(langToRenderFor) + ":</td>"); html.Append("<td>"); html.Append(db.fetchCategoryByIdAndLang(langToRenderFor, entity.CategoryId).Title); html.Append("</td>"); html.Append("</tr>"); html.Append("<tr valign=\"top\">"); html.Append("<td>" + getStartDateTimeText(langToRenderFor) + ":</td>"); html.Append("<td>" + entity.StartDateTime.ToString("yyyy-MM-dd, h:mm tt") + "</td>"); html.Append("</tr>"); html.Append("<tr valign=\"top\">"); html.Append("<td>" + getEndDateTimeText(langToRenderFor) + ":</td>"); html.Append("<td>" + entity.EndDateTime.ToString("yyyy-MM-dd, h:mm tt") + "</td>"); html.Append("</tr>"); html.Append(renderAttachedFileList(page, langToRenderFor, fileUrlFormat)); html.Append("</table>"); html.Append("<a class=\"backToPrev\" href=\""); html.Append(parentPage.getUrl(langToRenderFor)); html.Append("\">"); html.Append(getBackToText(langToRenderFor)); html.Append(" "); html.Append(parentPage.Title); html.Append("</a>"); writer.Write(html.ToString()); }
public override void RenderInEditMode(HtmlTextWriter writer, CmsPage page, int identifier, CmsLanguage langToRenderFor, string[] paramList) { // CmsContext.setCurrentCultureInfo(langToRenderFor); EventCalendarDb db = new EventCalendarDb(); EventCalendarDb.EventCalendarDetailsData entity = db.fetchDetailsData(page, identifier, langToRenderFor, true); string controlId = "eventDetails_" + page.ID.ToString() + "_" + identifier.ToString() + "_" + langToRenderFor.shortCode; addCssAndScriptForDateTimePicker(page); addScriptForDateTimePickerRender(page, controlId); string action = PageUtils.getFromForm(controlId + "_action", ""); if (String.Compare(action, "saveNewValues", true) == 0) { entity.Description = PageUtils.getFromForm(controlId + "_description", entity.Description); entity.CategoryId = PageUtils.getFromForm(controlId + "_categoryId", entity.CategoryId); entity.StartDateTime = PageUtils.getFromForm(controlId + "_startDateTime", entity.StartDateTime); entity.EndDateTime = PageUtils.getFromForm(controlId + "_endDateTime", entity.EndDateTime); db.updateDetailsData(page, identifier, langToRenderFor, entity); } List <EventCalendarDb.EventCalendarCategoryData> categoryList = db.fetchCategoryList(langToRenderFor); NameValueCollection collection = new NameValueCollection(); foreach (EventCalendarDb.EventCalendarCategoryData c in categoryList) { collection.Add(c.CategoryId.ToString(), c.Title); } // ------- START RENDERING StringBuilder html = new StringBuilder(); html.Append("<table border=\"0\">"); html.Append("<tr valign=\"top\">"); html.Append("<td>" + getDescriptionText(langToRenderFor) + ":</td>"); html.Append("<td>" + PageUtils.getTextAreaHtml(controlId + "_description", controlId + "_description", entity.Description, 30, 4) + "</td>"); html.Append("</tr>"); html.Append("<tr valign=\"top\">"); html.Append("<td>" + getCategoryText(langToRenderFor) + ":</td>"); html.Append("<td>"); string categoryDropDown = "CategoryDropDown"; html.Append(PageUtils.getDropDownHtml(controlId + "_categoryId", controlId + "_categoryId", collection, entity.CategoryId.ToString(), "", categoryDropDown + "_" + langToRenderFor.shortCode)); try { CmsPage editCategoryPage = CmsContext.getPageByPath(CmsConfig.getConfigValue("EditCalendarCategoryPagePath", "/_admin/EventCalendarCategory")); html.Append(" <a href=\"" + editCategoryPage.getUrl(langToRenderFor) + "\" onclick=\"window.open(this.href,'" + categoryDropDown + "','resizable=1,scrollbars=1,width=800,height=400'); return false;\">(edit)</a>"); } catch (Exception ex) { html.Append(" <span>Cannot setup Edit Category Link: " + ex.Message + "</span>"); } html.Append("</td>"); html.Append("</tr>"); html.Append("<tr valign=\"top\">"); html.Append("<td>" + getStartDateTimeText(langToRenderFor) + ":</td>"); html.Append("<td>" + PageUtils.getInputTextHtml(controlId + "_startDateTime", controlId + "_startDateTime", entity.StartDateTime.ToString("yyyy-MM-dd, h:mm tt"), 20, 20) + "</td>"); html.Append("</tr>"); html.Append("<tr valign=\"top\">"); html.Append("<td>" + getEndDateTimeText(langToRenderFor) + ":</td>"); html.Append("<td>" + PageUtils.getInputTextHtml(controlId + "_endDateTime", controlId + "_endDateTime", entity.EndDateTime.ToString("yyyy-MM-dd, h:mm tt"), 20, 20) + "</td>"); html.Append("</tr>"); html.Append("</table>"); html.Append(PageUtils.getHiddenInputHtml(controlId + "_action", "saveNewValues")); writer.WriteLine(html.ToString()); }