Example #1
0
        public bool SendMail(Schedule schedule)
        {
            #region Valdiation
            if (schedule == null)
            {
                throw new ArgumentException("The schedule passed in cannot be null.");
            }

            ValidateArgument(typeof(String), schedule.ContactName, "The contact name specified cannot be empty or null.");
            ValidateArgument(typeof(String), schedule.Email, "The from address specified cannot be empty or null.");

            #endregion

            var mailMessage = new MailMessage()
            {
                From = new MailAddress(schedule.Email),
                Subject = Properties.Settings.Default.ScheduleSubject,
                IsBodyHtml = true
            };

            string hasFile = "No";
            if (schedule.FileAttachment != null
               && schedule.FileAttachment.ContentLength > 0)
            {
                hasFile = "Yes";
                AddAttachment(schedule.FileAttachment, mailMessage);
            }

            mailMessage.Body = string.Format(@Properties.Settings.Default.ScheduleBody
                                    , schedule.ContactName
                                    , schedule.AttorneyName
                                    , schedule.PhoneNumber
                                    , schedule.Email
                                    , schedule.TurnaroundTime
                                    , schedule.DeliveryComments
                                    , schedule.DepoDateTime
                                    , schedule.EstimatedTime
                                    , schedule.PlaceofTrial
                                    , schedule.Address
                                    , schedule.City
                                    , schedule.State
                                    , schedule.Video
                                    , hasFile);

            mailMessage.To.Add(Properties.Settings.Default.ScheduleToAddress);

            return MailRepository.SendMail(mailMessage);
        }
Example #2
0
        public ActionResult ScheduleDepo(ScheduleViewModel model, HttpPostedFileBase file)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var schedule = new Schedule()
                    {
                        AttorneyName = model.AttorneyName,          //0
                        PhoneNumber = model.PhoneNumber,            //1
                        ContactName = model.ContactName,            //2
                        Email = model.Email,                        //3
                        DepoDateTime = model.DepoDateTime,          //4
                        PlaceofTrial = model.PlaceofTrial,          //5
                        Address = model.Address,                    //6
                        City = model.City,                          //7
                        State = model.StateValue,                   //8
                        Video = model.Video,                        //9
                        EstimatedTime = model.EstimatedTimeValue,   //10
                        TurnaroundTime = model.TurnaroundTimeValue, //11
                        DeliveryComments = model.DeliveryComments   //12
                    };

                    if (file != null)
                    {
                        schedule.FileAttachment = new FileAttachment()
                        {
                            FileStream = file.InputStream,
                            FileName = file.FileName,
                            ContentLength = file.ContentLength
                        };
                    }

                    MailManager.SendMail(schedule);
                }
                catch
                {
                    model.SystemMessage.Message = @"There was a problem scheduling your depo.  Please try again.";
                    model.SystemMessage.MessageType = SystemMessageType.Error;
                    return View(model);
                }
            }

            model = new ScheduleViewModel();
            model.SystemMessage.Message = @"Your request to schedule a deposition has been sent.";
            model.SystemMessage.MessageType = SystemMessageType.Information;
            return View(model);
        }