Beispiel #1
0
        public ActionResult GoToEmailByNumber(QueuedEmailListModel model)
        {
            var queuedEmail = _queuedEmailService.GetQueuedEmailById(model.GoDirectlyToNumber);

            if (queuedEmail == null)
            {
                return(List());
            }

            return(RedirectToAction("Edit", "QueuedEmail", new { id = queuedEmail.Id }));
        }
Beispiel #2
0
        public virtual IActionResult GoToEmailByNumber(QueuedEmailSearchModel model)
        {
            //try to get a queued email with the specified id
            var queuedEmail = _queuedEmailService.GetQueuedEmailById(model.GoDirectlyToNumber);

            if (queuedEmail == null)
            {
                return(List());
            }

            return(RedirectToAction("Edit", "QueuedEmail", new { id = queuedEmail.Id }));
        }
Beispiel #3
0
        public ActionResult Edit(int id)
        {
            var email = _queuedEmailService.GetQueuedEmailById(id);

            if (email == null)
            {
                return(RedirectToAction("List"));
            }
            var model = email.ToModel();

            //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);
            //else model.SendImmediately = true;
            return(View(model));
        }
Beispiel #4
0
        public HttpResponseMessage GetQueuedEmailById(HttpRequestMessage request, int id)
        {
            return(CreateHttpResponse(request, () =>
            {
                HttpResponseMessage response = request.CreateErrorResponse(HttpStatusCode.NotFound, "No items found");
                if (true)
                {
                    var email = _queuedEmailService.GetQueuedEmailById(id);
                    if (email == null)
                    {
                        //No email found with the specified id
                        Url.Route("QueuedEmailSearchModel", null);
                        string uri = Url.Link("QueuedEmailSearchModel", null);
                        response.Headers.Location = new Uri(uri);
                        return response;
                    }

                    var model = email.ToModel();
                    model.PriorityName = email.Priority.GetLocalizedEnum(_localizationService, _baseService.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);
                    }
                    else
                    {
                        model.SendImmediately = true;
                    }

                    response = request.CreateResponse <QueuedEmailVM>(HttpStatusCode.OK, model);
                }
                else
                {
                    response = request.CreateResponse(HttpStatusCode.Unauthorized, "Unauthorized user");
                }
                return response;
            }));
        }
        public virtual async Task <IActionResult> QueuedEmail(
            [FromServices] IWorkContext workContext,
            [FromServices] IQueuedEmailService queuedEmailService,
            string emailId)
        {
            if (!string.IsNullOrEmpty(emailId))
            {
                if (!Request.Headers[HeaderNames.Referer].ToString().ToLowerInvariant().Contains("Admin/QueuedEmail/Edit".ToLowerInvariant()))
                {
                    var eueuedEmail = await queuedEmailService.GetQueuedEmailById(emailId);

                    if (!eueuedEmail.ReadOnUtc.HasValue)
                    {
                        eueuedEmail.ReadOnUtc = DateTime.UtcNow;
                        await queuedEmailService.UpdateQueuedEmail(eueuedEmail);
                    }
                }
            }
            return(File(Convert.FromBase64String("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="), "image/png", "pixel.png"));
        }
Beispiel #6
0
 /// <summary>
 /// Gets a queued email by identifier
 /// </summary>
 /// <param name="queuedEmailId">Queued email identifier</param>
 /// <returns>Queued email</returns>
 public QueuedEmail GetQueuedEmailById(int queuedEmailId)
 {
     return(_queuedEmailService.GetQueuedEmailById(queuedEmailId));
 }