UX: Don't highlight the latest poster in the topic list if there is only
one avatar shown.
This commit is contained in:
parent
2b5feda625
commit
6ef85ea014
|
@ -16,7 +16,7 @@ class TopicPostersSummary
|
||||||
TopicPoster.new.tap do |topic_poster|
|
TopicPoster.new.tap do |topic_poster|
|
||||||
topic_poster.user = user
|
topic_poster.user = user
|
||||||
topic_poster.description = descriptions_for(user)
|
topic_poster.description = descriptions_for(user)
|
||||||
topic_poster.extras = 'latest' if is_latest_poster?(user)
|
topic_poster.extras = 'latest' if include_latest_class?(user)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -29,6 +29,10 @@ class TopicPostersSummary
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def include_latest_class?(user)
|
||||||
|
topic.last_post_user_id == user.id && user_ids.uniq.size > 1
|
||||||
|
end
|
||||||
|
|
||||||
def descriptions_for(user)
|
def descriptions_for(user)
|
||||||
descriptions_by_id[user.id].join ', '
|
descriptions_by_id[user.id].join ', '
|
||||||
end
|
end
|
||||||
|
@ -56,10 +60,6 @@ class TopicPostersSummary
|
||||||
topic.user_id == topic.last_post_user_id
|
topic.user_id == topic.last_post_user_id
|
||||||
end
|
end
|
||||||
|
|
||||||
def is_latest_poster?(user)
|
|
||||||
topic.last_post_user_id == user.id
|
|
||||||
end
|
|
||||||
|
|
||||||
def sorted_top_posters
|
def sorted_top_posters
|
||||||
shuffle_last_poster_to_back_in top_posters
|
shuffle_last_poster_to_back_in top_posters
|
||||||
end
|
end
|
||||||
|
|
|
@ -27,7 +27,6 @@ describe TopicPostersSummary do
|
||||||
|
|
||||||
summary.first.tap do |topic_poster|
|
summary.first.tap do |topic_poster|
|
||||||
expect(topic_poster.user).to eq topic_creator
|
expect(topic_poster.user).to eq topic_creator
|
||||||
expect(topic_poster.extras).to eq 'latest'
|
|
||||||
expect(topic_poster.description).to eq(
|
expect(topic_poster.description).to eq(
|
||||||
"#{I18n.t(:original_poster)}, #{I18n.t(:most_recent_poster)}"
|
"#{I18n.t(:original_poster)}, #{I18n.t(:most_recent_poster)}"
|
||||||
)
|
)
|
||||||
|
@ -65,6 +64,8 @@ describe TopicPostersSummary do
|
||||||
featured_user1, featured_user2, featured_user3,
|
featured_user1, featured_user2, featured_user3,
|
||||||
last_poster
|
last_poster
|
||||||
])
|
])
|
||||||
|
# If more than one user, attach the latest class
|
||||||
|
expect(summary.last.extras).to eq 'latest'
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue