public ActionResult SubmitContactUsForm(ContactUs model) { if (ModelState.IsValid) { string encodedResponse = Request.Form["g-Recaptcha-Response"]; var response = ReCaptcha.Validate(encodedResponse, SensativeInformation.ReCaptchaKeys.ReCaptchaSecretKey); bool isCaptchaValid = response.ToLower() == "true" ? true : false; if (!isCaptchaValid) { ModelState.AddModelError("", "Please verify you are not a robot"); return(CurrentUmbracoPage()); } ContactUsEmailModel emailModel = new ContactUsEmailModel(); emailModel.Info = model; emailModel.BaseUri = UrlHelpers.GetBaseUrl(); ViewData.Model = emailModel; var html = RazorHelpers.RenderRazorViewToString("~/Views/Emails/ContactUsEmail.cshtml", ControllerContext, ViewData, TempData); var emailService = new EmailService.EmailHelpers(); emailService.SendEmail("*****@*****.**", "Query from contact form", html); TempData["Success"] = "That is winging its way to us now. We will be in contact as soon as we can."; return(RedirectToCurrentUmbracoPage()); } return(CurrentUmbracoPage()); }
protected override void OnLoad(EventArgs e) { base.OnLoad(e); XmlNodeList zone = null; if (XmlDocument != null) { zone = XmlDocument.SelectNodes("//widget"); } if (zone == null) { return; } foreach (XmlNode widget in zone) { var fileName = string.Format("{0}Custom/Widgets/{1}/widget.cshtml", Utils.ApplicationRelativeWebRoot, widget.InnerText); try { if (widget.InnerText != "TagCloud") { var model = new { Id = widget.Attributes["id"].Value, Name = widget.InnerText, Title = (widget.Attributes["title"].Value == "PostList" ? "Resent posts" : widget.Attributes["title"].Value) }; var lit = new Literal { Text = RazorHelpers.ParseRazor(fileName, model) }; Controls.Add(lit); } } catch (Exception ex) { var lit = new Literal { Text = string.Format("<p style=\"color:red\">Widget {0} not found, check log for details.<p>", widget.InnerText) }; Controls.Add(lit); Utils.Log("WidgetZone.OnLoad", ex); } } }
private void ParseAndInjectRazor() { string parsedRazor = RazorHelpers.ParseRazor(RazorHelpers.RAZOR_HOST_PAGE_VPATH, null); if (!string.IsNullOrWhiteSpace(parsedRazor)) { Regex headRgx = new Regex("<head\\b[^>]*>(.*?)</head>", RegexOptions.IgnoreCase | RegexOptions.Singleline); Match headMatch = headRgx.Match(parsedRazor); if (headMatch.Success) { string headContent = headMatch.Groups[1].Value; // remove the <title> tag. headContent = new Regex("<title\\b[^>]*>(.*?)</title>", RegexOptions.IgnoreCase | RegexOptions.Singleline).Replace(headContent, string.Empty); phRazorHead.Controls.Add(new LiteralControl(headContent)); } Regex bodyRgx = new Regex("<body\\b([^>]*)>(.*?)</body>", RegexOptions.IgnoreCase | RegexOptions.Singleline); Match bodyMatch = bodyRgx.Match(parsedRazor); if (bodyMatch.Success) { string bodyAttributes = bodyMatch.Groups[1].Value.Trim(); if (!string.IsNullOrWhiteSpace(bodyAttributes)) { this.BodyAttributes = " " + bodyAttributes; } string body = bodyMatch.Groups[2].Value; int placeHolderPos = body.IndexOf(RazorHelpers.PAGE_BODY_MARKER, StringComparison.OrdinalIgnoreCase); if (placeHolderPos != -1) { string beforePlaceholderMarkup = body.Substring(0, placeHolderPos); string afterPlaceholderMarkup = body.Substring(placeHolderPos + RazorHelpers.PAGE_BODY_MARKER.Length); phBeforePageBody.Controls.Add(new LiteralControl(beforePlaceholderMarkup)); phAfterPageBody.Controls.Add(new LiteralControl(afterPlaceholderMarkup)); } } } }
public static void MembershipRenewalReminders() { HttpContextWrapper c = new HttpContextWrapper(HttpContext.Current); RouteData routeData = new RouteData(); routeData.Values.Add("controller", typeof(MembershipSurfaceController).Name.ToLower().Replace("controller", "")); ControllerContext controllerContext = new ControllerContext(new RequestContext(c, routeData), new MembershipSurfaceController()); ViewDataDictionary viewData = new ViewDataDictionary(); TempDataDictionary tempData = new TempDataDictionary(); DataManager dm = new DataManager(); var members = dm.GetCurrentMemberships(); //send reminder a week before var model = new MembershipRenewal(); model.BaseUri = System.Web.HttpContext.Current.Request.Url.Scheme + "://" + System.Web.HttpContext.Current.Request.Url.Authority + System.Web.HttpContext.Current.Request.ApplicationPath.TrimEnd('/'); ViewData.Model = model; var html = RazorHelpers.RenderRazorViewToString("~/Views/Reports/VehicleRegistrationReport.cshtml", ControllerContext, ViewData, TempData); var stream = pdfService.GenertatePdfFromHtml(html); foreach (var m in members.Where(n => n.EndDate.Date >= DateTime.UtcNow.Date.AddDays(-100)).ToList()) { if(m.IsSubscription) html = RazorHelpers.RenderRazorViewToString("") } foreach (var m in members.Where(n => n.EndDate.Date >= DateTime.UtcNow.Date).ToList()) { Debug.WriteLine($"Membership a week from renewal. Member id: {m.Member} End date: {m.EndDate} MembershipId: {m.MembershipId}"); } }