mirror of
https://github.com/discourse/discourse.git
synced 2025-05-22 07:53:49 +08:00
Merge discourse-narrative-bot into core plugins.
This commit is contained in:
43
plugins/discourse-narrative-bot/db/fixtures/001_discobot.rb
Normal file
43
plugins/discourse-narrative-bot/db/fixtures/001_discobot.rb
Normal file
@ -0,0 +1,43 @@
|
||||
discobot_username ='discobot'
|
||||
user = User.find_by(id: -2)
|
||||
|
||||
if !user
|
||||
suggested_username = UserNameSuggester.suggest(discobot_username)
|
||||
|
||||
User.seed do |u|
|
||||
u.id = -2
|
||||
u.name = discobot_username
|
||||
u.username = suggested_username
|
||||
u.username_lower = suggested_username.downcase
|
||||
u.email = "discobot_email"
|
||||
u.password = SecureRandom.hex
|
||||
u.active = true
|
||||
u.approved = true
|
||||
u.trust_level = TrustLevel[4]
|
||||
end
|
||||
|
||||
# TODO Pull the user avatar from that thread for now. In the future, pull it from a local file or from some central discobot repo.
|
||||
if !Rails.env.test?
|
||||
UserAvatar.import_url_for_user(
|
||||
"https://cdn.discourse.org/dev/uploads/default/original/2X/e/edb63d57a720838a7ce6a68f02ba4618787f2299.png",
|
||||
User.find(-2),
|
||||
override_gravatar: true
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
bot = User.find(-2)
|
||||
bot.update!(admin:true, moderator: false)
|
||||
|
||||
bot.user_option.update!(
|
||||
email_private_messages: false,
|
||||
email_direct: false
|
||||
)
|
||||
|
||||
if !bot.user_profile.bio_raw
|
||||
bot.user_profile.update!(
|
||||
bio_raw: I18n.t('discourse_narrative_bot.bio', site_title: SiteSetting.title, discobot_username: bot.username)
|
||||
)
|
||||
end
|
||||
|
||||
Group.user_trust_level_change!(-2, TrustLevel[4])
|
39
plugins/discourse-narrative-bot/db/fixtures/002_badges.rb
Normal file
39
plugins/discourse-narrative-bot/db/fixtures/002_badges.rb
Normal file
@ -0,0 +1,39 @@
|
||||
Badge
|
||||
.where(name: 'Complete New User Track')
|
||||
.update_all(name: DiscourseNarrativeBot::NewUserNarrative::BADGE_NAME)
|
||||
|
||||
Badge
|
||||
.where(name: 'Complete Discobot Advanced User Track')
|
||||
.update_all(name: DiscourseNarrativeBot::AdvancedUserNarrative::BADGE_NAME)
|
||||
|
||||
new_user_narrative_badge = Badge.find_by(name: DiscourseNarrativeBot::NewUserNarrative::BADGE_NAME)
|
||||
|
||||
unless new_user_narrative_badge
|
||||
new_user_narrative_badge = Badge.create!(
|
||||
name: DiscourseNarrativeBot::NewUserNarrative::BADGE_NAME,
|
||||
badge_type_id: 3
|
||||
)
|
||||
end
|
||||
|
||||
advanced_user_narrative_badge = Badge.find_by(name: DiscourseNarrativeBot::AdvancedUserNarrative::BADGE_NAME)
|
||||
|
||||
unless advanced_user_narrative_badge
|
||||
advanced_user_narrative_badge = Badge.create!(
|
||||
name: DiscourseNarrativeBot::AdvancedUserNarrative::BADGE_NAME,
|
||||
badge_type_id: 2
|
||||
)
|
||||
end
|
||||
|
||||
badge_grouping = BadgeGrouping.find(1)
|
||||
|
||||
[
|
||||
[new_user_narrative_badge, I18n.t('badges.certified.description')],
|
||||
[advanced_user_narrative_badge, I18n.t('badges.licensed.description')]
|
||||
].each do |badge, description|
|
||||
|
||||
badge.update!(
|
||||
badge_grouping: badge_grouping,
|
||||
description: description,
|
||||
system: true
|
||||
)
|
||||
end
|
Reference in New Issue
Block a user