public JsonResult SaveAbbonementEmail(string NewsLetterGroupId, string Email) { NewsletterSubscriber Subscriber; Guid NewsletterGroupID = Guid.Parse(NewsLetterGroupId); NewsletterGroup CurrentNewsletterGroup = NewsletterGroup.GetById <NewsletterGroup>(NewsletterGroupID); //BaseCollection<NewsletterSubscriber> SubScribers = BaseCollection<NewsletterSubscriber>.Get("EmailAdres = '" + Email + "'"); BaseCollection <NewsletterSubscriber> SubScribers = BaseCollection <NewsletterSubscriber> .Get("Name = '" + Email + "'"); if (SubScribers.Count >= 1) { Subscriber = SubScribers[0]; if (Subscriber.SubscribedGroups.Where(c => c.ID == NewsletterGroupID).Count() >= 1) { return(JsonResult.CreateResult(false, "Dit emailadres is al toegekend aan deze nieuwsbrief groep.")); } else { Subscriber.SubscribedGroups.Add(CurrentNewsletterGroup); Subscriber.Save(); } } else { Subscriber = new BitPlate.Domain.Newsletters.NewsletterSubscriber(); Subscriber.Email = Email; Subscriber.SubscribedGroups.Add(CurrentNewsletterGroup); Subscriber.Save(); } return(JsonResult.CreateResult(true, CurrentNewsletterGroup.Subscribers)); }
public List <TreeGridItem> LoadNewsletterList(NewsletterGroup obj = null) { List <TreeGridItem> returnValue = new List <TreeGridItem>(); BaseCollection <Newsletter> newsletters = new HJORM.BaseCollection <BitPlate.Domain.Newsletters.Newsletter>(); if (obj == null) { newsletters = BaseCollection <Newsletter> .Get("FK_Site='" + SessionObject.CurrentSite.ID.ToString() + "'"); } else { newsletters = obj.Newsletters; } foreach (Newsletter newsletter in newsletters) { TreeGridItem tgi = new TreeGridItem(); tgi.ID = newsletter.ID; tgi.Name = newsletter.Name; tgi.CreateDate = newsletter.CreateDate; tgi.Field1 = newsletter.MailingGroupsString; returnValue.Add(tgi); } return(returnValue); }
public JsonResult SaveNewsletterGroup(NewsletterGroup obj) { List <string> returnValue = new List <string>(); //Dictionary<string, object> returnValue = new Dictionary<string, object>(); bool Success = true; Exception exc = null; try { obj.Save(); } catch (Exception ex) { Success = false; exc = ex; } if (Success) { //BaseCollection<NewsletterGroup> Groups = LoadNewsletterGroupList(); returnValue.Add(obj.ID.ToString()); return(JsonResult.CreateResult(Success, returnValue)); } else { return(JsonResult.CreateResult(Success, exc.Message)); } }
private string SaveSubscriber(Dictionary <string, string> FormParameters, NewsletterSubscriber subscriber) { if (subscriber.IsNew) { return("Geen geldige abonnee geladen"); } subscriber.Name = FormParameters.ContainsKey("textboxName") ? FormParameters["textboxName"] : ""; subscriber.NamePrefix = FormParameters.ContainsKey("textboxNamePrefix") ? FormParameters["textboxNamePrefix"] : ""; subscriber.ForeName = FormParameters.ContainsKey("textboxForeName") ? FormParameters["textboxForeName"] : ""; subscriber.CompanyName = FormParameters.ContainsKey("textboxCompany") ? FormParameters["textboxCompany"] : ""; subscriber.Gender = FormParameters.ContainsKey("radioGender") ? (BitPlate.Domain.Autorisation.BaseUser.SexeEnum)Convert.ToInt32(FormParameters["radioGender"]) : Autorisation.BaseUser.SexeEnum.Undefined; subscriber.SubscribedGroups.Clear(); //subscriber.Save(); //groepen toevoegen BaseCollection <NewsletterGroup> requiredNewsletterGroups = BaseCollection <NewsletterGroup> .Get("FK_Site = '" + Site.ID.ToString() + "' AND IsMandatoryGroup=1"); foreach (NewsletterGroup group in requiredNewsletterGroups) { subscriber.SubscribedGroups.Add(group); } foreach (string key in FormParameters.Keys) { if (key.StartsWith("checkboxNewsletterGroup")) { Guid ID; Guid.TryParse(key.Replace("checkboxNewsletterGroup", ""), out ID); NewsletterGroup group = BaseObject.GetById <NewsletterGroup>(ID); subscriber.SubscribedGroups.Add(group); } } subscriber.Save(); return(""); }
public void SubmitButton_Click(object sender, EventArgs e) { if (this.Subscriber != null && this.NewsGroupCheckBoxList != null) { this.Subscriber.SubscribedGroups.Clear(); foreach (ListItem li in this.NewsGroupCheckBoxList.Items) { if (li.Selected) { Guid ID; Guid.TryParse(li.Value, out ID); NewsletterGroup group = BaseObject.GetById <NewsletterGroup>(ID); this.Subscriber.SubscribedGroups.Add(group); } } foreach (NewsletterGroup group in this.NewsletterGroups) { if (group.IsMandatoryGroup) { this.Subscriber.SubscribedGroups.Add(group); } } this.Subscriber.Save(); } if (this.PanelSubscriptionChangeSaved != null) { this.PanelSubscriptionChangeSaved.Visible = true; } }
public Dictionary <string, object> LoadNewsletterGroupDetails(NewsletterGroup obj) { BaseCollection <NewsletterSubscriber> Subscribers = obj.Subscribers; BaseCollection <Newsletter> Newsletters = obj.Newsletters; Dictionary <string, object> ReturnValue = new Dictionary <string, object>(); ReturnValue.Add("Newsletters", Newsletters); ReturnValue.Add("Subscribers", Subscribers); return(ReturnValue); }
private NewsletterSubscriber InsertSubscriber(Dictionary <string, string> FormParameters) { NewsletterSubscriber subscriber = new NewsletterSubscriber(); string email = FormParameters["textboxEmail"].Trim(); BaseCollection <NewsletterSubscriber> subscribers = BaseCollection <NewsletterSubscriber> .Get("Name = '" + email + "'"); if (subscribers.Count > 0) { errorMsg = "Dit emailadres is al geabonneerd."; } else { subscriber.Email = email; subscriber.RegistrationType = RegistrationTypeEnum.Website; subscriber.Name = FormParameters.ContainsKey("textboxName") ? FormParameters["textboxName"] : ""; subscriber.NamePrefix = FormParameters.ContainsKey("textboxNamePrefix") ? FormParameters["textboxNamePrefix"] : ""; subscriber.ForeName = FormParameters.ContainsKey("textboxForeName") ? FormParameters["textboxForeName"] : ""; subscriber.CompanyName = FormParameters.ContainsKey("textboxCompany") ? FormParameters["textboxCompany"] : ""; subscriber.Gender = FormParameters.ContainsKey("radioGender") ? (BitPlate.Domain.Autorisation.BaseUser.SexeEnum)Convert.ToInt32(FormParameters["radioGender"]) : Autorisation.BaseUser.SexeEnum.Undefined; subscriber.Save(); //groepen toevoegen BaseCollection <NewsletterGroup> requiredNewsletterGroups = BaseCollection <NewsletterGroup> .Get("FK_Site = '" + Site.ID.ToString() + "' AND IsMandatoryGroup=1"); foreach (NewsletterGroup group in requiredNewsletterGroups) { subscriber.SubscribedGroups.Add(group); } foreach (string key in FormParameters.Keys) { if (key.StartsWith("checkboxNewsletterGroup")) { Guid ID; Guid.TryParse(key.Replace("checkboxNewsletterGroup", ""), out ID); NewsletterGroup group = BaseObject.GetById <NewsletterGroup>(ID); subscriber.SubscribedGroups.Add(group); } } subscriber.Save(); if (getSetting <bool>("SendVerifiationEmail")) { SendVerificationEmail(subscriber); } } return(subscriber); }
private string insertSubscriber(string email, Dictionary <string, string> FormParameters) { string errorMsg = ""; BaseCollection <NewsletterSubscriber> subscribers = BaseCollection <NewsletterSubscriber> .Get("Name = '" + email + "'"); if (subscribers.Count > 0) { errorMsg = "Dit emailadres is al geabonneerd."; } else { NewsletterSubscriber subscriber = new NewsletterSubscriber(); subscriber.Email = email; subscriber.Name = FormParameters.ContainsKey("Naam") ? FormParameters["Naam"] : ""; subscriber.NamePrefix = FormParameters.ContainsKey("Tussenvoegsels") ? FormParameters["Tussenvoegsels"] : ""; subscriber.ForeName = FormParameters.ContainsKey("Voornaam") ? FormParameters["Voornaam"] : ""; subscriber.CompanyName = FormParameters.ContainsKey("Bedrijf") ? FormParameters["Bedrijf"] : ""; subscriber.Gender = FormParameters.ContainsKey("Geslacht") ? (BitPlate.Domain.Autorisation.BaseUser.SexeEnum)Convert.ToInt32(FormParameters["Geslacht"]) : Autorisation.BaseUser.SexeEnum.Undefined; subscriber.Confirmed = true; //Mag direct worden goedgekeurd. //verplichte groepen toevoegen BaseCollection <NewsletterGroup> requiredNewsletterGroups = BaseCollection <NewsletterGroup> .Get("FK_Site = '" + Site.ID.ToString() + "' AND IsMandatoryGroup=1"); foreach (NewsletterGroup group in requiredNewsletterGroups) { subscriber.SubscribedGroups.Add(group); } foreach (string key in FormParameters.Keys) { if (key.StartsWith("checkboxNewsletterGroup")) { Guid ID; Guid.TryParse(key.Replace("checkboxNewsletterGroup", ""), out ID); NewsletterGroup group = BaseObject.GetById <NewsletterGroup>(ID); subscriber.SubscribedGroups.Add(group); } } subscriber.Save(); //if (getSetting<bool>("SendVerifiationEmail")) //{ // SendVerificationEmail(subscriber); //} } return(errorMsg); }
public JsonResult DeleteAbbonementFromGroup(string NewsLetterGroupId, string SubscriberId) { Guid NewsletterGroupID = Guid.Parse(NewsLetterGroupId); Guid SubscriberID = Guid.Parse(SubscriberId); NewsletterSubscriber Subscriber = NewsletterSubscriber.GetById <NewsletterSubscriber>(SubscriberID); NewsletterGroup SubscriberGroup = NewsletterGroup.GetById <NewsletterGroup>(NewsletterGroupID); if (Subscriber.SubscribedGroups.Count > 1) { Subscriber.SubscribedGroups.Remove(SubscriberGroup); Subscriber.Save(); } else { Subscriber.Delete(); } return(JsonResult.CreateResult(true, SubscriberGroup.Subscribers)); }
public void SubmitButton_Click(object sender, EventArgs e) { if ((TextboxEmail.Text.Trim() != "" && BitPlate.Domain.Utils.EmailManager.isValidEmailAddress(TextboxEmail.Text.Trim())) || (TextboxEmail.Text.Trim() == "*****@*****.**")) { BaseCollection <NewsletterSubscriber> subscribers = BaseCollection <NewsletterSubscriber> .Get("Name = '" + TextboxEmail.Text.Trim() + "'"); if (subscribers.Count > 0) { //if (this.PanelErrorRegister != null) this.PanelErrorRegister.Visible = true; this.ErrorPanel.Visible = true; this.ErrorLabel.Text = "Dit emailadres is al geabonneerd."; } else { NewsletterSubscriber subscriber = new NewsletterSubscriber(); subscriber.Email = TextboxEmail.Text.Trim(); subscriber.Name = (this.TextboxName != null) ? this.TextboxName.Text : ""; subscriber.NamePrefix = (this.TextboxNamePrefix != null) ? this.TextboxNamePrefix.Text : ""; subscriber.ForeName = (this.TextboxForeName != null) ? this.TextboxForeName.Text : ""; subscriber.CompanyName = (this.TextboxCompany != null) ? this.TextboxCompany.Text : ""; if (RadioSexeMale != null && RadioSexeMale.Checked) { subscriber.Gender = BaseUser.SexeEnum.Male; } if (RadioSexeFemale != null && RadioSexeFemale.Checked) { subscriber.Gender = BaseUser.SexeEnum.Female; } if (RadioSexeCompany != null && RadioSexeCompany.Checked) { subscriber.Gender = BaseUser.SexeEnum.Company; } //simple user link //BaseCollection<SiteUser> Users = BaseCollection<SiteUser>.Get("Email = '" + subscriber.Email + "'"); //if (Users.Count > 0) //{ // subscriber.User = Users[0]; //} subscriber.Save(); foreach (NewsletterGroup group in this.NewsletterGroups.Where(c => c.IsMandatoryGroup)) { subscriber.SubscribedGroups.Add(group); } foreach (ListItem li in this.NewsGroupCheckBoxList.Items) { if (li.Selected) { Guid ID; Guid.TryParse(li.Value, out ID); NewsletterGroup group = BaseObject.GetById <NewsletterGroup>(ID); subscriber.SubscribedGroups.Add(group); } } subscriber.Save(); if (subscriber.SubscribedGroups.Count > 0) { this.TextboxEmail.Visible = false; this.LoadSettings(); //Koppel siteuser met subscriber (als aanwezig) //SiteUser user = BaseObject.GetFirst<SiteUser>("FK_Site = '" + SessionObject.CurrentSite.ID.ToString() + "' AND Email = '" + subscriber.Email + "'"); //if (user != null) //{ // subscriber.User = user; // subscriber.Save(); //} if (this.PanelRegisterFrom != null) { this.PanelRegisterFrom.Visible = false; } if (this.Settings.ContainsKey("SendVerifiationEmail") && (bool)this.Settings["SendVerifiationEmail"]) { NewsletterService.SendVerificationEmail(subscriber); this.LoadModuleObject(); //if (this.PanelVerificationRequest != null) this.PanelVerificationRequest.Visible = true; this.SuccessPanel.Visible = true; this.SuccessLabel.Text = "Wij hebben u een verificatie email verstuurd. In deze email zit een link om uw emailadres te activeren."; } else { //if (this.PanelSuccessRegister != null) this.PanelSuccessRegister.Visible = true; this.SuccessPanel.Visible = true; this.SuccessLabel.Text = "U ontvangt vanaf nu onze nieuwsbrief."; subscriber.Confirmed = true; subscriber.Save(); } this.HandleNavigation(); } else { //if (this.PanelErrorRegister != null) this.PanelErrorRegister.Visible = true; this.ErrorPanel.Visible = true; this.ErrorLabel.Text = "U heeft geen interessegebied(en) geselecteerd."; subscriber.Delete(); } } } else { this.ErrorPanel.Visible = true; this.ErrorLabel.Text = "Dit emailadres is ongeldig"; //if (this.PanelErrorRegister != null) this.PanelErrorRegister.Visible = true; } }
public JsonResult DeleteNewsletterGroup(NewsletterGroup obj) { obj.Delete(); return(JsonResult.CreateResult(true, LoadNewsletterGroupList("Name ASC")));// LoadNewsletterGroupList(); }