private void MapCampaignDonor(DonationAdminModel model, CampaignDonor campaignDonor) { campaignDonor.Amount = model.Amount; campaignDonor.FirstName = model.FirstName; campaignDonor.LastName = model.LastName; campaignDonor.Email = model.Email; campaignDonor.PrimaryPhone = model.PrimaryPhone; campaignDonor.AddressLine1 = model.AddressLine1; campaignDonor.AddressLine2 = model.AddressLine2; campaignDonor.City = model.City; campaignDonor.State = model.State; campaignDonor.ZipCode = model.ZipCode; campaignDonor.IsAnonymous = model.IsAnonymous; campaignDonor.Approved = model.IsApproved; if (campaignDonor.CampaignID != model.CampaignID) { var oldCampaign = campaignDonor.Campaign; var newCampaign = campaignRepository.GetCampaignByID(model.CampaignID); if (newCampaign == null) { return; } oldCampaign.CampaignDonors.Remove(campaignDonor); newCampaign.CampaignDonors.Add(campaignDonor); } }
private DonationDetailsModel SendNotifications(Campaign campaign, CampaignDonor donation, Payment payment) { // Send receipt of payment to user var mailerModel = Mapper.Map<CampaignDonor, DonationDetailsModel>(donation); mailerModel.Title = campaign.Title; mailerModel.UrlSlug = campaign.UrlSlug; mailerModel.PaymentType = payment.PaymentType == PaymentType.CC ? "Credit/Debit Card" : "Electronic Check"; mailerModel.TransactionType = payment.TransactionType; var organization = campaign.Organization; var bcc = organization.GetSetting(OrgSettingKeys.DONATION_NOTIFICATION_ADDRESS); if (bcc != null) { mailerModel.DonorNotificationEmail = bcc.Value; } donateMailer.UserDonation(mailerModel).SendAsync(); // Send notification to campaign owner mailerModel.Email = campaign.UserProfile.Email; donateMailer.CampaignDonation(mailerModel).SendAsync(); return mailerModel; }
private static void UpdateUserProfile(UserProfile userProfile, CampaignDonor donation) { userProfile.AddressLine1 = donation.AddressLine1; userProfile.AddressLine2 = donation.AddressLine2; userProfile.City = donation.City; userProfile.State = donation.State; userProfile.PrimaryPhone = donation.PrimaryPhone; userProfile.ZipCode = donation.ZipCode; }
private DonationAdminModel MapAdminModel(CampaignDonor campaignDonor) { var model = Mapper.Map<CampaignDonor, DonationAdminModel>(campaignDonor); var campaign = campaignDonor.Campaign; model.CampaignID = campaign.CampaignID; model.CampaignTitle = campaign.Title; model.UserProfileID = campaignDonor.UserProfileID; return model; }
public ActionResult Create(DonationAdminModel model) { if (!ModelState.IsValid) { TempData["ModelErrors"] = FindModelErrors(); TempData["DonationAdminModel"] = model; return RedirectToAction("New"); } CampaignDonor campaignDonor; using (new UnitOfWorkScope()) { campaignDonor = new CampaignDonor { Amount = model.Amount, FirstName = model.FirstName, LastName = model.LastName, AddressLine1 = model.AddressLine1, AddressLine2 = model.AddressLine2, City = model.City, State = model.State, ZipCode = model.ZipCode, Email = model.Email, PrimaryPhone = model.PrimaryPhone, Approved = model.IsApproved, IsAnonymous = model.IsAnonymous }; var campaign = campaignRepository.GetCampaignByID(model.CampaignID); campaign.CampaignDonors.Add(campaignDonor); var userProfile = userProfileRepository.FindUserProfileByEmail(model.Email).FirstOrDefault(); if (userProfile != null) { userProfile.CampaignDonors.Add(campaignDonor); } campaignDonorRepository.Save(); } TempData["UserFeedback"] = string.Format("{0} {1}'s donation of {2} has been created successfully.", campaignDonor.FirstName, campaignDonor.LastName, campaignDonor.Amount); return RedirectToAction("Admin", new { id = campaignDonor.CampaignDonorID }); }
private static void PopulateDisplayName(CampaignDonor donation) { if (donation.IsAnonymous && string.IsNullOrEmpty(donation.DisplayName)) { donation.DisplayName = "Anonymous"; } else if (!donation.IsAnonymous && string.IsNullOrEmpty(donation.DisplayName)) { donation.DisplayName = string.Format("{0} {1}", donation.FirstName, donation.LastName); } }
public void Add(CampaignDonor campaignDonor) { ObjectContext.CampaignDonors.Add(campaignDonor); }
public void Delete(CampaignDonor campaignDonor) { ObjectContext.CampaignDonors.Remove(campaignDonor); }
private void ResendNotification(CampaignDonor donation) { var mailerModel = Mapper.Map<CampaignDonor, DonationDetailsModel>(donation); var campaign = donation.Campaign; mailerModel.Title = campaign.Title; mailerModel.UrlSlug = campaign.UrlSlug; mailerModel.TransactionType = TransactionType.OneTime; donateMailer.UserDonation(mailerModel).SendAsync(); }
private void Arrange() { organization = EntityHelpers.GetValidOrganization(); organization.UserProfiles = new List<UserProfile>(); organization.CauseTemplates = new List<CauseTemplate>(); organization.Campaigns = new List<Campaign>(); organizationRepository.Add(organization); organizationRepository.Save(); userProfile = EntityHelpers.GetValidUserProfile(); userProfile.Users = new List<User>(); userProfile.Campaigns = new List<Campaign>(); userProfile.UserProfileService = new UserProfileService(new UserProfileRepository()); organization.UserProfiles.Add(userProfile); organizationRepository.Save(); user = EntityHelpers.GetValidUser(); userProfile.Users.Add(user); organizationRepository.Save(); causeTemplate = EntityHelpers.GetValidCauseTemplate(); causeTemplate.Campaigns = new List<Campaign>(); organization.CauseTemplates.Add(causeTemplate); organizationRepository.Save(); campaign = EntityHelpers.GetValidCampaign(); campaign.CampaignService = new CampaignService(new CampaignRepository()); organization.Campaigns.Add(campaign); userProfile.Campaigns.Add(campaign); causeTemplate.Campaigns.Add(campaign); campaignRepository.Save(); campaignDonor = EntityHelpers.GetValidCampaignDonor(); campaign.CampaignDonors = new List<CampaignDonor>(); campaign.CampaignDonors.Add(campaignDonor); userProfile.CampaignDonors = new List<CampaignDonor>(); userProfile.CampaignDonors.Add(campaignDonor); campaignDonorRepository.Save(); }
public void Delete(CampaignDonor campaignDonor) { donors.Remove(campaignDonor); }
public void Add(CampaignDonor campaignDonor) { campaignDonor.CampaignDonorID = donors.Count + 1; donors.Add(campaignDonor); }
public void AddDonor(CampaignDonor donor) { ObjectContext.CampaignDonors.Add(donor); }