UX: improved user summary page

This commit is contained in:
Régis Hanol 2016-03-30 18:05:16 +02:00
parent b55d3b240b
commit bf579174c1
9 changed files with 219 additions and 131 deletions
app/models

View file

@ -2,7 +2,7 @@
class UserSummary
MAX_FEATURED_BADGES = 10
MAX_BADGES = 6
MAX_TOPICS = 6
alias :read_attribute_for_serialization :send
@ -18,7 +18,7 @@ class UserSummary
.listable_topics
.visible
.where(user: @user)
.order('like_count desc, created_at asc')
.order('like_count DESC, created_at ASC')
.includes(:user, :category)
.limit(MAX_TOPICS)
end
@ -26,26 +26,31 @@ class UserSummary
def replies
Post
.secured(@guardian)
.includes(:user, {topic: :category})
.includes(:user, topic: :category)
.references(:topic)
.merge(Topic.listable_topics.visible.secured(@guardian))
.where(user: @user)
.where('post_number > 1')
.where('topics.archetype <> ?', Archetype.private_message)
.order('posts.like_count desc, posts.created_at asc')
.order('posts.like_count DESC, posts.created_at ASC')
.limit(MAX_TOPICS)
end
def badges
@user.featured_user_badges(MAX_FEATURED_BADGES)
@user.featured_user_badges(MAX_BADGES)
end
def user_stat
@user.user_stat
end
delegate :likes_given, :likes_received, :days_visited,
:posts_read_count, :topic_count, :post_count,
delegate :likes_given,
:likes_received,
:days_visited,
:posts_read_count,
:topic_count,
:post_count,
:time_read,
to: :user_stat
end