public async Task <ActionResult> Mentions(ContentType?type = null, int?page = null) { //ViewBag.PmView = "inbox"; //ViewBag.Title = "Mentions"; var contentType = MessageTypeFlag.CommentMention | MessageTypeFlag.SubmissionMention; if (type.HasValue) { contentType = type.Value == ContentType.Comment ? MessageTypeFlag.CommentMention : MessageTypeFlag.SubmissionMention; ViewBag.Title = type.ToString() + " Mentions"; } var q = new QueryMessages(User, contentType, MessageState.All, true).SetUserContext(User); q.PageNumber = SetPage(page); var result = await q.ExecuteAsync(); var pagedList = new PaginatedList <Message>(result, q.PageNumber, q.PageCount); SetMenuNavigationModel("Mentions", MenuType.UserMessages); return(View("Index", pagedList)); }
public async Task GetUnreadInbox() { var user = TestHelper.SetPrincipal(userName); var q = new QueryMessages(user, MessageTypeFlag.All, MessageState.Unread, false).SetUserContext(user); var m = await q.ExecuteAsync(); Assert.IsNotNull(m, "Assert 1"); var qc = new QueryMessageCounts(user, MessageTypeFlag.All, MessageState.Unread).SetUserContext(user); var mc = await qc.ExecuteAsync(); Assert.IsNotNull(mc, "Assert 2"); }
public async Task <ActionResult> Sent(int?page = null) { ViewBag.PmView = "sent"; ViewBag.Title = "Sent"; var q = new QueryMessages(MessageTypeFlag.Sent, MessageState.All, true); q.PageNumber = SetPage(page); var result = await q.ExecuteAsync(); var pagedList = FakePaging(result, q.PageNumber, q.PageCount); return(View("Index", pagedList)); }
public async Task <ActionResult> SubverseIndex(string subverse, MessageTypeFlag type, MessageState?state = null, int?page = null) { if (!(type == MessageTypeFlag.Private || type == MessageTypeFlag.Sent)) { return(RedirectToAction("Index", "Home")); } if (string.IsNullOrEmpty(subverse)) { return(RedirectToAction("Index", "Home")); } if (!ModeratorPermission.HasPermission(User, subverse, ModeratorAction.ReadMail)) { return(RedirectToAction("Index", "Home")); } ViewBag.Context = new MessageContextViewModel() { ViewerContext = new UserDefinition() { Name = subverse, Type = IdentityType.Subverse } }; var qSub = new QuerySubverse(subverse); var sub = await qSub.ExecuteAsync(); if (sub == null) { return(ErrorView(ErrorViewModel.GetErrorViewModel(ErrorType.SubverseNotFound))); } //ViewBag.PmView = "mod"; //ViewBag.Title = string.Format("v/{0} {1}", sub.Name, (type == MessageTypeFlag.Sent ? "Sent" : "Inbox")); var q = new QueryMessages(sub.Name, IdentityType.Subverse, type, MessageState.All, false).SetUserContext(User); q.PageNumber = SetPage(page); var result = await q.ExecuteAsync(); var pagedList = new PaginatedList <Message>(result, q.PageNumber, q.PageCount); //TODO: This needs to be the Smail Menu, right now it shows user menu var name = type == MessageTypeFlag.Sent ? "Sent" : "Inbox"; ViewBag.Title = name; SetMenuNavigationModel(name, MenuType.Smail, subverse); return(View("Index", pagedList)); }
public async Task <ActionResult> Sent(int?page = null) { //ViewBag.PmView = "sent"; //ViewBag.Title = "Sent"; var q = new QueryMessages(User, MessageTypeFlag.Sent, MessageState.All, true).SetUserContext(User); q.PageNumber = SetPage(page); var result = await q.ExecuteAsync(); var pagedList = new PaginatedList <Message>(result, q.PageNumber, q.PageCount); SetMenuNavigationModel("Sent", MenuType.UserMessages); ViewBag.Title = "Sent"; return(View("Index", pagedList)); }
public async Task <ActionResult> SubverseIndex(string subverse, MessageTypeFlag type, MessageState?state = null, int?page = null) { if (!(type == MessageTypeFlag.Private || type == MessageTypeFlag.Sent)) { return(RedirectToAction("Index", "Home")); } if (string.IsNullOrEmpty(subverse)) { return(RedirectToAction("Index", "Home")); } if (!ModeratorPermission.HasPermission(User.Identity.Name, subverse, ModeratorAction.ReadMail)) { return(RedirectToAction("Index", "Home")); } ViewBag.Context = new MessageContextViewModel() { ViewerContext = new UserDefinition() { Name = subverse, Type = IdentityType.Subverse } }; var qSub = new QuerySubverse(subverse); var sub = await qSub.ExecuteAsync(); ViewBag.PmView = "mod"; ViewBag.Title = string.Format("v/{0} {1}", sub.Name, (type == MessageTypeFlag.Sent ? "Sent" : "Inbox")); var q = new QueryMessages(sub.Name, IdentityType.Subverse, type, MessageState.All, false); q.PageNumber = SetPage(page); var result = await q.ExecuteAsync(); var pagedList = FakePaging(result, q.PageNumber, q.PageCount); return(View("Index", pagedList)); }
public async Task <ActionResult> Mentions(ContentType?type = null, int?page = null) { ViewBag.PmView = "inbox"; ViewBag.Title = "Mentions"; var contentType = MessageTypeFlag.CommentMention | MessageTypeFlag.SubmissionMention; if (type.HasValue) { contentType = type.Value == ContentType.Comment ? MessageTypeFlag.CommentMention : MessageTypeFlag.SubmissionMention; ViewBag.Title = type.ToString() + " Mentions"; } var q = new QueryMessages(contentType, MessageState.All, true); q.PageNumber = SetPage(page); var result = await q.ExecuteAsync(); var pagedList = FakePaging(result, q.PageNumber, q.PageCount); return(View("Index", pagedList)); }
public override void ClassInitialize() { var user2 = "TestUser01"; //create user inbox Message message = null; var user = TestHelper.SetPrincipal(userName); var msg = "1"; var cmd = new SendMessageCommand(new Domain.Models.SendMessage() { Subject = "Chain", Recipient = "TestUser01", Message = msg }).SetUserContext(user); var response = cmd.Execute().Result; VoatAssert.IsValid(response); message = response.Response; messages.Add(message); user = TestHelper.SetPrincipal(user2); //Find message var query = new QueryMessages(user, MessageTypeFlag.Private, MessageState.Unread, false).SetUserContext(user); var inbox = query.Execute(); VoatAssert.IsValid(inbox); message = inbox.FirstOrDefault(x => x.Sender == USERNAMES.User50CCP && x.Content == msg); Assert.IsNotNull(message, "Can not find message in recipient inbox 1"); msg = "1.1"; var cmdReply = new SendMessageReplyCommand(message.ID, msg).SetUserContext(user); var responseReply = cmdReply.Execute().Result; VoatAssert.IsValid(responseReply); messages.Add(message); user = TestHelper.SetPrincipal(userName); //Find message query = new QueryMessages(user, MessageTypeFlag.Private, MessageState.Unread, false).SetUserContext(user); inbox = query.Execute(); VoatAssert.IsValid(inbox); message = inbox.FirstOrDefault(x => x.Sender == user2 && x.Content == msg); Assert.IsNotNull(message, "Can not find message in recipient inbox 2"); msg = "1.1.1"; cmdReply = new SendMessageReplyCommand(message.ID, msg).SetUserContext(user); responseReply = cmdReply.Execute().Result; VoatAssert.IsValid(responseReply); message = responseReply.Response; messages.Add(message); user = TestHelper.SetPrincipal(user2); //Find message query = new QueryMessages(user, MessageTypeFlag.Private, MessageState.Unread, false).SetUserContext(user); inbox = query.Execute(); VoatAssert.IsValid(inbox); message = inbox.FirstOrDefault(x => x.Sender == USERNAMES.User50CCP && x.Content == msg); Assert.IsNotNull(message, "Can not find message in recipient inbox 3"); msg = "1.1.1.1"; cmdReply = new SendMessageReplyCommand(message.ID, msg).SetUserContext(user); responseReply = cmdReply.Execute().Result; VoatAssert.IsValid(responseReply); message = responseReply.Response; messages.Add(message); }