bool IHttpModule.HandleRequest(ServerSide.Server server, HttpHandler handler, ClientData client, HttpRequest request, ref HttpResponse response) { if (request.Method == HttpMessage.HttpMethods.Post && request.Headers.ContainsHeader(HttpMessage.EntityHeaders.ContentType)) { if (request.Headers[HttpMessage.EntityHeaders.ContentType].Contains(urlEncodedHeader)) { var form = this.ParseFormUrlEncoded(request); FormReceived?.Invoke(this, form); server.LogDebug("Received POST form of " + form.Keys.Count + " keys!"); return(true); } else if (request.Headers[HttpMessage.EntityHeaders.ContentType].Contains(multipartHeader)) { var form = this.ParseFormMultipart(request); FormReceived?.Invoke(this, form); server.LogDebug("Received POST form of " + form.Keys.Count + " keys!"); return(true); } else { return(false); } } else { return(false); } }
protected override void Execute(CodeActivityContext context) { ActivityCompleted.Set(context, false); ActivityCanceled.Set(context, false); if (UserInteractionResponse.Get(context).UserInteractionType == UserInteractions.Enumerations.UserInteractionType.RequireForm) { Workflows.UserInteractions.Response.RequireFormResponse response = (UserInteractions.Response.RequireFormResponse)UserInteractionResponse.Get(context); if ((response.Form != null) && (!response.SaveAsDraft) && (!response.Cancel)) { Form.Set(context, response.Form); Form.Get(context).ResetForm(WorkflowManager.Get(context).Application); FormReceived.Set(context, true); ActivityCompleted.Set(context, true); Activities.CommonFunctions.WorkflowStepsAdd( WorkflowManager.Get(context).Application, 1, WorkQueueItemId.Get(context), WorkflowSteps.Get(context), Form.Get(context).Name ); } else if (response.SaveAsDraft) { Form.Set(context, response.Form); Form.Get(context).ResetForm(WorkflowManager.Get(context).Application); } else if (response.Cancel) { Activities.CommonFunctions.WorkflowStepsAdd( WorkflowManager.Get(context).Application, 1, WorkQueueItemId.Get(context), WorkflowSteps.Get(context), "Form Canceled." ); ActivityCompleted.Set(context, true); ActivityCanceled.Set(context, true); } SaveAsDraft.Set(context, response.SaveAsDraft); } }