/// <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) { PageErrors errors = PageErrors.getErrors(null, Page); if (errors != null) { if (name == null) { if (!errors.isEmpty()) { StringBuilder b = new StringBuilder(); ResourceManager rm = DBUtils.getResourceManager(); CultureInfo ci = CultureInfo.CurrentUICulture; if (showPrompt) { b.Append(rm.GetString("validate.prompt", ci)); } foreach (Error s in errors.globalErrors) { b.Append("\n" + s.getPrompt(errors.db, rm, ci)); } if (showFieldErrors) { foreach (string key in errors.errors.Keys) { Error er = errors.getError(key); b.Append("\n - " + er.getPrompt(errors.db, rm, ci)); } } writeError(output, b, Page, errors); if (isPopup) { output.Write("<script defer>alert(\""); output.Write(b.ToString().Replace("\n", "\\n")); output.Write("\");</script>"); } else { output.Write(HTMLUtils.toHTMLText(b.ToString())); } } } else { if (errors.hasError(name)) { ResourceManager rm = DBUtils.getResourceManager(); Error er = errors.getError(name); output.Write("<span style=\"color:#ff0000\">"); output.Write(er.getFieldPrompt(errors.db, rm)); output.Write("</span>"); } } } }
public void writeError(HtmlTextWriter output, StringBuilder b, Control ctrl, PageErrors errors) { foreach (Control c in ctrl.Controls) { if (c.GetType() == typeof(PageError)) { PageError pe = (PageError)c; if (pe.Name != null) { if (errors.hasError(pe.Name)) { ResourceManager rm = DBUtils.getResourceManager(); Error er = errors.getError(pe.Name); b.Append("\n - " + er.getPrompt(errors.db, rm)); } } } writeError(output, b, c, errors); } }