public ActionResult SubpageSignup(int NodeID, int ActualPageID) { var model = new USNNewsletterFormViewModel(); model.ActualPageID = ActualPageID; model.CurrentNodeID = NodeID; return(PartialView("USNAdvancedPageComponents/USN_AC_SignupSubpageListingSection", model)); }
public ActionResult SubpageSignup(int NodeID, IPublishedContent globalSettings) { var model = new USNNewsletterFormViewModel(); model.CurrentNodeID = NodeID; model.GlobalSettings = globalSettings; return(PartialView("USNAdvancedPageComponents/USN_AC_SignupSubpageListingSection", model)); }
public ActionResult Index(int NodeID, int ActualPageID) { var model = new USNNewsletterFormViewModel(); model.ActualPageID = ActualPageID; model.CurrentNodeID = NodeID; return(PartialView("USNForms/USN_NewsletterSignup", model)); }
public ActionResult TextSignup(int NodeID, int GlobalSettingsID) { var model = new USNNewsletterFormViewModel(); model.CurrentNodeID = NodeID; model.GlobalSettingsID = GlobalSettingsID; return(PartialView("USNAdvancedPageComponents/USN_AC_TextSignupSection", model)); }
public ActionResult Index(int nodeID, IPublishedContent globalSettings) { var model = new USNNewsletterFormViewModel(); model.CurrentNodeID = nodeID; model.GlobalSettings = globalSettings; return(PartialView("USNForms/USN_NewsletterSignup", model)); }
public ActionResult Index(int NodeID, int GlobalSettingsID, string DataSize) { var model = new USNNewsletterFormViewModel(); model.CurrentNodeID = NodeID; model.GlobalSettingsID = GlobalSettingsID; model.CaptchaDataSize = DataSize; return(PartialView("USNForms/USN_NewsletterSignup", model)); }
public ActionResult TextSignup(int NodeID, int ActualPageID, string PageType) { var model = new USNNewsletterFormViewModel(); model.CurrentNodeID = NodeID; model.ActualPageID = ActualPageID; model.PageType = PageType; return(PartialView("USNAdvancedPageComponents/USN_AC_TextSignupSection", model)); }
public ActionResult HandleNewsletterSubmit(USNNewsletterFormViewModel model) { System.Threading.Thread.Sleep(1000); string lsReturnValue = ""; var currentNode = Umbraco.TypedContent(model.CurrentNodeID); var currentPage = Umbraco.TypedContent(model.ActualPageID); IPublishedContent homeNode = currentPage.AncestorOrSelf(1); var settingsFolder = Umbraco.TypedContent(homeNode.GetProperty("websiteConfigurationNode").Value); var globalSettings = settingsFolder.Children.Where(x => x.DocumentTypeAlias == "USNGlobalSettings").First(); if (!ModelState.IsValid) { return(JavaScript(String.Format("$(NewsletterError{0}).show();$(NewsletterError{0}).html('<div class=\"info\"><p>{1}</p></div>');", model.CurrentNodeID, umbraco.library.GetDictionaryItem("USN Newsletter Form General Error")))); } try { AuthenticationDetails auth = new ApiKeyAuthenticationDetails(globalSettings.GetProperty("campaignMonitorAPIKey").Value.ToString()); string subsciberListID = ""; if (currentNode.GetProperty("campaignMonitorSubscriberListID").Value.ToString() != String.Empty) { subsciberListID = currentNode.GetProperty("campaignMonitorSubscriberListID").Value.ToString(); } else { subsciberListID = globalSettings.GetProperty("defaultCampaignMonitorSubscriberListID").Value.ToString(); } Subscriber loSubscriber = new Subscriber(auth, subsciberListID); List <SubscriberCustomField> customFields = new List <SubscriberCustomField>(); string lsSubscriberID = loSubscriber.Add(model.Email, model.FirstName + " " + model.LastName, customFields, false); lsReturnValue = String.Format("<div class=\"page_component alert alert-success alert-dismissible fade in\" role=\"alert\"><div class=\"info\">{0}</div></div>", currentNode.GetProperty("submissionMessage").Value.ToString()); return(Content(lsReturnValue)); } catch (Exception ex) { return(JavaScript(String.Format("$(NewsletterError{0}).show();$(NewsletterError{0}).html('<div class=\"info\"><p>{1}</p><p>{2}</p></div>');", model.CurrentNodeID, umbraco.library.GetDictionaryItem("USN Newsletter Form Signup Error"), ex.Message))); } }
public ActionResult Index(int GlobalSettingsID, string ViewPath, string DataSize, string FormColor, string FormButtonColor, USNHeading FormHeading, string FormSecondaryHeading, HtmlString FormIntroduction, string FormButtonText, string FormSubmissionMessage, string FormSubscriberListID, bool FormHideFields) { var model = new USNNewsletterFormViewModel(); Guid g = Guid.NewGuid(); model.UniqueID = Guid.NewGuid().ToString(); model.GlobalSettingsID = GlobalSettingsID; model.CaptchaDataSize = DataSize; model.FormColor = FormColor; model.FormButtonColor = FormButtonColor; model.FormHeading = FormHeading; model.FormSecondaryHeading = FormSecondaryHeading; model.FormIntroduction = FormIntroduction; model.FormButtonText = FormButtonText; model.FormSubmissionMessage = FormSubmissionMessage; model.FormSubscriberListID = FormSubscriberListID; model.FormHideFields = FormHideFields; return(PartialView(ViewPath + "/USNForms/USN_NewsletterSignup", model)); }
public async Task <ActionResult> HandleNewsletterSubmit(USNNewsletterFormViewModel model) { System.Threading.Thread.Sleep(1000); string lsReturnValue = ""; var currentNode = Umbraco.TypedContent(model.CurrentNodeID); var currentPage = Umbraco.TypedContent(model.ActualPageID); IPublishedContent homeNode = currentPage.AncestorOrSelf(1); var settingsFolder = Umbraco.TypedContent(homeNode.GetProperty("websiteConfigurationNode").Value); var globalSettings = settingsFolder.Children.Where(x => x.DocumentTypeAlias == "USNGlobalSettings").First(); if (!ModelState.IsValid) { return(JavaScript(String.Format("$(NewsletterError{0}).show();$(NewsletterError{0}).html('<div class=\"info\"><p>{1}</p></div>');", model.CurrentNodeID, umbraco.library.GetDictionaryItem("USN Newsletter Form General Error")))); } try { if (globalSettings.GetProperty("emailMarketingPlatform").Value.ToString() == "Campaign Monitor") { AuthenticationDetails auth = new ApiKeyAuthenticationDetails(globalSettings.GetProperty("newsletterAPIKey").Value.ToString()); string subsciberListID = String.Empty; if (currentNode.GetProperty("newsletterSubscriberListID").Value.ToString() != String.Empty) { subsciberListID = currentNode.GetProperty("newsletterSubscriberListID").Value.ToString(); } else { subsciberListID = globalSettings.GetProperty("defaultNewsletterSubscriberListID").Value.ToString(); } Subscriber loSubscriber = new Subscriber(auth, subsciberListID); List <SubscriberCustomField> customFields = new List <SubscriberCustomField>(); string subscriberID = loSubscriber.Add(model.Email, model.FirstName + " " + model.LastName, customFields, false); } else if (globalSettings.GetProperty("emailMarketingPlatform").Value.ToString() == "MailChimp") { var mc = new MailChimpManager(globalSettings.GetProperty("newsletterAPIKey").Value.ToString()); string subsciberListID = String.Empty; if (currentNode.GetProperty("newsletterSubscriberListID").Value.ToString() != String.Empty) { subsciberListID = currentNode.GetProperty("newsletterSubscriberListID").Value.ToString(); } else { subsciberListID = globalSettings.GetProperty("defaultNewsletterSubscriberListID").Value.ToString(); } var email = new EmailParameter() { Email = model.Email }; var myMergeVars = new MergeVar(); myMergeVars.Add("FNAME", model.FirstName); myMergeVars.Add("LNAME", model.LastName); EmailParameter results = mc.Subscribe(subsciberListID, email, myMergeVars, "html", false, true, false, false); } lsReturnValue = String.Format("<div class=\"spc alert alert-success alert-dismissible fade in\" role=\"alert\"><div class=\"info\">{0}</div></div>", currentNode.GetProperty("submissionMessage").Value.ToString()); return(Content(lsReturnValue)); } catch (Exception ex) { return(JavaScript(String.Format("$(NewsletterError{0}).show();$(NewsletterError{0}).html('<div class=\"info\"><p>{1}</p><p>{2}</p></div>');", model.CurrentNodeID, umbraco.library.GetDictionaryItem("USN Newsletter Form Signup Error"), ex.Message))); } }
public ActionResult HandleNewsletterSubmit(USNNewsletterFormViewModel model) { System.Threading.Thread.Sleep(1000); var globalSettings = Umbraco.Content(model.GlobalSettingsID); string recaptchaReset = globalSettings.HasValue("googleReCAPTCHASiteKey") && globalSettings.HasValue("googleReCAPTCHASecretKey") ? "grecaptcha.reset();" : String.Empty; string lsReturnValue = String.Empty; if (!ModelState.IsValid) { return(JavaScript(String.Format("{0}$('#NE_{1}').show();$('#NE_{1}').html('<div class=\"info\"><p>{2}</p></div>');", recaptchaReset, model.UniqueID, HttpUtility.JavaScriptStringEncode(Umbraco.GetDictionaryValue("USN Form Required Field Error"))))); } try { if (globalSettings.HasValue("googleReCAPTCHASiteKey") && globalSettings.HasValue("googleReCAPTCHASecretKey")) { var response = Request["g-recaptcha-response"]; string secretKey = globalSettings.Value <string>("googleReCAPTCHASecretKey"); var client = new WebClient(); var result = client.DownloadString(string.Format("https://www.google.com/recaptcha/api/siteverify?secret={0}&response={1}", secretKey, response)); var obj = JObject.Parse(result); var status = (bool)obj.SelectToken("success"); if (!status) { return(JavaScript(String.Format("{0}$('#NE_{1}').show();$('#NE_{1}').html('{2}');", recaptchaReset, model.UniqueID, HttpUtility.JavaScriptStringEncode(Umbraco.GetDictionaryValue("USN Form reCAPTCHA Error"))))); } } string firstName = model.FirstName == "***" ? String.Empty : model.FirstName; string lastName = model.LastName == "***" ? String.Empty : model.LastName; if (globalSettings.Value <string>("emailMarketingPlatform") == "newsletterCM") { AuthenticationDetails auth = new ApiKeyAuthenticationDetails(globalSettings.Value <string>("newsletterAPIKey")); string subsciberListID = String.Empty; if (model.FormSubscriberListID.HasValue()) { subsciberListID = model.FormSubscriberListID; } else { subsciberListID = globalSettings.Value <string>("defaultNewsletterSubscriberListID"); } Subscriber loSubscriber = new Subscriber(auth, subsciberListID); List <SubscriberCustomField> customFields = new List <SubscriberCustomField>(); string subscriberID = loSubscriber.Add(model.Email, firstName + " " + lastName, customFields, false); } else if (globalSettings.Value <string>("emailMarketingPlatform") == "newsletterMC") { var mc = new MailChimpManager(globalSettings.Value <string>("newsletterAPIKey")); string subsciberListID = String.Empty; if (model.FormSubscriberListID.HasValue()) { subsciberListID = model.FormSubscriberListID; } else { subsciberListID = globalSettings.Value <string>("defaultNewsletterSubscriberListID"); } var email = new EmailParameter() { Email = model.Email }; var myMergeVars = new MergeVar(); myMergeVars.Add("FNAME", firstName); myMergeVars.Add("LNAME", lastName); EmailParameter results = mc.Subscribe(subsciberListID, email, myMergeVars, "html", false, true, false, false); } return(JavaScript(String.Format("$('#S_{0}').show();$('#Form_{0}').hide();", model.UniqueID))); } catch (Exception ex) { return(JavaScript(String.Format("{0}$('#NE_{1}').show();$('#NE_{1}').html('<div class=\"info\"><p>{2}</p><p>{3}</p></div>');", recaptchaReset, model.UniqueID, HttpUtility.JavaScriptStringEncode(Umbraco.GetDictionaryValue("USN Newsletter Form Signup Error")), HttpUtility.JavaScriptStringEncode(ex.Message)))); } }
public ActionResult HandleNewsletterSubmit(USNNewsletterFormViewModel model) { System.Threading.Thread.Sleep(1000); string lsReturnValue = String.Empty; if (!ModelState.IsValid) { return(JavaScript(String.Format("$(NewsletterError{0}).show();$(NewsletterError{0}).html('<div class=\"info\"><p>{1}</p></div>');", model.CurrentNodeID, HttpUtility.JavaScriptStringEncode(umbraco.library.GetDictionaryItem("USN Newsletter Form General Error"))))); } try { var currentNode = Umbraco.TypedContent(model.CurrentNodeID); var globalSettings = Umbraco.TypedContent(model.GlobalSettingsID); if (globalSettings.HasValue("googleReCAPTCHASiteKey") && globalSettings.HasValue("googleReCAPTCHASecretKey")) { var response = Request["g-recaptcha-response"]; string secretKey = globalSettings.GetPropertyValue <string>("googleReCAPTCHASecretKey"); var client = new WebClient(); var result = client.DownloadString(string.Format("https://www.google.com/recaptcha/api/siteverify?secret={0}&response={1}", secretKey, response)); var obj = JObject.Parse(result); var status = (bool)obj.SelectToken("success"); if (!status) { return(JavaScript(String.Format("$(NewsletterError{0}).show();$(NewsletterError{0}).html('{1}');", model.CurrentNodeID, HttpUtility.JavaScriptStringEncode(umbraco.library.GetDictionaryItem("USN Form reCAPTCHA Error"))))); } } if (globalSettings.GetPropertyValue <USNOptions>("emailMarketingPlatform") == USNOptions.Newsletter_CM) { AuthenticationDetails auth = new ApiKeyAuthenticationDetails(globalSettings.GetPropertyValue <string>("newsletterAPIKey")); string subsciberListID = String.Empty; if (currentNode.GetPropertyValue <string>("newsletterSubscriberListID") != String.Empty) { subsciberListID = currentNode.GetPropertyValue <string>("newsletterSubscriberListID"); } else { subsciberListID = globalSettings.GetPropertyValue <string>("defaultNewsletterSubscriberListID"); } Subscriber loSubscriber = new Subscriber(auth, subsciberListID); List <SubscriberCustomField> customFields = new List <SubscriberCustomField>(); string subscriberID = loSubscriber.Add(model.Email, model.FirstName + " " + model.LastName, customFields, false); } else if (globalSettings.GetPropertyValue <USNOptions>("emailMarketingPlatform") == USNOptions.Newsletter_Mailchimp) { var mc = new MailChimpManager(globalSettings.GetPropertyValue <string>("newsletterAPIKey")); string subsciberListID = String.Empty; if (currentNode.HasValue("newsletterSubscriberListID")) { subsciberListID = currentNode.GetPropertyValue <string>("newsletterSubscriberListID"); } else { subsciberListID = globalSettings.GetPropertyValue <string>("defaultNewsletterSubscriberListID"); } var email = new EmailParameter() { Email = model.Email }; var myMergeVars = new MergeVar(); myMergeVars.Add("FNAME", model.FirstName); myMergeVars.Add("LNAME", model.LastName); EmailParameter results = mc.Subscribe(subsciberListID, email, myMergeVars, "html", false, true, false, false); } lsReturnValue = String.Format("<div class=\"spc alert alert-success alert-dismissible fade in\" role=\"alert\"><div class=\"info\">{0}</div></div>", currentNode.GetPropertyValue <string>("newsletterSubmissionMessage")); return(Content(lsReturnValue)); } catch (Exception ex) { return(JavaScript(String.Format("$(NewsletterError{0}).show();$(NewsletterError{0}).html('<div class=\"info\"><p>{1}</p><p>{2}</p></div>');", model.CurrentNodeID, HttpUtility.JavaScriptStringEncode(umbraco.library.GetDictionaryItem("USN Newsletter Form Signup Error")), HttpUtility.JavaScriptStringEncode(ex.Message)))); } }
public ActionResult HandleNewsletterSubmit(USNNewsletterFormViewModel model) { System.Threading.Thread.Sleep(1000); string lsReturnValue = String.Empty; var currentNode = Umbraco.TypedContent(model.CurrentNodeID); var globalSettings = Umbraco.TypedContent(model.GlobalSettingsID); if (!ModelState.IsValid) { return(JavaScript(String.Format("$(NewsletterError{0}).show();$(NewsletterError{0}).html('<div class=\"info\"><p>{1}</p></div>');", model.CurrentNodeID, HttpUtility.JavaScriptStringEncode(umbraco.library.GetDictionaryItem("USN Newsletter Form General Error"))))); } try { if (globalSettings.GetPropertyValue <string>("emailMarketingPlatform") == "Campaign Monitor") { AuthenticationDetails auth = new ApiKeyAuthenticationDetails(globalSettings.GetPropertyValue <string>("newsletterAPIKey")); string subsciberListID = String.Empty; if (currentNode.GetPropertyValue <string>("newsletterSubscriberListID") != String.Empty) { subsciberListID = currentNode.GetPropertyValue <string>("newsletterSubscriberListID"); } else { subsciberListID = globalSettings.GetPropertyValue <string>("defaultNewsletterSubscriberListID"); } Subscriber loSubscriber = new Subscriber(auth, subsciberListID); List <SubscriberCustomField> customFields = new List <SubscriberCustomField>(); string subscriberID = loSubscriber.Add(model.Email, model.FirstName + " " + model.LastName, customFields, false); } else if (globalSettings.GetPropertyValue <string>("emailMarketingPlatform") == "MailChimp") { var mc = new MailChimpManager(globalSettings.GetPropertyValue <string>("newsletterAPIKey")); string subsciberListID = String.Empty; if (currentNode.HasValue("newsletterSubscriberListID")) { subsciberListID = currentNode.GetPropertyValue <string>("newsletterSubscriberListID"); } else { subsciberListID = globalSettings.GetPropertyValue <string>("defaultNewsletterSubscriberListID"); } var email = new EmailParameter() { Email = model.Email }; var myMergeVars = new MergeVar(); myMergeVars.Add("FNAME", model.FirstName); myMergeVars.Add("LNAME", model.LastName); EmailParameter results = mc.Subscribe(subsciberListID, email, myMergeVars, "html", false, true, false, false); } lsReturnValue = String.Format("<div class=\"spc alert alert-success alert-dismissible fade in\" role=\"alert\"><div class=\"info\">{0}</div></div>", currentNode.GetPropertyValue <string>("submissionMessage")); return(Content(lsReturnValue)); } catch (Exception ex) { return(JavaScript(String.Format("$(NewsletterError{0}).show();$(NewsletterError{0}).html('<div class=\"info\"><p>{1}</p><p>{2}</p></div>');", model.CurrentNodeID, HttpUtility.JavaScriptStringEncode(umbraco.library.GetDictionaryItem("USN Newsletter Form Signup Error")), HttpUtility.JavaScriptStringEncode(ex.Message)))); } }