# frozen_string_literal: true discobot_username = "discobot" def seed_primary_email UserEmail.seed do |ue| ue.id = DiscourseNarrativeBot::BOT_USER_ID ue.email = "discobot_email" ue.primary = true ue.user_id = DiscourseNarrativeBot::BOT_USER_ID end end unless user = User.find_by(id: DiscourseNarrativeBot::BOT_USER_ID) suggested_username = UserNameSuggester.suggest(discobot_username) seed_primary_email User.seed do |u| u.id = DiscourseNarrativeBot::BOT_USER_ID u.name = discobot_username u.username = suggested_username u.username_lower = suggested_username.downcase u.password = SecureRandom.hex u.active = true u.approved = true u.trust_level = TrustLevel[4] end end bot = User.find(DiscourseNarrativeBot::BOT_USER_ID) # ensure discobot has a primary email unless bot.primary_email seed_primary_email bot.reload end bot.update!(admin: true, moderator: false) bot.create_user_option! if !bot.user_option bot.user_option.update!( email_messages_level: UserOption.email_level_types[:never], email_level: UserOption.email_level_types[:never], ) bot.create_user_profile! if !bot.user_profile if !bot.user_profile.bio_raw bot.user_profile.update!(bio_raw: I18n.t("discourse_narrative_bot.bio")) end Group.user_trust_level_change!(DiscourseNarrativeBot::BOT_USER_ID, TrustLevel[4])