예제 #1
0
        public ActionResult Edit(QueuedEmailModel model, bool continueEditing)
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageMessageQueue))
            {
                return(AccessDeniedView());
            }

            var email = _queuedEmailService.GetQueuedEmailById(model.Id);

            if (email == null)
            {
                //No email found with the specified id
                return(RedirectToAction("List"));
            }

            if (ModelState.IsValid)
            {
                email = model.ToEntity(email);
                _queuedEmailService.UpdateQueuedEmail(email);

                SuccessNotification(_localizationService.GetResource("Admin.System.QueuedEmails.Updated"));
                return(continueEditing ? RedirectToAction("Edit", new { id = email.Id }) : RedirectToAction("List"));
            }

            //If we got this far, something failed, redisplay form
            model.PriorityName = email.Priority.GetLocalizedEnum(_localizationService, _workContext);
            model.CreatedOn    = _dateTimeHelper.ConvertToUserTime(email.CreatedOnUtc, DateTimeKind.Utc);
            if (email.SentOnUtc.HasValue)
            {
                model.SentOn = _dateTimeHelper.ConvertToUserTime(email.SentOnUtc.Value, DateTimeKind.Utc);
            }
            return(View(model));
        }
예제 #2
0
        public ActionResult Edit(QueuedEmailModel model, bool continueEditing)
        {
            var email = _queuedEmailService.GetQueuedEmailById(model.Id);

            if (email == null)
            {
                return(RedirectToAction("List"));
            }

            if (ModelState.IsValid)
            {
                email = model.ToEntity(email);
                _queuedEmailService.UpdateQueuedEmail(email);

                NotifySuccess(T("Admin.System.QueuedEmails.Updated"));
                return(continueEditing ? RedirectToAction("Edit", new { id = email.Id }) : RedirectToAction("List"));
            }

            model.CreatedOn = _dateTimeHelper.ConvertToUserTime(email.CreatedOnUtc, DateTimeKind.Utc);
            if (email.SentOnUtc.HasValue)
            {
                model.SentOn = _dateTimeHelper.ConvertToUserTime(email.SentOnUtc.Value, DateTimeKind.Utc);
            }

            return(View(model));
        }
예제 #3
0
        public virtual IActionResult Edit(QueuedEmailModel model, bool continueEditing)
        {
            //try to get a queued email with the specified id
            var email = _queuedEmailService.GetQueuedEmailById(model.Id);

            if (email == null)
            {
                return(RedirectToAction("List"));
            }

            if (ModelState.IsValid)
            {
                email = model.ToEntity(email);
                _queuedEmailService.UpdateQueuedEmail(email);

                _notificationService.SuccessNotification("The queued email has been updated successfully.");

                return(continueEditing ? RedirectToAction("Edit", new { id = email.Id }) : RedirectToAction("List"));
            }

            //prepare model
            model = _queuedEmailModelFactory.PrepareQueuedEmailModel(model, email, true);

            //if we got this far, something failed, redisplay form
            return(View(model));
        }
        public ActionResult Edit(QueuedEmailModel model, bool continueEditing)
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageMessageQueue))
                return AccessDeniedView();

            var email = _queuedEmailService.GetQueuedEmailById(model.Id);
            if (email == null)
                return RedirectToAction("List");

            if (ModelState.IsValid)
            {
                email = model.ToEntity(email);
                _queuedEmailService.UpdateQueuedEmail(email);

                NotifySuccess(_localizationService.GetResource("Admin.System.QueuedEmails.Updated"));
                return continueEditing ? RedirectToAction("Edit", new { id = email.Id }) : RedirectToAction("List");
            }

            //If we got this far, something failed, redisplay form
            model.CreatedOn = _dateTimeHelper.ConvertToUserTime(email.CreatedOnUtc, DateTimeKind.Utc);
            if (email.SentOnUtc.HasValue)
                model.SentOn = _dateTimeHelper.ConvertToUserTime(email.SentOnUtc.Value, DateTimeKind.Utc);

            return View(model);
		}
예제 #5
0
        /// <returns>A task that represents the asynchronous operation</returns>
        public virtual async Task <IActionResult> Edit(QueuedEmailModel model, bool continueEditing)
        {
            if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageMessageQueue))
            {
                return(AccessDeniedView());
            }

            //try to get a queued email with the specified id
            var email = await _queuedEmailService.GetQueuedEmailByIdAsync(model.Id);

            if (email == null)
            {
                return(RedirectToAction("List"));
            }

            if (ModelState.IsValid)
            {
                email = model.ToEntity(email);
                email.DontSendBeforeDateUtc = model.SendImmediately || !model.DontSendBeforeDate.HasValue ?
                                              null : (DateTime?)_dateTimeHelper.ConvertToUtcTime(model.DontSendBeforeDate.Value);
                await _queuedEmailService.UpdateQueuedEmailAsync(email);

                _notificationService.SuccessNotification(await _localizationService.GetResourceAsync("Admin.System.QueuedEmails.Updated"));

                return(continueEditing ? RedirectToAction("Edit", new { id = email.Id }) : RedirectToAction("List"));
            }

            //prepare model
            model = await _queuedEmailModelFactory.PrepareQueuedEmailModelAsync(model, email, true);

            //if we got this far, something failed, redisplay form
            return(View(model));
        }
예제 #6
0
        public IActionResult Edit(QueuedEmailModel model, bool continueEditing)
        {
            var email = _queuedEmailService.GetQueuedEmailById(model.Id);

            if (email == null)
            {
                //No email found with the specified id
                return(RedirectToAction("List"));
            }

            if (ModelState.IsValid)
            {
                email = model.ToEntity(email);
                email.DontSendBeforeDateUtc = (model.SendImmediately || !model.DontSendBeforeDate.HasValue) ?
                                              null : (DateTime?)_dateTimeHelper.ConvertToUtcTime(model.DontSendBeforeDate.Value);
                _queuedEmailService.UpdateQueuedEmail(email);

                SuccessNotification(_localizationService.GetResource("Admin.System.QueuedEmails.Updated"));
                return(continueEditing ? RedirectToAction("Edit", new { id = email.Id }) : RedirectToAction("List"));
            }

            //If we got this far, something failed, redisplay form
            model.PriorityName = email.Priority.GetLocalizedEnum(_localizationService, _workContext);
            model.CreatedOn    = _dateTimeHelper.ConvertToUserTime(email.CreatedOnUtc, DateTimeKind.Utc);
            if (email.SentOnUtc.HasValue)
            {
                model.SentOn = _dateTimeHelper.ConvertToUserTime(email.SentOnUtc.Value, DateTimeKind.Utc);
            }
            if (email.DontSendBeforeDateUtc.HasValue)
            {
                model.DontSendBeforeDate = _dateTimeHelper.ConvertToUserTime(email.DontSendBeforeDateUtc.Value, DateTimeKind.Utc);
            }

            return(View(model));
        }
예제 #7
0
        public ActionResult Edit(QueuedEmailModel model, bool continueEditing)
        {
            var email = _queuedEmailService.GetQueuedEmailById(model.Id);

            if (email == null)
            {
                //No email found with the specified id
                return(RedirectToAction("List"));
            }
            if (ModelState.IsValid)
            {
                email = model.ToEntity(email);
                _queuedEmailService.UpdateQueuedEmail(email);
                SuccessNotification("更新邮件成功");
                return(continueEditing ? RedirectToAction("Edit", new { id = email.Id }) : RedirectToAction("List"));
            }
            return(View(model));
        }