From 7b90566b0576484b52f3d25b6d057d1a9db0daa4 Mon Sep 17 00:00:00 2001 From: Penar Musaraj Date: Mon, 5 Jun 2023 09:54:25 -0400 Subject: [PATCH] FIX: Take `enable_names` setting into account (#240) --- plugin.rb | 8 +++++++- spec/requests/topics_controller_spec.rb | 6 ++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/plugin.rb b/plugin.rb index e92ac88..2018d09 100644 --- a/plugin.rb +++ b/plugin.rb @@ -464,7 +464,13 @@ SQL nil end - postInfo[3] = SiteSetting.display_name_on_posts ? postInfo[3] : nil + postInfo[3] = ( + if SiteSetting.enable_names && SiteSetting.display_name_on_posts + postInfo[3] + else + nil + end + ) postInfo end end diff --git a/spec/requests/topics_controller_spec.rb b/spec/requests/topics_controller_spec.rb index 71f8613..e2c1186 100644 --- a/spec/requests/topics_controller_spec.rb +++ b/spec/requests/topics_controller_spec.rb @@ -76,6 +76,12 @@ RSpec.describe TopicsController do expect(response.parsed_body["accepted_answer"]["name"]).to eq(p2.user.name) expect(response.parsed_body["accepted_answer"]["username"]).to eq(p2.user.username) + + # enable_names is default ON, this ensures disabling it also disables names here + SiteSetting.enable_names = false + get "/t/#{topic.slug}/#{topic.id}.json" + expect(response.parsed_body["accepted_answer"]["name"]).to eq(nil) + expect(response.parsed_body["accepted_answer"]["username"]).to eq(p2.user.username) end it "should not include user name when site setting is disabled" do