dreamwidth
dreamwidth copied to clipboard
new page /admin/recent_accounts
Right now when I'm checking recently created accounts for spammers, it requires a lot of time and resources on my part. So I brainstormed with @rahaeli about a way to crowdsource reviewing recently created accounts with trusted volunteers in a way that made it easy to participate on mobile devices for a few minutes here and there and distribute the workload. This is what came out of that conversation.
-
Newly created personal accounts have a new userprop,
not_approved
, set to 1 at account creation time. -
Any accounts with
not_approved
set are excluded from /search, /latest, and /random. (New user method$u->is_approved
faciliates this.) -
After an hour, the new accounts will begin to appear on /admin/recent_accounts for review by users with the existing priv siteadmin:spamreports or the new priv siteadmin:approvenew.
-
One of these volunteers will review the journal and flag it as spam or not. If it's not,
not_approved
is cleared and the account is made available in the site features where it was previously excluded. If it is judged to be spam,not_approved
is incremented from 1 to 2 and it goes into another queue to be suspended. -
Another new priv, suspend:recent, is available for volunteers to suspend only accounts flagged from the /admin/recent_accounts page. Suspending or unsuspending an account will also clear the userprop.
All of this is switched off if LJ::is_enabled('approvenew')
returns false. I left it turned off in the example config, but it should be active in production unless we explicitly disable it.
Screenshot of journal review form (yes it's an iframe):
I like!!