Modules: User management
Contributed (contrib) modules are plugins for Drupal that extend, build or enhance Drupal core functionality. Use matching versions (modules released for Drupal 5.x will not work for Drupal 6.x). Contributed modules are not part of Drupal core releases and may or may not have optimized code/functionality. If a module solves your needs please consider joining forces and helping the maintainer.
Account Expiry
Adds and maintains expiry dates for user accounts.
Depends on 'Account Types' module.
Specific Account Types can be defined as having an expiry date.
Default expiry period is configurable (eg 30 days). New accounts will be given an expiry date based on the default expiry period. Expiry dates for individual users can be altered via the user edit page, or via 'User Account Expiry' page provided by the module.
Accounts that reach the expiry date are made inactive (blocked) via cron.
Development of this module sponsored by New Ways of Working Network.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-1.x-dev | 2008-May-02 | Download · Release notes | Development snapshot | |
Account Types
Use 1.4 version. Looking for co-maintainer. See message in issue queue.
If you have a ton of users and a ton of roles on your site this module aims to eliminate errors in assigning roles and simply make it easier to keep track of who should be able to do what.
The site admin -
- defines account types
- assigns roles to each account type via checkboxes
Either the site admin or user admin -
- assigns account types to users
- assigns roles to users based on the limits of the account type
The user -
- can't tell the difference
Permissions and roles behave as they always have. Account types pretty much just disable the role checkboxes on the user edit page so that the wrong role can't be assigned the user. This is important if you have a person that is a little technically challenged helping to administer users or who doesn't understand that a particular person isn't supposed to be assigned a role just because they requested it.
NEW FEATURE! You can now select roles that will be auto-assigned when the user gets the Account Type assigned to them.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-1.4 | 2007-Nov-28 | Download · Release notes | Recommended for 5.x | |
Addresses
The most complete module to let you link your users and contents to physical addresses.
Features
- All countries of the world!
- All states of all countries!
- Node addresses thru CCK
- User address book
- Multiple addresses
- Extendable address display: change the address looking country to country.
- hCard and adr microformats
- Phone and Fax fields
- Generic API for developers
- XHTML, CSS, Drupal and PHP E_ALL valid code
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 6.x-1.0-alpha2 | 2008-Aug-02 | Download · Release notes | Recommended for 6.x | |
Addresses Extras
Addresses Extras is a set of extensions to the Addresses module.
The idea is to make it useful by having many different type of data attached to a user. A complete profile, and for some fields with functionality that is not found in the base Addresses module.
At this time, I am working on the following additions:
- Names (Alias, Person and Business)
- Notes (anything the user wants to write about himself or about a contact)
- Internal Info (fields only accessible to specified roles, usually for the admin(s) to control different aspect of users)
For myself, I put the URL where I can find info on how to deal with the Drupal CVS: http://drupal.org/handbook/cvs/quickstart -- this may even help others 8-)
These modules are sponsored by Made to Order Software Corp.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 6.x-1.x-dev | 2008-Sep-29 | Download · Release notes | Development snapshot | |
Administer Users by Role
Allows users with 'administer users' permission and a role (specified in 'Access control') to edit and/or delete other users with a specified role.
If the user being edited has multiple roles, the user doing the editing must have permission to edit ALL of the user being edited's roles.
Also provides role-based control over user creation.
Works well in conjunction with the (optional) role_delegation module.
I wrote this module as part of a Kosada Inc development project --- this allows us to further delegate user administration. Site administrators can now create users without being given full "administer users" permission, and can edit a specified subset of the site's users depending on the combination of roles possessed by the editing user and the user being edited.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-0.9 | 2008-Mar-16 | Download · Release notes | Recommended for 5.x | |
Advanced User
Details
The advanced user module allows the filtering of users based on the user.module fields and optionally the profile.module fields. The fields available for filtering can be configured using the module settings. Eg. Site admin may search through 1000s of users to display all users who have not accessed their account.
Once the group of users with selected common denominators are filtered, the module can be used to perform functions that email, block, unblock, add or remove roles, or delete. Another nice feature is the ability to notify administrators or other roles, by email, of user account creation or profile changes.
NOTE: Version 5.x-2.0 is the release to use. The Drupal 5.x-2.x-dev release is now considered ALPHA and may be in development. The 6.x-2.x-dev release is not ready for testing yet; no work to convert it has been accomplished.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 6.x-2.x-dev | 2008-Jun-28 | Download · Release notes | Development snapshot | |
| 5.x-2.0 | 2008-Jun-27 | Download · Release notes | Recommended for 5.x | |
AES encryption
In short, here's what this module does:
For site owners:
This module can provide you with readable passwords. Some users will be able to see other users passwords in plain text if they have a role with the permission to do so.
For developers:
This module can provide you with a very simple and easy to use encryption API. Just check out the aes_encrypt and aes_decrypt functions. It really can't get any simpler.
Note: This module requires the PHP mcrypt extension! It will not work without it.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 6.x-1.3 | 2008-Apr-01 | Download · Release notes | Recommended for 6.x | |
| 5.x-1.2 | 2007-Dec-06 | Download · Release notes | Recommended for 5.x | |
Affinity
The Affinity module is intended to be used as a catalyst for community interaction on sites where users rate the content. It works in conjunction with the Voting API module to match users with other users based on their voting patterns. The module provides a block showing users you may have an affinity for.
Note: the demonstration site's affinity block has been re-branded as "Kindred".
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 6.x-1.x-dev | 2008-Aug-20 | Download · Release notes | Development snapshot | |
| 5.x-1.0 | 2008-Aug-13 | Download · Release notes | Recommended for 5.x | |
AJAX Picture Preview
This module uses JQuery and the AJAX File Upload Jquery plugin to present a preview of a user's new picture as soon as they select one. Uploads will be sent through the same validation process and errors will be reported immediately after selection has been made.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 6.x-1.1 | 2008-Apr-25 | Download · Release notes | Recommended for 6.x | |
Ajax Table
Update 9/1/08
Lately I've been really busy with a load of projects, and have been unable to keep up with the issue queues on contrib. There have been some promising patches for ajaxtable I've been meaning to look through and apply, but just haven't managed to make the time. I am about ready to add a new project to contrib that is similar to ajaxtable, but that works purely through configuration (no custom modules required), doesn't require hacking core by adding a newer jquery, and has no dependencies. I will add a link as soon as it is up. I suspect a lot of the patches in the queue for ajaxtable will apply well to the new one, since they expose my lack of depth in query composition ;).
If anyone is interested in co-maintaining this project (it looks like a few folks are using it actively in projects), I would be glad to chat with them, just send me a PM.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-1.2 | 2008-Jan-15 | Download · Release notes | Recommended for 5.x | |
Apply for role
Allows users to apply for a role and administrators to approve their application. The role will be automatically assigned to the user on approval.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 6.x-1.5 | 2008-Oct-04 | Download · Release notes | Recommended for 6.x | |
| 5.x-1.4 | 2008-Jun-29 | Download · Release notes | Recommended for 5.x | |
Auto username
This module disables the "Username" field on user registration and user edit forms and generates a username automatically using a token.module-provided pattern. That allows for usernames that are, for instance, forced to be "Lastname, Firstname", "Firstname Last-initial", etc.
auto_username depends on token.module.
Status
There is one show-stopper bug in the 5.x-1.x-dev release: #254422: Using old data for tokens. A stable release of this module will be tagged after that has been fixed (and hopefully any other bugs, too). If you want to see a stable release, please fix that bug! :-)
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-1.x-dev | 2008-Apr-15 | Download · Release notes | Development snapshot | |
Availability
Availability module is an abstract solution to associate a set of dates with certain nodes and users assuming that these nodes are available on specified dates for a certain user.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-1.x-dev | 2007-Jun-19 | Download · Release notes | Development snapshot | |
Avatar Approval
This module creates a workflow for moderating user avatars. When a new avatar is uploaded, it is placed in the 'not yet moderated' queue, and not displayed. A moderator can then either approve, disapprove, or delete the avatar. Only approved avatars will be shown site wide.
Avatar moderation is done on the admin/content/approval page, where moderators will find three tabs. Not yet moderated, Approved, and Disapproved. An uploaded avatar will keep it's approval status until it is deleted. ie if an avatar is disapproved, and the user attempts to upload the same image again, it will automatically receive a disapproved status.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-1.0 | 2007-Sep-15 | Download · Release notes | Recommended for 5.x | |
Avatar gallery
This module provides a block and page with a composite image of all the avatars of a site. It serves to promote a sense of community around a site while avoiding the unnecessary database queries and image calls that would be caused by a PHP-snippet-based approach.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-1.x-dev | 2008-May-23 | Download · Release notes | Development snapshot | |
Avatar Selection
When a user edits their account details they can choose to upload an image or photo of themselves, also known as an avatar. The Avatar Selection module allows the user to pick an avatar image from a list already loaded by an administrative user. It is also possible to disable the uploading of pictures by users and only allow them to select an avatar icon from this list.
No images are supplied with this module. It is recommended that all images you use are roughly of the same size.
Dependencies
The Avatar Selection 5.x-2.6 and later 5.x versions are dependant on the jQuery Update module. Avatar Selection 6.x versions have no such dependency.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 6.x-1.5 | 2008-Aug-13 | Download · Release notes | Recommended for 6.x | |
| 5.x-2.7 | 2008-Aug-13 | Download · Release notes | Recommended for 5.x | |
AWeber Integration
Sign-up integration and lead management module with the AWeber newsletter and autoresponder service at AWeber.com. This module records leads signing up for your AWeber newsletter only.
CVS HEAD contains code working for Drupal 6.
Features
- Newsletter sign-up during user registration and user account control
- Keeps record of leads
- Customizable Thank You page
- Customizable block mimics AWeber's web form
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-1.0 | 2008-Sep-19 | Download · Release notes | Recommended for 5.x | |
Bio
The Bio module allows each user to create one (and only one) "bio" node. Any node-type can be assigned as the bio or Bio module can provide its own node type. The bio can display on the users' profile pages and/or it can add "View [username]'s [Bio]" links to nodes.
Combined with CCK in Drupal 5, Bio module can provide a more flexible, more *efficient* solution than Drupal's core Profile module. If you've wished that user profiles were complete first-class nodes -- available to your content search index, available to nodeapi-based modules, and themable through node-[bio].tpl.php, then Bio module is a quick-and-simple way to go.
For background on Bio and D6, read #201902: Port of Bio to D6
In D6, Content Profile is the successor to Bio.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-1.2 | 2008-Jan-28 | Download · Release notes | Recommended for 5.x | |
| 4.7.x-1.x-dev | 2007-Jan-30 | Download · Release notes | Development snapshot | |
Bio role terms
This module is an add-on for the Bio module, it automatically adds taxonomy terms to the Bio node based on the Bio nodes owners role.
Why?
With the Bio node assigned taxonomy terms with the same names as the rolse of its owner, it opens up a number of opportunities :
- Listing profiles by role
- Restricting access to profiles by both who is viewing the profile and who owns the profile (with the help of Taxonomy Access Control)
- ... and probably other things, answers on a postcard please :)
How?
The module updates the Bio node every time the user or the bio node itself is saved. There is also a bulk update feature to process all Bio nodes at once.
Setup is very simple,
- Download and install the module
- Create a new vocabulary and insert some terms which match the names you have for roles e.g. admin
- Assign the new vocabulary to the Bio content type
- Go to the Bio role terms admin page (admin/user/bio_role_terms) and select the correct vocabulary, then save
- Optionally, perform a bulk update.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-0.1 | 2008-Jun-17 | Download · Release notes | Recommended for 5.x | |
Brazilian IDs
Like US Social Security numbers, Brazil has its own national ID numbers: CPF and CNPJ. You can add them into your profile or use them with CCK.
************************
Coloque campos de CPF e CNPJ tanto no perfil de seus visitantes como em qualquer conteúdo usando o CCK. Ele valida os números e ainda formata.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-1.2 | 2008-Jan-25 | Download · Release notes | Recommended for 5.x | |
CAPTCHA Pack
The CAPTCHA Pack module contains several CAPTCHA types for use with the CAPTCHA module. The CAPTCHA Pack module is meant to provide lightweight, yet effective alternatives for the traditional image CAPTCHA, which is undesirable in certain situation (e.g. bandwidth restrictions, cpu restrictions, accessibility constraints, etc).
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 6.x-1.0-beta2 | 2008-May-29 | Download · Release notes | Recommended for 6.x | |
| 5.x-1.1 | 2007-Dec-22 | Download · Release notes | Recommended for 5.x | |
Case Tracker
This module enables teams to track outstanding cases which need resolution.
It provides e-mail notifications to participants about updates to cases and is similar to many issue tracking systems.
This is like the project.module and is very similar to that module but varies in important ways. The project.module is specific to software development and the need for a more generic issue tracker has been expressed.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-1.3-beta1 | 2007-Nov-23 | Download · Release notes | Recommended for 5.x | |
| 4.7.x-1.0 | 2006-Dec-20 | Download · Release notes | Recommended for 4.7.x | |
Case Tracker Services
Allow your client to interact with Case Tracker from the comfort of her own site.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-0.4-beta | 2008-Apr-04 | Download · Release notes | Recommended for 5.x | |
Check Profile
This module allows an administrator to create a list of "bad words", and then filter user profile fields against this list. This is done both at profile modification time (validation) and display (filtering). The list of strings to be replaced, and the text that replaces them, are both configured on the settings page.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-1.x-dev | 2008-Aug-03 | Download · Release notes | Development snapshot | |
Checkout (content locking)
Drupal's default content locking strategy is optimistic, that is, two users may start to edit the same content and the one who is hitting the save button first wins the race, while the other is displayed a message stating this content has been modified by another user, changes cannot be saved. Depending on the number of editors in your organization this might not be an acceptable solution.
The Checkout module implements pessimistic locking, which means that content will be exclusively locked whenever a user starts editing it. The lock will be automatically released when the user submits the form or navigates away from the edit page.
Users may also permanently lock content, to prevent others from editing it. Content locks that have been "forgotten" can be automatically released after a configurable time span.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 6.x-2.2 | 2008-Jul-14 | Download · Release notes | Recommended for 6.x | |
| 5.x-2.0 | 2008-Jul-14 | Download · Release notes | Recommended for 5.x | |
CiviCRM Subscribe
Allow users to subscribe (double opt-in) to a CiviCRM group without creating a Drupal user. Upon entering an email address, the user is added to the group, but the do_not_email flag is set. The subscribe form sends out an email to confirm the subscription. And only after the special link in the email is clicked, is the do_not_email flag cleared.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 6.x-1.x-dev | 2008-Apr-28 | Download · Release notes | Development snapshot | |
| 5.x-1.3 | 2008-Apr-29 | Download · Release notes | Recommended for 5.x | |
CiviRoles Sync
News:
Matt2000 has joined the development team and the project has been re-titled to CiviRoles Sync! Matt2000 has a module that syncs Drupal Roles -> CiviCRM Groups and has added it as a submodule for CiviMember Roles Sync 5.x-2.0. See the readme.txt file in the civiroles_to_groups folder for a full description. It is also in the works to have CiviCRM Groups -> Drupal Roles sometime in the future, but this is not on the roadmap as of right now.
Module Description:
CiviMember Roles Sync automatically synchronizes CiviCRM Contacts that have CiviMember Membership Types to a specified Drupal Role. This allows sites that use Drupal and CiviCRM to create membership sites with "member-only" content.
Membership Types and Roles can be synchronized automatically using three different methods. The first method is performed each time an individual Drupal user logs in or out and the second method provides periodic synchronization using the Drupal cron function. The third method synchronizes membership types to roles on every page load for the user viewing the page. There is also a "Manual Synchronization" feature which can be used anytime to fully synchronize Membership Types to Roles.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 6.x-3.0-beta1 | 2008-Sep-01 | Download · Release notes | Recommended for 6.x | |
| 5.x-2.0 | 2008-Aug-02 | Download · Release notes | Recommended for 5.x | |
Content Profile
This module builds user profiles as content (aka nodes), which opens the opportunity to use all the powerful modules for content for user profiles too, e.g. the Content Construction Kit (CCK). It's intended to be simple and useful, but extensible by further modules.
As content, content profiles can be restricted to certain roles and it's possible to create multiple separate content profiles.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 6.x-1.0-beta2 | 2008-Jun-20 | Download · Release notes | Recommended for 6.x | |
COPPA
This module will prevent users under the age of 13 from logging in if their respective parent or guardian (P/G) have not "signed" their COPPA compliance form. If a users Date of Birth -- stored in their user profile -- cannot be determined, the user will not be allowed to login.
P/G to child relationships will be loaded into an internal {coppa} table. This table will track the Parent to Child relationships and monitor when COPPA compliance was first achieved.
Suggested setup;
- enable profile module
- enable coppa module: this looks for a profile field called "Date of Birth" (profile_dob) and creates it if not present.
- create a user role that will require COPPA compliance suggestions (student, etc.)
- visit 'admin/settings/coppa' and select the above user role
- also visit 'admin/user/coppa/add' to add parent/child relationships
- also visit 'admin/user/coppa/manage' to manage existing parent/child relationships
Any users with the role you select at 'admin/settings/coppa' will now require coppa compliance to login and use the site. Please be careful in choosing the role; using "authenticated user" can lock all users out of the system if they do not have a profile_dob over 13 years from the current date.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-1.2 | 2008-Jul-30 | Download · Release notes | Recommended for 5.x | |
Courier MTA
The Courier MTA module gives administrators and/or users the ability of managing e-mail accounts on a Courier mail server through a Druapl website.
| Version | Date | Links | Status | |
|---|---|---|---|---|
| 5.x-1.1 | 2008-Apr-16 | Download · Release notes | Recommended for 5.x | |

