public string Parse(HtmlHelper htmlHelper, string current) { if (current == null) { return(null); } bool submitted = true.Equals(htmlHelper.ViewContext.TempData["form-submitted"]); var errors = htmlHelper.ViewContext.TempData["form-submitted-message"] as List <string>; var data = htmlHelper.ViewContext.TempData["form-data"] as NameValueCollection; var status = new FormSubmittedStatus(submitted, errors, data); current = OtherPageFormMatch.Replace(current, match => { int pageId = Convert.ToInt32( match.Value.Replace("[", "").Replace("]", "").Split('-')[1]); var document = _documentService.GetDocument <Webpage>(pageId); return(document == null ? string.Empty : _formRenderer.RenderForm(document, status)); }); current = ThisPageFormMatch.Replace(current, match => _formRenderer.RenderForm(CurrentRequestData.CurrentPage, status)); return(current); }
private static FormSubmittedStatus GetStatus(ViewContext viewContext) { var submitted = true.Equals(viewContext.TempData["form-submitted"]); var errors = viewContext.TempData["form-submitted-message"] as List <string>; var data = viewContext.TempData["form-data"] as NameValueCollection; var status = new FormSubmittedStatus(submitted, errors, data); return(status); }
public void FormRenderer_RenderForm_WhenFormDesignIsEmptyReturnsResultOfIDefaultFormRenderer() { var stubWebpage = new StubWebpage(); var formSubmittedStatus = new FormSubmittedStatus(false, null, null); A.CallTo(() => _defaultFormRenderer.GetDefault(stubWebpage, formSubmittedStatus)).Returns("test-default"); var renderForm = _formRenderingManager.RenderForm(stubWebpage, formSubmittedStatus); renderForm.Should().Be("test-default"); }
public void FormRenderer_RenderForm_IfFormDesignHasValueReturnResultCustomRendererGetForm() { var stubWebpage = new StubWebpage { FormDesign = "form-design-data" }; var formSubmittedStatus = new FormSubmittedStatus(false, null, null); A.CallTo(() => _customFormRenderer.GetForm(stubWebpage, formSubmittedStatus)).Returns("custom-form"); var renderForm = _formRenderingManager.RenderForm(stubWebpage, formSubmittedStatus); renderForm.Should().Be("custom-form"); }