void SubmitContactForm(object sender, MouseEventArgs mouseEvent) { if (ValidateContactForm()) { ContactFormRequest postRequest = new ContactFormRequest(questionInput.Text, detailInput.Text, emailInput.Text, nameInput.Text, ""); formContainer.Visible = false; messageContainer.Visible = true; centerContainer.RemoveAllChildren(); centerContainer.AddChild(messageContainer); cancelButton.Visible = false; submitButton.Visible = false; postRequest.RequestSucceeded += new EventHandler(onPostRequestSucceeded); postRequest.RequestFailed += new EventHandler(onPostRequestFailed); postRequest.Request(); } }
public async Task <IHttpActionResult> Send(ContactFormRequest form) { if (!EmailValidator.IsValidEmail(form.EmailAddress) || form.Message.IsNullOrWhiteSpace()) { return(BadRequest()); } var message = new StringBuilder(); message.AppendLine($"Email: {form.EmailAddress}<br /><br />"); message.AppendLine($"Name: {form.Name}<br /><br />"); message.AppendLine(form.Message); // TODO replace with whiscode domain email once transfer has completed if (await _emailService.SendAsync("*****@*****.**", "Website Enquiry", message.ToString())) { return(Ok()); } return(InternalServerError()); }
public static BasicResponse contactFormImplementation(ContactFormRequest request) { if (String.IsNullOrWhiteSpace(request.email)) { return(new BasicResponse { message = "Please enter an email", status = 200, success = false }); } else if (String.IsNullOrWhiteSpace(request.name)) { return(new BasicResponse { message = "Please enter a name", status = 200, success = false }); } else if (String.IsNullOrWhiteSpace(request.message)) { return(new BasicResponse { message = "Please enter a message.", status = 200, success = false }); } var contactFormBody = "Name: " + request.name + Environment.NewLine + "Email: " + request.email + Environment.NewLine + "Message: " + request.message; SlackHelper.sendSupportChannel(contactFormBody); EmailNoTemplateHelper.SendEmail("Pedal Contact", "*****@*****.**", contactFormBody); EmailTemplateHelper.SendEmail("Pedal Contact", request.email, Constants.PedalWebUrl, request.name, "contact_form.html", request.message); return(new BasicResponse { message = "Success", status = 200, success = true }); }
// SHARED // Send email from contact form public BasicResponse contactForm(ContactFormRequest request) { try { Logs.LogsInsertAction("Contact form attempted"); var validResponse = Shared.contactForm.contactFormImplementation(request); if (validResponse.success == true) { Logs.LogsInsertAction("Contact form success: " + validResponse.message); } else { Logs.LogsInsertAction("Contact form failure: " + validResponse.message); } return(validResponse); } catch (Exception exception) { Logs.LogsInsertError(exception); return(new BasicResponse { message = "An error occured. The Pedal team has been notified.", success = false }); } }
public ContactFormPage() { this.WindowTitle = "MatterControl : " + "Submit Feedback".Localize(); this.HeaderText = "How can we improve?".Localize(); contentRow.Padding = theme.DefaultContainerPadding; submitButton = theme.CreateDialogButton("Submit".Localize()); submitButton.Click += (sender, eventArgs) => { if (ValidateContactForm()) { ContactFormRequest postRequest = new ContactFormRequest(questionInput.Text, detailInput.Text, emailInput.Text, nameInput.Text, ""); contentRow.RemoveChildren(); contentRow.AddChild(messageContainer); submitButton.Visible = false; postRequest.RequestSucceeded += (s, e) => { submissionStatus.Text = "Thank you! Your information has been submitted.".Localize(); this.SetCancelButtonText("Done".Localize()); }; postRequest.RequestFailed += (s, e) => { submissionStatus.Text = "Sorry! We weren't able to submit your request.".Localize(); }; postRequest.Request(); } }; this.AddPageAction(submitButton); messageContainer = new FlowLayoutWidget(FlowDirection.TopToBottom) { HAnchor = HAnchor.Stretch, VAnchor = VAnchor.Stretch }; submissionStatus = new TextWidget("Submitting your information...".Localize(), pointSize: 13) { AutoExpandBoundsToText = true, Margin = new BorderDouble(0, 5), TextColor = theme.TextColor, HAnchor = HAnchor.Left }; messageContainer.AddChild(submissionStatus); // Default sizing results in too much top whitespace, revise Subject row to only be as big as content var subjectRow = CreateLabelRow("Subject".Localize()); subjectRow.VAnchor = VAnchor.Fit; contentRow.AddChild(subjectRow); contentRow.AddChild(questionInput = new MHTextEditWidget("", theme) { HAnchor = HAnchor.Stretch }); contentRow.AddChild(questionErrorMessage = CreateErrorRow()); contentRow.AddChild(CreateLabelRow("Message".Localize())); contentRow.AddChild(detailInput = new MHTextEditWidget("", theme, pixelHeight: 120, multiLine: true) { HAnchor = HAnchor.Stretch }); contentRow.AddChild(detailErrorMessage = CreateErrorRow()); contentRow.AddChild(CreateLabelRow("Email Address".Localize())); contentRow.AddChild(emailInput = new MHTextEditWidget("", theme) { HAnchor = HAnchor.Stretch }); contentRow.AddChild(emailErrorMessage = CreateErrorRow()); contentRow.AddChild(CreateLabelRow("Name".Localize())); contentRow.AddChild(nameInput = new MHTextEditWidget("", theme) { HAnchor = HAnchor.Stretch }); contentRow.AddChild(nameErrorMessage = CreateErrorRow()); }