private void AddTagsToSubscribers() { foreach (DataListItem item in dlTags.Items) { var cb = item.FindControl("cbTag") as IdeaSeed.Web.UI.CheckBox; if (cb.Checked) { tags.Add(Convert.ToInt32(cb.Attributes["tagID"])); } } if (ImportedSubscribers != null && ImportedSubscribers.Count > 0) { foreach (var tag in tags) { foreach (var s in ImportedSubscribers) { var subscriberTag = new CMCore.SubscriberCampaignTag(); subscriberTag.CampaignTagID = tag; subscriberTag.SubscriberID = s.ID; new CMData.SubscriberCampaignTagRepository().Save(subscriberTag); } } } lblMessage.Visible = true; lblMessage.Text = "<b><font color='green'>Tags have been successfully applied.</font></b>"; }
private void SaveNewSubscriber(string email) { var s = new SubscriberRepository().GetByEmail(email); if (s == null) { s = new Subscriber(); s.Email = email; s.DateCreated = DateTime.Now; s.IsActive = true; new SubscriberRepository().Save(s); var t = new CampaignManager.Core.Domain.SubscriberCampaignTag(); t.CampaignTagID = Convert.ToInt16(ConfigurationManager.AppSettings["ALLSUBSCRIBERSTAGID"]); t.SubscriberID = s.ID; new CampaignManager.Data.Repositories.SubscriberCampaignTagRepository().Save(t); } }
protected void ApplyClicked(object o, EventArgs e) { if (SelectedSubscribers != null) { int totalUpdated = 0; //Iterate through selected subscribers foreach (var subscriber in SelectedSubscribers) { //iterate through selected tags foreach (GridDataItem row in rgTags.MasterTableView.Items) { var cb = row.FindControl("cbSelectRow") as IdeaSeed.Web.UI.CheckBox; if (cb.Checked) { int campiagnTagID = Convert.ToInt32(cb.Attributes["campaignTagID"]); if (IsAdd) { if (!CampaignManagerUtils.SubscriberHasTag(subscriber.ID, campiagnTagID)) { var subscriberTags = new CMCore.SubscriberCampaignTag(); subscriberTags.CampaignTagID = campiagnTagID; subscriberTags.SubscriberID = subscriber.ID; new CMData.SubscriberCampaignTagRepository().Save(subscriberTags); } } else { if (CampaignManagerUtils.SubscriberHasTag(subscriber.ID, campiagnTagID)) { var subTags = new CMData.SubscriberCampaignTagRepository().GetByCampaignTagIDSubscriberID(campiagnTagID, subscriber.ID); new CMData.SubscriberCampaignTagRepository().Delete(subTags[0]); } } totalUpdated++; } } } lblMessage.Visible = true; lblMessage.Text = "<b><font color='green'>" + totalUpdated.ToString() + "</font> tags where updated on <font color='red'>" + SelectedSubscribers.Count.ToString() + "</font> subscriber(s).</b>"; } }
protected void SendClicked(object o, EventArgs e) { if (this.SendMessage != null) { this.SendMessage(this, EventArgs.Empty); } if (IsSuccessful) { foreach (DataListItem item in dlTags.Items) { var cb = item.FindControl("cbTag") as IdeaSeed.Web.UI.CheckBox; if (cb.Checked) { tags.Add(Convert.ToInt32(cb.Attributes["tagID"])); } } var s = SaveNewSubscriber(tbEmail.Text); if (s != null) { foreach (var tag in tags) { var subscriberTag = new CMCore.SubscriberCampaignTag(); subscriberTag.CampaignTagID = tag; subscriberTag.SubscriberID = s.ID; new CMData.SubscriberCampaignTagRepository().Save(subscriberTag); } } lblMessage.Text = "<span style='color: #ff0000;'>Thank you for your inquiry! A staff member will contact you shortly.</span>"; lbSubmit.Enabled = false; } else { lblMessage.Text = "<span style='color: #ff0000;'>An unexpected error occurred. Please call us at 209.526.1314 regarding your inquiry</span>"; } }