The Field Complete module is a Drupal 7 Field extension module that allows you to mark the field of an entity as "desirable to be filled in", rather enforcing filling it in with a "required" mark.
When you might want it
The module has two use cases:
Where you might (say) have a score of completeness on a user profile. You don't want to enforce filling in fields with a "required" but just encourage it by having a %age completion. (There's a nifty block that shows the level of completion and what could be filled in next.)
The other use case - and the reason I needed it - was having an absolutely huge application form that could not be filled in in one sitting and which also had all sorts of field collections and links to other content which also had to be filled in correctly.
Everything has to be filled in, but it might take weeks (in this case). So the user needs to be able to save it between times - but the ability to submit the final version does not appear until everything is filled in. (There's a Rules rule - which is in the documentation - to allow actions to take place when the form is finally completed.)
When an entity (such as a node or a user) is saved its "completeness" is calculated and recorded as a percentage.
This module takes the ideas of the original (otherwise excellent) Content Complete module and overcomes many of its problems.
If you are using simple "flat" sets of fields with nodes and users only the Content Complete module is a reasonable alternative to this one. However this module has several features which extend it far beyond the capabilities of the other module.
- It works for any entity that can have fields attached.
- It works with fields that link to other entities:
- Entity reference
- Field collections
- Node and user references
With these field types it can (optionally) check for completeness within any referenced entity as well.
- It works with the Matrix field type
- There are sub-modules which provide:
- Provides Views support for all entities
- Provides a Rules condition for testing %age field completion
- Marks the field label with a symbol, like the "required" asterisk
- Integrates with the Editable Fields module to ensure clean markup
Important installation note
After you have installed and enabled the module you should run the the Field Complete rebuild function. This cannot be run during installation but only needs to be run once.
This is found at Admin > Configuration > Content > Field Complete > Rebuild which is admin/config/content/fc/rebuild
The rebuild functionality should only be needed the once.
In order to mark fields with the completeness symbol this module overrides and replaces the functionality of two form element themes. Depending on the order that modules are processed this module could override another one that does the same, or could be overridden itself.
Where it gets overridden this will not prevent the module from functioning correctly but it is less directly helpful to the user.