Exemple #1
0
        public async Task <IActionResult> MailDetail(int id)
        {
            try
            {
                var mail = await _mailService.GetDetails(id);

                var userId = mail.ToUserId ?? mail.FromUserId;

                var user = await _userService.GetDetails(userId);

                SetPageTitle(user, (mail.ToUserId.HasValue ? "To" : "From"));

                MailDetailViewModel viewModel = new MailDetailViewModel
                {
                    Mail          = mail,
                    Id            = userId,
                    CanRemoveMail = UserHasPermission(Permission.DeleteAnyMail)
                };

                return(View(viewModel));
            }
            catch (GraException gex)
            {
                ShowAlertWarning("Unable to view mail: ", gex);
                return(RedirectToAction("Index"));
            }
        }
Exemple #2
0
        public async Task <IActionResult> Detail(int id)
        {
            try
            {
                var mail = await _mailService.GetDetails(id);

                if (mail.ToUserId == null)
                {
                    if (mail.IsNew)
                    {
                        await _mailService.MCMarkAsReadAsync(id);
                    }
                }
                else
                {
                    mail.Body = CommonMark.CommonMarkConverter.Convert(mail.Body);
                }

                string participantLink = string.Empty;
                string participantName = string.Empty;
                int    from            = mail.ToUserId ?? mail.FromUserId;
                if (from > 0)
                {
                    var participant = await _userService.GetDetails(from);

                    participantLink = Url.Action("Detail", "Participants", new { id = participant.Id });
                    participantName = participant.FirstName;

                    if (!string.IsNullOrWhiteSpace(participant.Username))
                    {
                        participantName += $" ({participant.Username})";
                    }
                }

                MailDetailViewModel viewModel = new MailDetailViewModel()
                {
                    Mail            = mail,
                    SentMessage     = (mail.ToUserId == null ? "from" : "to"),
                    ParticipantLink = participantLink,
                    ParticipantName = participantName,
                    CanDelete       = UserHasPermission(Permission.DeleteAnyMail),
                    CanMail         = UserHasPermission(Permission.MailParticipants)
                };
                return(View(viewModel));
            }
            catch (GraException gex)
            {
                ShowAlertWarning("Unable to view mail: ", gex);
                return(RedirectToAction("Index"));
            }
        }
        public ActionResult Add(MailDetailViewModel mailDetail)
        {
            if (ModelState.IsValid)
            {
                MailDetail newMailDetail = new MailDetail()
                {
                    Poem   = mailDetail.poem,
                    Id     = Guid.NewGuid(),
                    Author = mailDetail.author
                };
                mailDetailService.Insert(newMailDetail);
                return(RedirectToAction("Index"));
            }

            return(View(mailDetail));
        }
Exemple #4
0
        public async Task <IActionResult> Detail(int id)
        {
            try
            {
                var mail = await _mailService.GetDetails(id);

                if (mail.ToUserId == null)
                {
                    if (mail.IsNew)
                    {
                        await _mailService.MCMarkAsReadAsync(id);
                    }
                }
                else
                {
                    mail.Body = CommonMark.CommonMarkConverter.Convert(mail.Body);
                }

                var thread = await _mailService.GetThreadAsync(mail.ThreadId ?? mail.Id);

                var viewModel = new MailDetailViewModel
                {
                    Mail        = mail,
                    MailThread  = thread,
                    SentMessage = (mail.ToUserId == null ? "from" : "to"),
                    CanDelete   = UserHasPermission(Permission.DeleteAnyMail),
                    CanMail     = UserHasPermission(Permission.MailParticipants)
                };

                int from = mail.ToUserId ?? mail.FromUserId;
                if (from > 0)
                {
                    viewModel.User = await _userService.GetDetailsByPermission(from);
                }
                return(View(viewModel));
            }
            catch (GraException gex)
            {
                ShowAlertWarning("Unable to view mail: ", gex);
                return(RedirectToAction("Index"));
            }
        }
Exemple #5
0
        public async Task <ActionResultResponse <MailDetailViewModel> > GetDetail(string tenantId, string id)
        {
            var mailInfo = await _mailRepository.GetInfo(tenantId, id);

            var mailViewModel = new MailDetailViewModel()
            {
                Id               = mailInfo.Id,
                Email            = mailInfo.Email,
                MailTypeId       = mailInfo.MailTypeId,
                Password         = mailInfo.Password,
                Owner            = mailInfo.Owner,
                IsActive         = mailInfo.IsActive,
                ConcurrencyStamp = mailInfo.ConcurrencyStamp
            };

            return(new ActionResultResponse <MailDetailViewModel>
            {
                Code = 1,
                Data = mailViewModel
            });
        }
        public IActionResult Details(int mailId, int mailIdcc)
        {
            ////////// Get Mail details  /////////////
            Mail MailDetails;
            bool mailCC;
            int  mailIdFinal;

            if (mailId == 0)
            {
                MailDetails = _mailDataService.GetSingle(md => md.MailId == mailIdcc);
                mailCC      = true;
                mailIdFinal = mailIdcc;
            }
            else
            {
                MailDetails = _mailDataService.GetSingle(md => md.MailId == mailId);
                mailCC      = false;
                mailIdFinal = mailId;
            }


            MailDetailViewModel vm = new MailDetailViewModel
            {
                MailId  = mailIdFinal,
                From    = MailDetails.SenderName,
                Subject = MailDetails.Subject,
                Body    = MailDetails.Body,
                Fecha   = MailDetails.Fecha,
                mailcc  = mailCC
            };

            MailDetails.Visto = true;
            _mailDataService.Update(MailDetails);

            return(View(vm));
        }