public ActionResult QueuedEmailList(DataSourceRequest command, QueuedEmailListModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageMessageQueue)) return AccessDeniedView(); DateTime? startDateValue = (model.SearchStartDate == null) ? null : (DateTime?)_dateTimeHelper.ConvertToUtcTime(model.SearchStartDate.Value, _dateTimeHelper.CurrentTimeZone); DateTime? endDateValue = (model.SearchEndDate == null) ? null :(DateTime?)_dateTimeHelper.ConvertToUtcTime(model.SearchEndDate.Value, _dateTimeHelper.CurrentTimeZone).AddDays(1); var queuedEmails = _queuedEmailService.SearchEmails(model.SearchFromEmail, model.SearchToEmail, startDateValue, endDateValue, model.SearchLoadNotSent, model.SearchMaxSentTries, true, command.Page - 1, command.PageSize); var gridModel = new DataSourceResult { Data = queuedEmails.Select(x => { var m = x.ToModel(); m.CreatedOn = _dateTimeHelper.ConvertToUserTime(x.CreatedOnUtc, DateTimeKind.Utc); if (x.SentOnUtc.HasValue) m.SentOn = _dateTimeHelper.ConvertToUserTime(x.SentOnUtc.Value, DateTimeKind.Utc); return m; }), Total = queuedEmails.TotalCount }; return new JsonResult { Data = gridModel }; }
public ActionResult List() { if (!_permissionService.Authorize(StandardPermissionProvider.ManageMessageQueue)) return AccessDeniedView(); var model = new QueuedEmailListModel(); return View(model); }
public ActionResult GoToEmailByNumber(QueuedEmailListModel model) { var queuedEmail = _queuedEmailService.GetQueuedEmailById(model.GoDirectlyToNumber); if (queuedEmail != null) return RedirectToAction("Edit", "QueuedEmail", new { id = queuedEmail.Id }); else return List(); }
public ActionResult List() { if (!_permissionService.Authorize(StandardPermissionProvider.ManageMessageQueue)) return AccessDeniedView(); var model = new QueuedEmailListModel { //default value SearchMaxSentTries = 10 }; return View(model); }
public ActionResult DeleteSelected(QueuedEmailListModel model, ICollection<int> checkedRecords) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageMessageQueue)) return AccessDeniedView(); if (checkedRecords != null) { foreach (var queuedEmailId in checkedRecords) { var queuedEmail = _queuedEmailService.GetQueuedEmailById(queuedEmailId); _queuedEmailService.DeleteQueuedEmail(queuedEmail); } } //return View(model); //refresh page return List(); }
public ActionResult QueuedEmailList(DataSourceRequest command, QueuedEmailListModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageMessageQueue)) return AccessDeniedView(); DateTime? startDateValue = (model.SearchStartDate == null) ? null : (DateTime?)_dateTimeHelper.ConvertToUtcTime(model.SearchStartDate.Value, _dateTimeHelper.CurrentTimeZone); DateTime? endDateValue = (model.SearchEndDate == null) ? null :(DateTime?)_dateTimeHelper.ConvertToUtcTime(model.SearchEndDate.Value, _dateTimeHelper.CurrentTimeZone).AddDays(1); var queuedEmails = _queuedEmailService.SearchEmails(model.SearchFromEmail, model.SearchToEmail, startDateValue, endDateValue, model.SearchLoadNotSent, false, model.SearchMaxSentTries, true, command.Page - 1, command.PageSize); var gridModel = new DataSourceResult { Data = queuedEmails.Select(x => { var m = x.ToModel(); m.PriorityName = x.Priority.GetLocalizedEnum(_localizationService, _workContext); m.CreatedOn = _dateTimeHelper.ConvertToUserTime(x.CreatedOnUtc, DateTimeKind.Utc); if (x.DontSendBeforeDateUtc.HasValue) m.DontSendBeforeDate = _dateTimeHelper.ConvertToUserTime(x.DontSendBeforeDateUtc.Value, DateTimeKind.Utc); if (x.SentOnUtc.HasValue) m.SentOn = _dateTimeHelper.ConvertToUserTime(x.SentOnUtc.Value, DateTimeKind.Utc); //little hack here: //ensure that email body is not returned //otherwise, we can get the following error if emails have too long body: //"Error during serialization or deserialization using the JSON JavaScriptSerializer. The length of the string exceeds the value set on the maxJsonLength property. " //also it improves performance m.Body = ""; return m; }), Total = queuedEmails.TotalCount }; return new JsonResult { Data = gridModel }; }