For lack of a better name, this module is currently called 'User Moderation' which seems overly broad. Open to suggestions here.

This module is intended for community-based websites that are looking to take pressure off site admins who need to manually approve new user accounts. It allows trusted users to vote on whether or not they think a new user is legitimate or a spammer. By allowing trusted users to vote on new users, new users can be promoted from 'blocked' to 'approved' without requiring the administrator to check the site for users awaiting approval. In my experience moderating users on Drive the Americas for the last 2 years, I have found that it is extremely easy to tell who are the human spammers and who are the real users from a simple field on the user registration form called 'tell us about your trip' (this is a website for travelers). However, when I went on vacation the users would pile up and people would complain (rightfully) about having to wait a week for their account to be activated. However, if I opened up the user registration process (using Mollom and email verification only) to allow new users who have authenticated their email addresses the site would periodically be flooded by content from human spammers.

The flow is as follows:

  1. New users can apply for an account, but are initially set to blocked.
  2. Site administrators add a required field to the user registration form, asking a new user to do something like 'tell us about yourself'.
  3. New users are placed in an 'approval queue'.
  4. The module creates a block (displayed only for trusted users) that can be placed anywhere on the site that displays the following:
  5. * A message from the administrator explaining the block and asking people to vote
    * The username of the first person in the approval queue.
    * The required field on the user registration form selected by the administrator - in this example 'tell us about yourself'
    * A link to upvote the user
    * A link to downvote the user

  6. On voting, the block registers the vote, displays a thank you message, and disappears. The block will only reappear when the user refreshes their browser.

The module has no dependencies

Project page: https://www.drupal.org/sandbox/kristin.brinner/2595185

Git repo: http://git.drupal.org/sandbox/kristin.brinner/2595185.git user_moderation

Intended for Drupal 7.x.

Module is live on Drive the Americas.

I am currently getting started on some manual reviews of separate project applications in the main issue queue to be a good Drupal citizen per https://www.drupal.org/node/1975228. I will post updates here as I make my way through this process.

Comments

kbrinner created an issue. See original summary.

PA robot’s picture

Issue summary: View changes
Status: Active » Needs work

There are some errors reported by automated review tools, did you already check them? See http://pareview.sh/pareview/httpgitdrupalorgsandboxkristinbrinner2595185git

Fixed the git clone URL in the issue summary for non-maintainer users.

We are currently quite busy with all the project applications and we prefer projects with a review bonus. Please help reviewing and put yourself on the high priority list, then we will take a look at your project right away :-)

Also, you should get your friends, colleagues or other community members involved to review this application. Let them go through the review checklist and post a comment that sets this issue to "needs work" (they found some problems with the project) or "reviewed & tested by the community" (they found no major flaws).

I'm a robot and this is an automated message from Project Applications Scraper.

jimmyko’s picture

I manually reviewed the code and found that there are drupal_add_library() globally implemented in the .module file. It should be a good practise that the libraries only be loaded in the pages you need them. You are better to move drupal_add_library() in page callback function.

kbrinner’s picture

Updates:

Per the automated review tools, I fixed all issues including:

  • Git default branch not set
  • js/user_moderation.js various missing spaces and doc comment short description
  • README.txt fixed various line exceeds 80 characters
  • user_moderation.module removed dpm() accidentally left in during local debugging.

I will look into writing a SimpleTest or PHPUnit automated testing script but this is not something I am immediately familiar with.

@jimmyko thank you for your manual review as well. I moved the drupal_add_library into the appropriate callback functions so it is not loaded globally.

If this is helpful to anyone reviewing this module, I wrote a blog post on my thought process and how I built the module. See User Moderation Sandbox Project for Drupal - Community Management of New Users to Avoid Spammers and Trolls

PA robot’s picture

Status: Needs work » Closed (won't fix)

Closing due to lack of activity. If you are still working on this application, you should fix all known problems and then set the status to "Needs review". (See also the project application workflow).

I'm a robot and this is an automated message from Project Applications Scraper.