discourse/lib/discourse_dev/reviewable_user.rb
Osama Sayegh 5a55c9062a
DEV: Add reviewables:populate rake task (#30540)
Adds a new reviewables:populate rake task that works in a similar fashion to the existing *:populate rake tasks. The rake task creates pending reviewable of all core types, with possibility for plugins to extend the task to populate their own reviewable types.
2025-01-03 10:05:04 +08:00

38 lines
991 B
Ruby

# frozen_string_literal: true
require "discourse_dev/reviewable"
require "faker"
module DiscourseDev
class ReviewableUser < Reviewable
def populate!
reasons = %i[must_approve_users invite_only suspect_user]
@users
.sample(reasons.size)
.zip(reasons)
.each do |(user, reason)|
reviewable =
::ReviewableUser.needs_review!(
target: user,
created_by: Discourse.system_user,
reviewable_by_moderator: true,
payload: {
username: user.username,
name: user.name,
email: user.email,
bio: user.user_profile&.bio_raw,
website: user.user_profile&.website,
},
)
reviewable.add_score(
Discourse.system_user,
ReviewableScore.types[:needs_approval],
reason:,
force_review: true,
)
end
end
end
end