mirror of
https://github.com/discourse/discourse.git
synced 2024-11-25 09:42:07 +08:00
This reverts commit c7e3d27624
due to
test failures. This is temporary.
This commit is contained in:
parent
d5f527ee37
commit
f2cf5434f3
|
@ -2442,7 +2442,6 @@ en:
|
||||||
tag_style: "Visual style for tag badges."
|
tag_style: "Visual style for tag badges."
|
||||||
pm_tags_allowed_for_groups: "Allow members of included group(s) to tag any personal message"
|
pm_tags_allowed_for_groups: "Allow members of included group(s) to tag any personal message"
|
||||||
min_trust_level_to_tag_topics: "Minimum trust level required to tag topics"
|
min_trust_level_to_tag_topics: "Minimum trust level required to tag topics"
|
||||||
tag_topic_allowed_groups: "Groups that are allowed to tag topics."
|
|
||||||
suppress_overlapping_tags_in_list: "If tags match exact words in topic titles, don't show the tag"
|
suppress_overlapping_tags_in_list: "If tags match exact words in topic titles, don't show the tag"
|
||||||
remove_muted_tags_from_latest: "Don't show topics tagged only with muted tags in the latest topic list."
|
remove_muted_tags_from_latest: "Don't show topics tagged only with muted tags in the latest topic list."
|
||||||
force_lowercase_tags: "Force all new tags to be entirely lowercase."
|
force_lowercase_tags: "Force all new tags to be entirely lowercase."
|
||||||
|
@ -2585,7 +2584,6 @@ en:
|
||||||
create_tag_allowed_groups: "min_trust_to_create_tag"
|
create_tag_allowed_groups: "min_trust_to_create_tag"
|
||||||
send_email_messages_allowed_groups: "min_trust_to_send_email_messages"
|
send_email_messages_allowed_groups: "min_trust_to_send_email_messages"
|
||||||
skip_review_media_groups: "review_media_unless_trust_level"
|
skip_review_media_groups: "review_media_unless_trust_level"
|
||||||
tag_topic_allowed_groups: "min_trust_level_to_tag_topics"
|
|
||||||
|
|
||||||
placeholder:
|
placeholder:
|
||||||
discourse_connect_provider_secrets:
|
discourse_connect_provider_secrets:
|
||||||
|
|
|
@ -3031,14 +3031,6 @@ tags:
|
||||||
default: "0"
|
default: "0"
|
||||||
enum: "TrustLevelAndStaffSetting"
|
enum: "TrustLevelAndStaffSetting"
|
||||||
client: true
|
client: true
|
||||||
hidden: true
|
|
||||||
tag_topic_allowed_groups:
|
|
||||||
default: "10"
|
|
||||||
type: group_list
|
|
||||||
allow_any: false
|
|
||||||
refresh: true
|
|
||||||
client: true
|
|
||||||
validator: "AtLeastOneGroupValidator"
|
|
||||||
max_tag_search_results:
|
max_tag_search_results:
|
||||||
client: true
|
client: true
|
||||||
default: 5
|
default: 5
|
||||||
|
|
|
@ -1,27 +0,0 @@
|
||||||
# frozen_string_literal: true
|
|
||||||
|
|
||||||
class FillTagTopicAllowedGroupsBasedOnDeprecatedSettings < ActiveRecord::Migration[7.0]
|
|
||||||
def up
|
|
||||||
configured_trust_level =
|
|
||||||
DB.query_single(
|
|
||||||
"SELECT value FROM site_settings WHERE name = 'min_trust_level_to_tag_topics' LIMIT 1",
|
|
||||||
).first
|
|
||||||
|
|
||||||
# Default for old setting is TL0, we only need to do anything if it's been changed in the DB.
|
|
||||||
if configured_trust_level.present?
|
|
||||||
# Matches Group::AUTO_GROUPS to the trust levels.
|
|
||||||
corresponding_group = "1#{configured_trust_level}"
|
|
||||||
|
|
||||||
# Data_type 20 is group_list.
|
|
||||||
DB.exec(
|
|
||||||
"INSERT INTO site_settings(name, value, data_type, created_at, updated_at)
|
|
||||||
VALUES('min_trust_level_to_tag_topics', :setting, '20', NOW(), NOW())",
|
|
||||||
setting: corresponding_group,
|
|
||||||
)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def down
|
|
||||||
raise ActiveRecord::IrreversibleMigration
|
|
||||||
end
|
|
||||||
end
|
|
|
@ -15,7 +15,8 @@ module TagGuardian
|
||||||
end
|
end
|
||||||
|
|
||||||
def can_tag_topics?
|
def can_tag_topics?
|
||||||
SiteSetting.tagging_enabled && @user.in_any_groups?(SiteSetting.tag_topic_allowed_groups_map)
|
SiteSetting.tagging_enabled &&
|
||||||
|
@user.has_trust_level_or_staff?(SiteSetting.min_trust_level_to_tag_topics)
|
||||||
end
|
end
|
||||||
|
|
||||||
def can_tag_pms?
|
def can_tag_pms?
|
||||||
|
|
|
@ -37,7 +37,6 @@ module SiteSettings::DeprecatedSettings
|
||||||
["min_trust_to_create_tag", "create_tag_allowed_groups", false, "3.3"],
|
["min_trust_to_create_tag", "create_tag_allowed_groups", false, "3.3"],
|
||||||
["min_trust_to_send_email_messages", "send_email_messages_allowed_groups", false, "3.3"],
|
["min_trust_to_send_email_messages", "send_email_messages_allowed_groups", false, "3.3"],
|
||||||
["review_media_unless_trust_level", "skip_review_media_groups", false, "3.3"],
|
["review_media_unless_trust_level", "skip_review_media_groups", false, "3.3"],
|
||||||
["min_trust_level_to_tag_topics", "tag_topic_allowed_groups", false, "3.3"],
|
|
||||||
]
|
]
|
||||||
|
|
||||||
OVERRIDE_TL_GROUP_SETTINGS = %w[
|
OVERRIDE_TL_GROUP_SETTINGS = %w[
|
||||||
|
@ -59,7 +58,6 @@ module SiteSettings::DeprecatedSettings
|
||||||
min_trust_to_create_tag
|
min_trust_to_create_tag
|
||||||
min_trust_to_send_email_messages
|
min_trust_to_send_email_messages
|
||||||
review_media_unless_trust_level
|
review_media_unless_trust_level
|
||||||
min_trust_level_to_tag_topics
|
|
||||||
]
|
]
|
||||||
|
|
||||||
def group_to_tl(old_setting, new_setting)
|
def group_to_tl(old_setting, new_setting)
|
||||||
|
|
|
@ -7,7 +7,7 @@ describe Chat::ChannelArchiveService do
|
||||||
end
|
end
|
||||||
|
|
||||||
fab!(:channel) { Fabricate(:category_channel) }
|
fab!(:channel) { Fabricate(:category_channel) }
|
||||||
fab!(:user) { Fabricate(:user, admin: true, refresh_auto_groups: true) }
|
fab!(:user) { Fabricate(:user, admin: true) }
|
||||||
fab!(:category)
|
fab!(:category)
|
||||||
|
|
||||||
let(:topic_params) { { topic_title: "This will be a new topic", category_id: category.id } }
|
let(:topic_params) { { topic_title: "This will be a new topic", category_id: category.id } }
|
||||||
|
|
|
@ -18,7 +18,7 @@ RSpec.describe "category tag restrictions" do
|
||||||
before do
|
before do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
end
|
end
|
||||||
|
|
||||||
context "with tags restricted to one category" do
|
context "with tags restricted to one category" do
|
||||||
|
@ -770,7 +770,7 @@ RSpec.describe "tag topic counts per category" do
|
||||||
before do
|
before do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
end
|
end
|
||||||
|
|
||||||
it "counts when a topic is created with tags" do
|
it "counts when a topic is created with tags" do
|
||||||
|
@ -782,10 +782,8 @@ RSpec.describe "tag topic counts per category" do
|
||||||
end
|
end
|
||||||
|
|
||||||
it "counts when tag is added to an existing topic" do
|
it "counts when tag is added to an existing topic" do
|
||||||
user = Fabricate(:user, refresh_auto_groups: true)
|
topic = Fabricate(:topic, category: category)
|
||||||
topic = Fabricate(:topic, user: user, category: category)
|
post = Fabricate(:post, user: topic.user, topic: topic)
|
||||||
post = Fabricate(:post, user: user, topic: topic)
|
|
||||||
|
|
||||||
expect(CategoryTagStat.where(category: category).count).to eq(0)
|
expect(CategoryTagStat.where(category: category).count).to eq(0)
|
||||||
expect {
|
expect {
|
||||||
PostRevisor.new(post).revise!(topic.user, raw: post.raw, tags: [tag1.name, tag2.name])
|
PostRevisor.new(post).revise!(topic.user, raw: post.raw, tags: [tag1.name, tag2.name])
|
||||||
|
|
|
@ -14,7 +14,7 @@ RSpec.describe Jobs::ExportUserArchive do
|
||||||
end
|
end
|
||||||
let(:component) { raise "component not set" }
|
let(:component) { raise "component not set" }
|
||||||
|
|
||||||
fab!(:admin) { Fabricate(:admin, refresh_auto_groups: true) }
|
fab!(:admin)
|
||||||
fab!(:category) { Fabricate(:category_with_definition, name: "User Archive Category") }
|
fab!(:category) { Fabricate(:category_with_definition, name: "User Archive Category") }
|
||||||
fab!(:subcategory) { Fabricate(:category_with_definition, parent_category_id: category.id) }
|
fab!(:subcategory) { Fabricate(:category_with_definition, parent_category_id: category.id) }
|
||||||
fab!(:topic) { Fabricate(:topic, category: category) }
|
fab!(:topic) { Fabricate(:topic, category: category) }
|
||||||
|
|
|
@ -7,7 +7,7 @@ require "discourse_tagging"
|
||||||
|
|
||||||
RSpec.describe DiscourseTagging do
|
RSpec.describe DiscourseTagging do
|
||||||
fab!(:admin) { Fabricate(:admin, refresh_auto_groups: true) }
|
fab!(:admin) { Fabricate(:admin, refresh_auto_groups: true) }
|
||||||
fab!(:user) { Fabricate(:user, refresh_auto_groups: true) }
|
fab!(:user)
|
||||||
let(:admin_guardian) { Guardian.new(admin) }
|
let(:admin_guardian) { Guardian.new(admin) }
|
||||||
let(:guardian) { Guardian.new(user) }
|
let(:guardian) { Guardian.new(user) }
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ RSpec.describe DiscourseTagging do
|
||||||
before do
|
before do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
end
|
end
|
||||||
|
|
||||||
describe "visible_tags" do
|
describe "visible_tags" do
|
||||||
|
|
|
@ -3708,7 +3708,7 @@ RSpec.describe Guardian do
|
||||||
context "when tagging is enabled" do
|
context "when tagging is enabled" do
|
||||||
before do
|
before do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_1]
|
SiteSetting.min_trust_level_to_tag_topics = 1
|
||||||
end
|
end
|
||||||
|
|
||||||
context "when minimum trust level to create tags is 3" do
|
context "when minimum trust level to create tags is 3" do
|
||||||
|
@ -3739,19 +3739,11 @@ RSpec.describe Guardian do
|
||||||
|
|
||||||
describe "can_tag_topics" do
|
describe "can_tag_topics" do
|
||||||
it "returns false if trust level is too low" do
|
it "returns false if trust level is too low" do
|
||||||
expect(
|
expect(Guardian.new(Fabricate(:user, trust_level: 0)).can_tag_topics?).to be_falsey
|
||||||
Guardian.new(
|
|
||||||
Fabricate(:user, trust_level: 0, refresh_auto_groups: true),
|
|
||||||
).can_tag_topics?,
|
|
||||||
).to be_falsey
|
|
||||||
end
|
end
|
||||||
|
|
||||||
it "returns true if trust level is high enough" do
|
it "returns true if trust level is high enough" do
|
||||||
expect(
|
expect(Guardian.new(Fabricate(:user, trust_level: 1)).can_tag_topics?).to be_truthy
|
||||||
Guardian.new(
|
|
||||||
Fabricate(:user, trust_level: 1, refresh_auto_groups: true),
|
|
||||||
).can_tag_topics?,
|
|
||||||
).to be_truthy
|
|
||||||
end
|
end
|
||||||
|
|
||||||
it "returns true for staff" do
|
it "returns true for staff" do
|
||||||
|
|
|
@ -4,7 +4,7 @@ require "new_post_manager"
|
||||||
|
|
||||||
RSpec.describe NewPostManager do
|
RSpec.describe NewPostManager do
|
||||||
fab!(:user) { Fabricate(:user, refresh_auto_groups: true) }
|
fab!(:user) { Fabricate(:user, refresh_auto_groups: true) }
|
||||||
fab!(:topic) { Fabricate(:topic, user: user) }
|
fab!(:topic)
|
||||||
|
|
||||||
describe "default action" do
|
describe "default action" do
|
||||||
it "creates the post by default" do
|
it "creates the post by default" do
|
||||||
|
@ -415,7 +415,7 @@ RSpec.describe NewPostManager do
|
||||||
it "calls custom enqueuing handlers" do
|
it "calls custom enqueuing handlers" do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
|
|
||||||
manager =
|
manager =
|
||||||
NewPostManager.new(
|
NewPostManager.new(
|
||||||
|
|
|
@ -556,7 +556,7 @@ RSpec.describe PostCreator do
|
||||||
context "when can create tags" do
|
context "when can create tags" do
|
||||||
before do
|
before do
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
end
|
end
|
||||||
|
|
||||||
it "can create all tags if none exist" do
|
it "can create all tags if none exist" do
|
||||||
|
@ -577,7 +577,7 @@ RSpec.describe PostCreator do
|
||||||
context "when cannot create tags" do
|
context "when cannot create tags" do
|
||||||
before do
|
before do
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_4]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_4]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
end
|
end
|
||||||
|
|
||||||
it "only uses existing tags" do
|
it "only uses existing tags" do
|
||||||
|
@ -590,7 +590,7 @@ RSpec.describe PostCreator do
|
||||||
context "when automatically tagging first posts" do
|
context "when automatically tagging first posts" do
|
||||||
before do
|
before do
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
Fabricate(:tag, name: "greetings")
|
Fabricate(:tag, name: "greetings")
|
||||||
Fabricate(:tag, name: "hey")
|
Fabricate(:tag, name: "hey")
|
||||||
Fabricate(:tag, name: "about-art")
|
Fabricate(:tag, name: "about-art")
|
||||||
|
|
|
@ -7,7 +7,7 @@ RSpec.describe PostRevisor do
|
||||||
fab!(:newuser) { Fabricate(:newuser, last_seen_at: Date.today) }
|
fab!(:newuser) { Fabricate(:newuser, last_seen_at: Date.today) }
|
||||||
fab!(:user) { Fabricate(:user, refresh_auto_groups: true) }
|
fab!(:user) { Fabricate(:user, refresh_auto_groups: true) }
|
||||||
fab!(:coding_horror)
|
fab!(:coding_horror)
|
||||||
fab!(:admin) { Fabricate(:admin, refresh_auto_groups: true) }
|
fab!(:admin)
|
||||||
fab!(:moderator)
|
fab!(:moderator)
|
||||||
let(:post_args) { { user: newuser, topic: topic } }
|
let(:post_args) { { user: newuser, topic: topic } }
|
||||||
|
|
||||||
|
@ -101,7 +101,7 @@ RSpec.describe PostRevisor do
|
||||||
|
|
||||||
it "does not revise category if incorrect amount of tags" do
|
it "does not revise category if incorrect amount of tags" do
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
|
|
||||||
new_category = Fabricate(:category, minimum_required_tags: 1)
|
new_category = Fabricate(:category, minimum_required_tags: 1)
|
||||||
|
|
||||||
|
@ -123,7 +123,7 @@ RSpec.describe PostRevisor do
|
||||||
|
|
||||||
it "returns an error if the topic does not have minimum amount of tags that the new category requires" do
|
it "returns an error if the topic does not have minimum amount of tags that the new category requires" do
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
|
|
||||||
old_category = Fabricate(:category, minimum_required_tags: 0)
|
old_category = Fabricate(:category, minimum_required_tags: 0)
|
||||||
new_category = Fabricate(:category, minimum_required_tags: 1)
|
new_category = Fabricate(:category, minimum_required_tags: 1)
|
||||||
|
@ -137,7 +137,7 @@ RSpec.describe PostRevisor do
|
||||||
|
|
||||||
it "returns an error if the topic has tags not allowed in the new category" do
|
it "returns an error if the topic has tags not allowed in the new category" do
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
|
|
||||||
tag1 = Fabricate(:tag)
|
tag1 = Fabricate(:tag)
|
||||||
tag2 = Fabricate(:tag)
|
tag2 = Fabricate(:tag)
|
||||||
|
@ -165,7 +165,7 @@ RSpec.describe PostRevisor do
|
||||||
|
|
||||||
it "returns an error if the topic is missing tags required from a tag group in the new category" do
|
it "returns an error if the topic is missing tags required from a tag group in the new category" do
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
|
|
||||||
tag1 = Fabricate(:tag)
|
tag1 = Fabricate(:tag)
|
||||||
tag_group = Fabricate(:tag_group, tags: [tag1])
|
tag_group = Fabricate(:tag_group, tags: [tag1])
|
||||||
|
@ -1233,7 +1233,7 @@ RSpec.describe PostRevisor do
|
||||||
context "when can create tags" do
|
context "when can create tags" do
|
||||||
before do
|
before do
|
||||||
SiteSetting.create_tag_allowed_groups = "1|3|#{Group::AUTO_GROUPS[:trust_level_0]}"
|
SiteSetting.create_tag_allowed_groups = "1|3|#{Group::AUTO_GROUPS[:trust_level_0]}"
|
||||||
SiteSetting.tag_topic_allowed_groups = "1|3|#{Group::AUTO_GROUPS[:trust_level_0]}"
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
end
|
end
|
||||||
|
|
||||||
it "can create all tags if none exist" do
|
it "can create all tags if none exist" do
|
||||||
|
@ -1491,7 +1491,7 @@ RSpec.describe PostRevisor do
|
||||||
context "when cannot create tags" do
|
context "when cannot create tags" do
|
||||||
before do
|
before do
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_4]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_4]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
end
|
end
|
||||||
|
|
||||||
it "only uses existing tags" do
|
it "only uses existing tags" do
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# frozen_string_literal: true
|
# frozen_string_literal: true
|
||||||
|
|
||||||
RSpec.describe Search do
|
RSpec.describe Search do
|
||||||
fab!(:admin) { Fabricate(:admin, refresh_auto_groups: true) }
|
fab!(:admin)
|
||||||
fab!(:topic)
|
fab!(:topic)
|
||||||
|
|
||||||
before do
|
before do
|
||||||
|
@ -1378,7 +1378,7 @@ RSpec.describe Search do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
DiscourseTagging.tag_topic_by_names(
|
DiscourseTagging.tag_topic_by_names(
|
||||||
post.topic,
|
post.topic,
|
||||||
Guardian.new(Fabricate(:admin, refresh_auto_groups: true)),
|
Guardian.new(Fabricate.build(:admin)),
|
||||||
[tag.name, uppercase_tag.name],
|
[tag.name, uppercase_tag.name],
|
||||||
)
|
)
|
||||||
post.topic.save
|
post.topic.save
|
||||||
|
|
|
@ -108,7 +108,7 @@ RSpec.describe TopicCreator do
|
||||||
before do
|
before do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
end
|
end
|
||||||
|
|
||||||
context "with regular tags" do
|
context "with regular tags" do
|
||||||
|
@ -136,8 +136,6 @@ RSpec.describe TopicCreator do
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
before { Discourse.system_user.change_trust_level!(TrustLevel[4]) }
|
|
||||||
|
|
||||||
it "adds watched words as tags" do
|
it "adds watched words as tags" do
|
||||||
topic =
|
topic =
|
||||||
TopicCreator.create(
|
TopicCreator.create(
|
||||||
|
@ -218,7 +216,7 @@ RSpec.describe TopicCreator do
|
||||||
end
|
end
|
||||||
|
|
||||||
it "lets new user create a topic if they don't have sufficient trust level to tag topics" do
|
it "lets new user create a topic if they don't have sufficient trust level to tag topics" do
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_1]
|
SiteSetting.min_trust_level_to_tag_topics = 1
|
||||||
new_user = Fabricate(:newuser, refresh_auto_groups: true)
|
new_user = Fabricate(:newuser, refresh_auto_groups: true)
|
||||||
topic =
|
topic =
|
||||||
TopicCreator.create(
|
TopicCreator.create(
|
||||||
|
|
|
@ -419,7 +419,7 @@ RSpec.describe TopicsBulkAction do
|
||||||
|
|
||||||
before do
|
before do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
topic.tags = [tag1, tag2]
|
topic.tags = [tag1, tag2]
|
||||||
Group.refresh_automatic_groups!
|
Group.refresh_automatic_groups!
|
||||||
end
|
end
|
||||||
|
@ -488,7 +488,7 @@ RSpec.describe TopicsBulkAction do
|
||||||
|
|
||||||
before do
|
before do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
topic.tags = [tag1, tag2]
|
topic.tags = [tag1, tag2]
|
||||||
Group.refresh_automatic_groups!
|
Group.refresh_automatic_groups!
|
||||||
end
|
end
|
||||||
|
@ -559,7 +559,7 @@ RSpec.describe TopicsBulkAction do
|
||||||
|
|
||||||
before do
|
before do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
topic.tags = [tag1, tag2]
|
topic.tags = [tag1, tag2]
|
||||||
Group.refresh_automatic_groups!
|
Group.refresh_automatic_groups!
|
||||||
end
|
end
|
||||||
|
|
|
@ -2225,7 +2225,6 @@ RSpec.describe PostMover do
|
||||||
|
|
||||||
it "can add tags to new message when staff group is included in pm_tags_allowed_for_groups" do
|
it "can add tags to new message when staff group is included in pm_tags_allowed_for_groups" do
|
||||||
SiteSetting.pm_tags_allowed_for_groups = "1|2|3"
|
SiteSetting.pm_tags_allowed_for_groups = "1|2|3"
|
||||||
SiteSetting.tag_topic_allowed_groups = "1|2|3"
|
|
||||||
personal_message.move_posts(
|
personal_message.move_posts(
|
||||||
admin,
|
admin,
|
||||||
[p2.id, p5.id],
|
[p2.id, p5.id],
|
||||||
|
|
|
@ -239,7 +239,7 @@ RSpec.describe ReviewableQueuedPost, type: :model do
|
||||||
before do
|
before do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
end
|
end
|
||||||
|
|
||||||
context "when editing" do
|
context "when editing" do
|
||||||
|
|
|
@ -17,7 +17,7 @@ RSpec.describe Tag do
|
||||||
|
|
||||||
before do
|
before do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
end
|
end
|
||||||
|
|
||||||
describe "Associations" do
|
describe "Associations" do
|
||||||
|
|
|
@ -5,7 +5,7 @@ RSpec.describe TagUser do
|
||||||
before do
|
before do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.create_tag_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
SiteSetting.min_trust_level_to_tag_topics = 0
|
||||||
end
|
end
|
||||||
|
|
||||||
def regular
|
def regular
|
||||||
|
|
|
@ -8,7 +8,7 @@ RSpec.describe TopicEmbed do
|
||||||
it { is_expected.to validate_presence_of :embed_url }
|
it { is_expected.to validate_presence_of :embed_url }
|
||||||
|
|
||||||
describe ".import" do
|
describe ".import" do
|
||||||
fab!(:user) { Fabricate(:user, refresh_auto_groups: true) }
|
fab!(:user)
|
||||||
let(:title) { "How to turn a fish from good to evil in 30 seconds" }
|
let(:title) { "How to turn a fish from good to evil in 30 seconds" }
|
||||||
let(:url) { "http://eviltrout.com/123" }
|
let(:url) { "http://eviltrout.com/123" }
|
||||||
let(:contents) do
|
let(:contents) do
|
||||||
|
|
|
@ -1372,7 +1372,7 @@ RSpec.describe PostsController do
|
||||||
|
|
||||||
it "cannot create a post with a tag without tagging permission" do
|
it "cannot create a post with a tag without tagging permission" do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_4]
|
SiteSetting.min_trust_level_to_tag_topics = 4
|
||||||
tag = Fabricate(:tag)
|
tag = Fabricate(:tag)
|
||||||
|
|
||||||
post "/posts.json",
|
post "/posts.json",
|
||||||
|
|
|
@ -2057,7 +2057,6 @@ RSpec.describe PostAlerter do
|
||||||
|
|
||||||
before do
|
before do
|
||||||
SiteSetting.tagging_enabled = true
|
SiteSetting.tagging_enabled = true
|
||||||
SiteSetting.tag_topic_allowed_groups = Group::AUTO_GROUPS[:trust_level_0]
|
|
||||||
Jobs.run_immediately!
|
Jobs.run_immediately!
|
||||||
TagUser.change(user.id, watched_tag.id, TagUser.notification_levels[:watching_first_post])
|
TagUser.change(user.id, watched_tag.id, TagUser.notification_levels[:watching_first_post])
|
||||||
TopicUser.change(
|
TopicUser.change(
|
||||||
|
@ -2076,10 +2075,7 @@ RSpec.describe PostAlerter do
|
||||||
).to eq(0)
|
).to eq(0)
|
||||||
|
|
||||||
expect {
|
expect {
|
||||||
PostRevisor.new(post).revise!(
|
PostRevisor.new(post).revise!(Fabricate(:user), tags: [other_tag.name, watched_tag.name])
|
||||||
Fabricate(:user, refresh_auto_groups: true),
|
|
||||||
tags: [other_tag.name, watched_tag.name],
|
|
||||||
)
|
|
||||||
}.to change { Notification.where(user_id: user.id).count }.by(1)
|
}.to change { Notification.where(user_id: user.id).count }.by(1)
|
||||||
expect(
|
expect(
|
||||||
user
|
user
|
||||||
|
@ -2089,10 +2085,7 @@ RSpec.describe PostAlerter do
|
||||||
).to eq(1)
|
).to eq(1)
|
||||||
|
|
||||||
expect {
|
expect {
|
||||||
PostRevisor.new(post).revise!(
|
PostRevisor.new(post).revise!(Fabricate(:user), tags: [watched_tag.name, other_tag.name])
|
||||||
Fabricate(:user, refresh_auto_groups: true),
|
|
||||||
tags: [watched_tag.name, other_tag.name],
|
|
||||||
)
|
|
||||||
}.not_to change { Notification.count }
|
}.not_to change { Notification.count }
|
||||||
expect(
|
expect(
|
||||||
user
|
user
|
||||||
|
@ -2156,26 +2149,11 @@ RSpec.describe PostAlerter do
|
||||||
end
|
end
|
||||||
|
|
||||||
it "only notifies staff watching added tag" do
|
it "only notifies staff watching added tag" do
|
||||||
expect(
|
expect(PostRevisor.new(post).revise!(Fabricate(:admin), tags: [other_tag.name])).to be true
|
||||||
PostRevisor.new(post).revise!(
|
|
||||||
Fabricate(:admin, refresh_auto_groups: true),
|
|
||||||
tags: [other_tag.name],
|
|
||||||
),
|
|
||||||
).to be true
|
|
||||||
expect(Notification.where(user_id: staged.id).count).to eq(0)
|
expect(Notification.where(user_id: staged.id).count).to eq(0)
|
||||||
expect(
|
expect(PostRevisor.new(post).revise!(Fabricate(:admin), tags: [other_tag2.name])).to be true
|
||||||
PostRevisor.new(post).revise!(
|
|
||||||
Fabricate(:admin, refresh_auto_groups: true),
|
|
||||||
tags: [other_tag2.name],
|
|
||||||
),
|
|
||||||
).to be true
|
|
||||||
expect(Notification.where(user_id: admin.id).count).to eq(0)
|
expect(Notification.where(user_id: admin.id).count).to eq(0)
|
||||||
expect(
|
expect(PostRevisor.new(post).revise!(Fabricate(:admin), tags: [other_tag3.name])).to be true
|
||||||
PostRevisor.new(post).revise!(
|
|
||||||
Fabricate(:admin, refresh_auto_groups: true),
|
|
||||||
tags: [other_tag3.name],
|
|
||||||
),
|
|
||||||
).to be true
|
|
||||||
expect(Notification.where(user_id: admin.id).count).to eq(1)
|
expect(Notification.where(user_id: admin.id).count).to eq(1)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue
Block a user