/// <summary> /// Render this control to the output parameter specified. /// </summary> /// <param name="output"> The HTML writer to write out to </param> protected override void Render(HtmlTextWriter output) { DojoSeminar seminar = new DojoSeminar(seminarID); output.Write("<table id=\"{0}\"", UniqueID); if (!CellPadding.IsEmpty) { output.Write(" CellPadding=\"{0}\"", CellPadding.ToString()); } if (!CellSpacing.IsEmpty) { output.Write(" CellPadding=\"{0}\"", CellSpacing.ToString()); } output.Write(" border=\"0\""); output.Write(" width=\"100%\""); output.Write(">"); // Output Title output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); if (subtitleCssClass != "") { output.WriteAttribute("class", subtitleCssClass); } output.WriteLine(HtmlTextWriter.TagRightChar); output.Write(seminar.Name); output.WriteEndTag("td"); output.WriteEndTag("tr"); // Output Subtitle output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); if (subtitleCssClass != "") { output.WriteAttribute("class", subtitleCssClass); } output.WriteLine(HtmlTextWriter.TagRightChar); output.Write(seminar.Description); output.WriteEndTag("td"); output.WriteEndTag("tr"); // Output Dates output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); if (datesCssClass != "") { output.WriteAttribute("class", datesCssClass); } output.WriteLine(HtmlTextWriter.TagRightChar); output.Write(seminar.ConstructDateLongString()); output.WriteEndTag("td"); output.WriteEndTag("tr"); // Output Menu if (seminar.RegistrationEnabled) { output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); if (menuCssClass != "") { output.WriteAttribute("class", menuCssClass); } output.WriteLine(HtmlTextWriter.TagRightChar); output.WriteBeginTag("a"); output.WriteAttribute("href", Page.ResolveUrl(string.Format(registrationUrlFormat, seminar.ID))); output.Write(HtmlTextWriter.TagRightChar); output.Write("Register"); output.WriteEndTag("a"); output.WriteEndTag("td"); output.WriteEndTag("tr"); } output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); output.Write(HtmlTextWriter.TagRightChar); if (seminar.DetailsOverrideUrl.Length > 0) { try { HttpContext.Current.Server.Execute(seminar.DetailsOverrideUrl, output); } catch { if (errorPath != null) { HttpContext.Current.Server.Execute(errorPath, output); } else { output.Write("Could not find overriden details for seminar!"); } } } else if (seminar.Details.Length > 0) { output.Write(seminar.Details); } else { output.Write("<b>No details were specified for this seminar.</b>"); } output.WriteEndTag("td"); output.WriteEndTag("tr"); output.WriteEndTag("table"); }
private void renderCreateTab(HtmlTextWriter output) { output.WriteFullBeginTag("tr"); RenderCell("Seminar", "class=\"row1\""); RenderCell(seminar.Name, "class=\"row1\""); output.WriteEndTag("tr"); // // Render Seminar Dates // output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); output.WriteAttribute("class", "row1"); output.WriteAttribute("nowrap", "true"); output.Write(HtmlTextWriter.TagRightChar); output.Write("Dates"); output.WriteEndTag("td"); output.WriteBeginTag("td"); output.WriteAttribute("width", "100%"); output.WriteAttribute("class", "row2"); output.Write(HtmlTextWriter.TagRightChar); output.Write(seminar.ConstructDateLongString()); output.WriteEndTag("td"); output.WriteEndTag("tr"); output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); output.WriteAttribute("class", "row1"); output.WriteAttribute("colspan", "2"); output.Write(HtmlTextWriter.TagRightChar); output.Write("<strong>Instructions:</strong> Please enter the person you wish to register below."); output.WriteEndTag("td"); output.WriteEndTag("tr"); // // Render Contact // output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); output.WriteAttribute("colspan", "2"); output.WriteAttribute("class", SubHeaderCssClass); output.Write(HtmlTextWriter.TagRightChar); output.Write("Contact Information"); output.WriteEndTag("td"); output.WriteEndTag("tr"); // // Render Name // output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); output.WriteAttribute("class", "row1"); output.Write(HtmlTextWriter.TagRightChar); output.Write("Name"); output.WriteEndTag("td"); output.WriteBeginTag("td"); output.WriteAttribute("class", "row2"); output.Write(HtmlTextWriter.TagRightChar); tbName.RenderControl(output); output.Write(" "); fvName.RenderControl(output); output.WriteEndTag("td"); output.WriteEndTag("tr"); RenderPropertyRows("row1", "row2", new string[] { "Address", "", "City", "State/Province", "PostalCode", "Country", "Home", "Work" }, new Control[] { tbAddress1, tbAddress2, tbCity, tbStateProvince, tbPostalCode, tbCountry, tbHomePhone, tbWorkPhone }); // // Render Email // output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); output.WriteAttribute("class", "row1"); output.Write(HtmlTextWriter.TagRightChar); output.Write("Email"); output.WriteEndTag("td"); output.WriteBeginTag("td"); output.WriteAttribute("class", "row2"); output.Write(HtmlTextWriter.TagRightChar); tbEmail1.RenderControl(output); output.Write(" "); fvEmail1.RenderControl(output); evEmail1.RenderControl(output); output.WriteEndTag("td"); output.WriteEndTag("tr"); // // Render ClassUnits // output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); output.WriteAttribute("class", "row1"); output.Write(HtmlTextWriter.TagRightChar); switch (seminar.ClassUnitType) { case DojoSeminarClassUnitType.Day: output.Write(Localization.Strings.DayUnit_Plural); break; case DojoSeminarClassUnitType.Class: output.Write(Localization.Strings.ClassUnit_Plural); break; case DojoSeminarClassUnitType.None: output.Write("None"); break; } output.WriteEndTag("td"); output.WriteBeginTag("td"); output.WriteAttribute("class", "row2"); output.Write(HtmlTextWriter.TagRightChar); ddClassUnits.RenderControl(output); output.WriteEndTag("td"); output.WriteEndTag("tr"); // // Render Options // output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); output.WriteAttribute("colspan", "4"); output.WriteAttribute("class", SubHeaderCssClass); output.Write(HtmlTextWriter.TagRightChar); output.Write("Options"); output.WriteEndTag("td"); output.WriteEndTag("tr"); output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); output.WriteAttribute("colspan", "4"); output.WriteAttribute("class", "row1"); output.Write(HtmlTextWriter.TagRightChar); output.WriteBeginTag("table"); output.WriteAttribute("width", "100%"); output.Write(HtmlTextWriter.TagRightChar); bool valueSet = false; // keeps track of value setting in input controls! DojoSeminarOption option; for (int i = 0; i < seminar.Options.Count; i++) { option = seminar.Options[i]; output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); output.WriteAttribute("class", "row1"); output.Write(HtmlTextWriter.TagRightChar); if (option.MaxQuantity == 1) { output.WriteBeginTag("input"); output.WriteAttribute("type", "checkbox"); output.WriteAttribute("name", ClientID + "___option" + option.iD.ToString()); if (registrationOptions != null) { foreach (DojoSeminarRegistrationOption registrationOption in registrationOptions) { if (registrationOption.parentOption.iD == option.iD) { output.WriteAttribute("checked", "true"); } } } output.Write(HtmlTextWriter.TagRightChar); } else if (option.MaxQuantity > 1) { output.WriteBeginTag("input"); output.WriteAttribute("type", "text"); output.WriteAttribute("name", ClientID + "___qty" + option.iD); output.WriteAttribute("style", "width:35px;"); if (registrationOptions != null) { foreach (DojoSeminarRegistrationOption registrationOption in registrationOptions) { if (option.iD == registrationOption.parentOption.iD) { valueSet = true; output.WriteAttribute("value", registrationOption.Quantity.ToString()); } } } if (!valueSet) { output.WriteAttribute("value", "0"); } valueSet = false; output.Write(HtmlTextWriter.TagRightChar); } output.WriteEndTag("td"); output.WriteBeginTag("td"); output.WriteAttribute("class", "row1"); output.WriteAttribute("width", "100%"); output.Write(HtmlTextWriter.TagRightChar); output.Write(option.Name); if (option.Fee > 0) { output.Write(" ("); output.Write(option.Fee.ToString("c")); if (option.maxQuantity > 1) { output.Write(" ea.)"); } else { output.Write(")"); } } output.WriteEndTag("td"); output.WriteBeginTag("td"); output.WriteAttribute("class", "row1"); output.Write(HtmlTextWriter.TagRightChar); output.WriteEndTag("td"); output.WriteEndTag("tr"); output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); output.WriteAttribute("class", "row1"); output.Write(HtmlTextWriter.TagRightChar); output.Write(" "); output.WriteEndTag("td"); output.WriteBeginTag("td"); output.WriteAttribute("class", "row1"); output.WriteAttribute("width", "100%"); output.WriteAttribute("colspan", "2"); output.Write(HtmlTextWriter.TagRightChar); output.Write(option.description); output.WriteEndTag("td"); output.WriteEndTag("tr"); } output.WriteEndTag("table"); output.WriteEndTag("td"); output.WriteEndTag("tr"); // // Render OK/Cancel Buttons // output.WriteFullBeginTag("tr"); output.WriteBeginTag("td"); output.WriteAttribute("colspan", "2"); output.WriteAttribute("align", "right"); output.WriteAttribute("class", "row1"); output.Write(HtmlTextWriter.TagRightChar); btOk.RenderControl(output); output.Write(" "); btCancel.RenderControl(output); output.WriteEndTag("td"); output.WriteEndTag("tr"); }