Beispiel #1
0
        public override void SendFlyer(int inventoryId, string emails, string names, int userId)
        {
            IEmail emailWrapper = new Email();

            using (var context = new VincontrolEntities())
            {
                var existingInventory = context.Inventories.FirstOrDefault(i => i.InventoryId == inventoryId);
                var user = context.Users.FirstOrDefault(i => i.UserId == userId);

                var content    = GenerateFlyerStringContent(existingInventory);
                var workStream = GetStreamFromByte(GenerateFlyerByteContent(existingInventory.Dealer.Name, content));

                TrackActivity(emails, names, existingInventory, user);

                if (existingInventory != null)
                {
                    var trim = existingInventory.Vehicle.Trim;
                    if (String.IsNullOrEmpty(trim))
                    {
                        trim = "Base";
                    }
                    var emailContent = EmailTemplateReader.GetFlyerEmailContent();
                    emailContent = emailContent.Replace(EmailTemplateReader.UserFullName, user.Name);
                    emailContent = emailContent.Replace(EmailTemplateReader.DealerName, existingInventory.Dealer.Name);
                    emailContent = emailContent.Replace(EmailTemplateReader.Year, existingInventory.Vehicle.Year.GetValueOrDefault().ToString());
                    emailContent = emailContent.Replace(EmailTemplateReader.Make, existingInventory.Vehicle.Make);
                    emailContent = emailContent.Replace(EmailTemplateReader.Model, existingInventory.Vehicle.Model);
                    emailContent = emailContent.Replace(EmailTemplateReader.Trim, existingInventory.Vehicle.Trim);
                    emailContent = emailContent.Replace(EmailTemplateReader.Phone, user.CellPhone);
                    emailContent = emailContent.Replace(EmailTemplateReader.Address, existingInventory.Dealer.Address + " " + existingInventory.Dealer.City + ", " + existingInventory.Dealer.State + " " + existingInventory.Dealer.ZipCode);
                    emailContent = emailContent.Replace(EmailTemplateReader.LandingPageURL,
                                                        String.Format("http://vinadvisor.com/Inventory/{0}/{1}-{2}-{3}-{4}/{5}",
                                                                      existingInventory.Dealer.Name.ToLower().Replace(" ", ""),
                                                                      existingInventory.Vehicle.Year,
                                                                      existingInventory.Vehicle.Make.Replace(" ", ""),
                                                                      existingInventory.Vehicle.Model.Replace(" ", ""),
                                                                      trim,
                                                                      existingInventory.Vehicle.Vin));

                    emailWrapper.SendEmail(emails.Split(',').ToList(), "You received a flyer from " + existingInventory.Dealer.Name, emailContent, workStream);
                }
            }
        }
Beispiel #2
0
        public async Task <ActionResult> GetEmailTemplate(EmailType emailType)
        {
            var model = await EmailTemplateReader.GetEmailTemplate(emailType);

            return(PartialView("_EmailTemplateUpdatePartial", model));
        }
Beispiel #3
0
        public async Task <ActionResult> EmailTemplate()
        {
            var model = await EmailTemplateReader.GetEmailTemplates();

            return(PartialView("_EmailTemplatePartial", model));
        }