Drupal has the known functionality of the ability to create custom fields for user profiles. There's an option of making a field required by checking the "The user must enter a value." checkbox in the profile field settings page. The problem is that old registered users aren't really forced to enter a value for any field type. And even in the case of setting the option "Visible in user registration form.", only new registrants are forced to enter a value and currently there's not a single way to force old registered users to fill in the new custom field(s). I see this as a critical flaw in the user system and could easily lead to annoying troubles on some big websites with huge user base.

The best solution, I think, is for Drupal to check for unfilled required fields when users log in, and if there are unfilled required fields, redirect users to the corresponding field page in their profile on which a message shows up notifying the user that he/she MUST enter a value for those new fields before being able to proceed. Users should be unable to perform any tasks on the site while logged in until they fill in the new field values.

Comments

iimitk’s picture

Version: 6.3 » 7.x-dev
iimitk’s picture

Category: bug » feature
pieterdc’s picture

Status: Active » Closed (duplicate)

I think it would be even better to allow / require those fields on the registration form, see #501408: Display user fields on registration form
That eliminates the need for extra checks upon user login, as with your proposal.

As that issue aims to fix your problem, I set this issue to duplicate.