The Objective Forms module contains a series of functions and classes that allow Drupal forms to be treated as PHP objects. It provides back-end support to XML Forms so that Drupal's built-in form functions and classes can be used when filling out metadata.
Some important notes:
- Each form element is assigned a unique hash Form Property to identify it, as #hash.
- Each form element that is created is stored in a registry, and it will persist though out the lifetime of the form even if it's removed from the form. Ancestry of Form Elements is stored, so if a Form Element is cloned we will be able to determine the Form Element that is was cloned from.
- Form Properties can be objects. To define new Form Properties, implement the hook
- Forms will be auto-populated from
- There is a FormStorage class that can be used to store any persistent data.
This module requires the following modules/libraries:
Install as usual, see this for further information.
Having problems or solved a problem? Check out the Islandora google groups for a solution.
If you would like to contribute to this module, please check out CONTRIBUTING.md. In addition, we have helpful Documentation for Developers info, as well as our Developers section on the Islandora.ca site.
Objective Forms is part of the Islandora Forms package, downloadable at the https://github.com/Islandora/objective_forms page