public void Send(Quote q, byte[] filecontent) { MembershipHelperUser mhu = MembershipHelper.GetUser(q.TimeStamp.CreatedBy); IList <string[]> lstMails = new List <string[]>(); if (q.QuoteNotifications.Count > 0) { foreach (IQuoteNotification quoteNotification in q.QuoteNotifications) { string[] _contact = new string[2]; _contact[0] = quoteNotification.Name; _contact[1] = quoteNotification.Email; lstMails.Add(_contact); } } else { string name = q.Distributor.Contact; string email = q.Distributor.Email; if (string.IsNullOrEmpty(email)) { email = q.Distributor.AlternativeEmail; } string[] _contact = new string[2]; _contact[0] = name; _contact[1] = email; lstMails.Add(_contact); } if (mhu != null) { string[] _contact = new string[2]; _contact[0] = mhu.FullName; _contact[1] = mhu.Email; lstMails.Add(_contact); } if (ControllerManager.Lookup.List(LookupType.AdministratorReceiveMail)[0].Description == "True") { IList <UserMember> umlst = MembershipManager.GetAdministrators(); foreach (UserMember um in umlst) { string[] _contact = new string[2]; _contact[0] = um.UserName; _contact[1] = um.Email; lstMails.Add(_contact); } } string title = "Cotizaciones"; string subject = "Cotización para " + q.Distributor.Name; string fileName = "Cotizacion" + q.Number + ".pdf"; WebMailing w = new WebMailing(); foreach (string[] currentEmail in lstMails) { string body = File.ReadAllText(Path.Combine(HttpContext.Current.Server.MapPath(Config.MailTemplatePath), "quote.htm")); body = body.Replace("[QUOTE_CONTACT]", currentEmail[0]); body = body.Replace("[QUOTE_BODY]", Resource.Business.GetString("QuoteBody")); body = body.Replace("[QUOTE_OBSERVATION]", q.Observations); body = body.Replace("[USUARIO]", mhu.FullName); body = body.Replace("[EMAIL]", mhu.Email); w.SendMail(currentEmail[1], title, subject, body, false, false, mhu.Email, mhu.FullName, fileName, filecontent); } q.Status = QuoteStatus.Sent; if (q.SentDate == null) { q.SentDate = DateTime.Now; } repository.Save(q); repository.CommitChange(); }