Merge discourse-narrative-bot into core plugins.

This commit is contained in:
Guo Xiang Tan
2017-05-24 13:50:20 +08:00
parent 796a2967af
commit 7f0561b621
52 changed files with 7298 additions and 0 deletions

View 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])

View 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