Example #1
0
        public async Task <ActionResult> EditMessage(int messageId, int ticketId, string message)
        {
            var adminUserId = User.Identity.GetUserId();
            var result      = await TicketMessageWriter.EditMessage(messageId, adminUserId, message);

            await SupportHubContext.Clients.All.TicketUpdated(ticketId);

            return(Json(result));
        }
Example #2
0
        public async Task <ActionResult> PublishMessage(int messageId, int ticketId)
        {
            var adminUserId = User.Identity.GetUserId();
            var result      = await TicketMessageWriter.PublishMessage(messageId, adminUserId);

            var model = result.Result;

            await SendEmailAsync(EmailTemplateType.SupportNewAdminReply, model.TicketId, model.Email, model.UserId, model.UserName, model.TicketId);

            await SupportHubContext.Clients.All.TicketUpdated(ticketId);

            return(Json(result));
        }
Example #3
0
        public async Task <ActionResult> CreateMessage(int ticketId, string message, bool isAdminMessage = false)
        {
            var adminUserId = User.Identity.GetUserId();

            IWriterResult result;

            if (isAdminMessage)
            {
                result = await TicketMessageWriter.CreateAdminMessage(ticketId, adminUserId, message);
            }
            else
            {
                result = await TicketMessageWriter.CreateMessage(ticketId, adminUserId, message);
            }

            await SupportHubContext.Clients.All.TicketUpdated(ticketId);

            return(Json(result));
        }