private Task Reply() { this.ReplyMode = ReplyMode.Active; this.ReplyTitle = ThreadOrganizer.GetReplyTitle(this.Model.Title); this.ReplyMessage = ThreadOrganizer.GetReplyMessage(this.Model); return(Task.CompletedTask); }
protected override void OnModelChanged() { if (String.IsNullOrWhiteSpace(this.Model?.Excerpt)) { this.Excerpt = String.Empty; } else { var markup = RsdnMarkupReference.Current.Parse(this.Model.Excerpt); if (this.Model is PostActivityModel) { this.Topic = PostTopic.Post; } else if (this.Model is ReplyActivityModel) { this.Topic = PostTopic.Reply; } else { this.Topic = ThreadOrganizer.DeterminePostTopic(markup, this.Model.Title); } this.Excerpt = String.Join(Environment.NewLine, markup.ToString() .Split(Environment.NewLine.ToArray(), StringSplitOptions.RemoveEmptyEntries) .Where(line => String.IsNullOrWhiteSpace(line) == false) .Take(2)); } base.OnModelChanged(); }
private void ChangeForumSymbol() { var symbols = ThreadOrganizer.UnknownForumSymbols; var newValue = this.ForumId; if (newValue != null) { if (newValue is int) { var newId = (int)newValue; symbols = ThreadOrganizer.GetForumSymbols(newId); } } if (this.logoPresenter != null) { this.logoPresenter.Content = this.Width < 48d ? symbols.ShortSymbol : symbols.MediumSymbol; } }
public IEnumerable <ThreadModel> Run(ForumThreadsQuery query) { this.eventDispatcher.PublishAsync(new ForumRequestedEvent(query.ForumId)); return(ThreadOrganizer.Organize(this.forumGateway.GetThreads(query.ForumId), this.forumGateway.GetForum(query.ForumId))); }
public IEnumerable <PostModel> Run(ThreadPostsQuery query) { return(ThreadOrganizer.Organize(this.postGateway.GetThreadPosts(query.ThreadId), this.postGateway.GetThread(query.ThreadId))); }