UX: Show configurable length excerpt when quoting the solution

This commit is contained in:
David Taylor 2017-03-08 15:21:41 +00:00
parent 4aaeee8aec
commit e20104919a
4 changed files with 16 additions and 7 deletions

View File

@ -47,7 +47,8 @@ function acceptPost(post) {
topic.set('accepted_answer', {
username: post.get('username'),
post_number: post.get('post_number')
post_number: post.get('post_number'),
excerpt: post.get('cooked'),
});
ajax("/solution/accept", {
@ -160,7 +161,9 @@ function initializeWithApi(api) {
<div class='title'>
${topic.get('acceptedAnswerHtml')} <div class="quote-controls"><\/div>
</div>
<blockquote></blockquote>
<blockquote>
${topic.get('accepted_answer').excerpt}
</blockquote>
</aside>`
var cooked = new PostCooked({cooked:rawhtml});

View File

@ -4,6 +4,7 @@ en:
allow_solved_on_all_topics: "Allow users to select solutions on all topics (by default you control this by editing categories)"
accept_all_solutions_trust_level: "Minimum trust level required to accept solutions on any topic (even when not OP)"
empty_box_on_unsolved: "Display an empty box next to unsolved topics"
solved_quote_length: "Number of characters to quote when displaying the solution under the first post"
reports:
accepted_solutions:
title: "Accepted solutions"

View File

@ -11,3 +11,7 @@ plugins:
empty_box_on_unsolved:
default: false
client: true
solved_quote_length:
default: 100
client: false

View File

@ -224,17 +224,18 @@ SQL
{
post_number: info[0],
username: info[1],
excerpt: info[2]
}
end
end
def accepted_answer_post_info
# TODO: we may already have it in the stream ... so bypass query here
post = Post.where(id: accepted_answer_post_id, topic_id: object.topic.id).joins(:user).first
excerpt = post.excerpt
return [post.post_number, post.username, post.excerpt(SiteSetting.solved_quote_length)]
Post.where(id: accepted_answer_post_id, topic_id: object.topic.id)
.joins(:user)
.pluck('post_number, username')
.first
end
def accepted_answer_post_id