public ActionResult Save(EmailJobViewModel input)
        {
            var job = input.EmailJob.EntityId > 0 ? _repository.Find <EmailJob>(input.EmailJob.EntityId) : new EmailJob();

            mapItem(job, input);
            var crudManager  = _saveEntityService.ProcessSave(job);
            var notification = crudManager.Finish();

            return(Json(notification, JsonRequestBehavior.AllowGet));
        }
        public ActionResult Display(ViewModel input)
        {
            var emailTemplate = _repository.Find <EmailJob>(input.EntityId);
            var model         = new EmailJobViewModel
            {
                EmailJob   = emailTemplate,
                AddEditUrl = UrlContext.GetUrlForAction <EmailJobController>(x => x.EmailJob(null)) + "/" + emailTemplate.EntityId
            };

            return(PartialView("EmailJobView", model));
        }
        private void mapItem(EmailJob job, EmailJobViewModel input)
        {
            job.Description   = input.EmailJob.Description;
            job.Frequency     = input.EmailJob.Frequency;
            job.Name          = input.EmailJob.Name;
            job.Sender        = input.EmailJob.Sender;
            job.Status        = input.EmailJob.Status;
            job.Subject       = input.EmailJob.Subject;
            job.EmailTemplate = _repository.Find <EmailTemplate>(input.EmailJob.EmailTemplate.EntityId);

            var listOfSelectedEntities = _selectBoxPickerService.GetListOfSelectedEntities <User>(input.UserSelectBoxPickerDto);

            listOfSelectedEntities.Each(job.AddSubscriber);
        }
        public ActionResult EmailJob(ViewModel input)
        {
            var emailJob = input.EntityId > 0 ? _repository.Find <EmailJob>(input.EntityId) : new EmailJob();

            emailJob.Status = input.EntityId > 0 ? emailJob.Status : Status.InActive.ToString();
            var emailTemplates = _selectListItemService.CreateList <EmailTemplate>(x => x.Name, x => x.EntityId, true);
            var selectorDto    = _selectBoxPickerService.GetPickerDto(emailJob.GetSubscribers().OrderBy(x => x.FullName), x => x.FullName, x => x.EntityId);
            var model          = new EmailJobViewModel
            {
                EmailJob = emailJob,
                UserSelectBoxPickerDto = selectorDto,
                EmailTemplateList      = emailTemplates
            };

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