Forms are easy to build and arrange in Form Reform. You just add blocks to the page for each input. You can extend Form Reform with your own block templates or custom input blocks.
If you are wondering what all these blocks will look like on a page, check out The Kitchen Sink.
Address Lookup input for Form Reform.
Checkbox list from Options Attribute values for Form Reform.
Radioset from Options Attribute values for Form Reform.
Dropdown select from Options Attribute values for Form Reform.
Calendar picker input for Form Reform. Provides picking one or more events, days or other calendar items from a calendar by superimposing checkboxes to the calendar cells.
Checkbox input for Form Reform.
Checkbox List input for Form Reform. The default view is for Bootstrap5. Set the bootstrap3_elemental or a custom template for other themes.
Checkbox List Combi input for Form Reform. The default view is for Bootstrap5. Set the bootstrap3_elemental or a custom template for other themes.
Checkbox Matrix input for Form Reform. Build a table of checkbox inputs.
Checkbox input with associated rich text message for Form Reform.
Color picker input for Form Reform.
Continent input for Form Reform.
Country input for Form Reform.
Country State input for Form Reform.
Text input with custom validation for Form Reform
class_name->validate($text)
which returns true/false. For testing, the class JtF\FormReform\Examples\CustomValidate will fail any text containing X.Date input for Form Reform.
DateTime input for Form Reform.
Email input for Form Reform.
Email Confirm input for Form Reform. Two email inputs are validated to match.
Select input for Form Reform with groups of options.
Handle input for Form Reform.
Handle with dots input for Form Reform.
Hidden input for Form Reform.
ID Code input for Form Reform.
Image picker input for Form Reform. Provides dragging images from an Omni Gallery with the capability to be configured to drag images from other galleries and sliders.
Derive a select dropdown or nested select dropdown from JSON data.
Latitude or Longitude input for Form Reform.
Like input for Form Reform.
Lowercase input for Form Reform.
Masked Text input for Form Reform.
Number input for Form Reform.
Numeric digits input for Form Reform.
Checkbox list from Packages for Form Reform.
Radioset from Packages for Form Reform.
Dropdown select from Packages for Form Reform.
Password input for Form Reform. For entering a password. Use "Password Confirm" for setting a password.
Password Confirm input for Form Reform. Two passwords are validated to match.
Radio Matrix input for Form Reform. Build a table of radio options.
Radioset input for Form Reform. The default view is for Bootstrap5. Set the bootstrap3_elemental or a custom template for other themes.
Radioset Combi input for Form Reform. The default view is for Bootstrap5. Set the bootstrap3_elemental or a custom template for other themes.
Range input for Form Reform.
Rating input for Form Reform.
Result picker input for Form Reform. Provides picking one or more previous form submissions from a list presented by Form Reform Display, Reviews or other compatible lists.
Rich text input for Form Reform.
Select input for Form Reform.
Select Combi input for Form Reform.
Signature input for Form Reform.
Drag & Drop file upload input for Form Reform.
Screengrab input for Form Reform.
Webcam input for Form Reform.
State select input for Form Reform.
Derive a select dropdown or nested select dropdown from table data by rows or by columns.
Table picker input for Form Reform. Provides picking one or more items from a table by superimposing checkboxes to the table cells.
Telephone Number input for Form Reform.
Text input for Form Reform.
Text Confirm input for Form Reform. Two inputs are validated to match.
Text Area input for Form Reform.
Time input for Form Reform.
Up Down Vote input for Form Reform.
Uppercase input for Form Reform.
Url input for Form Reform.
Captcha for Form Reform.
CCM Token spam and CSRF trap for Form Reform.
Geofence Continent for Form Reform.
Geofence Country for Form Reform.
Honeypot spam trap for Form Reform.
Display a Form Reform response message.
Prevent form from being entered if it has already been submitted.
Attach a QR code reader to one or more inputs.
Repeatable group control for Form Reform.
Require another form/page to be completed before this form can be shown.
A spinner to show while a form is submitting.
Submit a form created with Form Reform and manage the submit handling.
Attach a list of suggestions to one or more text inputs.
If you need a specialized template or a custom input element, you can design new templates or new block types for form elements as you would any block type.
Blocks are easy for third party addition or extension. Block templates and are the first thing any Concrete CMS developer learns to code. They are one of the easiest things to code. The underlying mechanisms are well established and reliable.
Form handlers are built about the same extensible plugin system as many of my other addons (Universal Content Puller, Omni Gallery, Extreme Clean ...).
The whole system is aimed at easy extension within Form Reform, by third party addons, by agencies and by site building developers.
Handlers can be easily added to do whatever you want with the form data.
Saving form data with Form Reform is simply a handler in the processing pipeline. You can save to multiple locations or just one location.
If you need to save data elsewhere, such as to a dedicated table, a table provided through another addon, to another database, send it to an API, forward it to another server, or anywhere you can imagine, you can adapt or develop a form handler to do so.
The complexity of the code depends on where you are saving or sending the data, but wrapping that into a form handler plugin for Form Reform is straight forward.
The Form Reform handler plugin system is designed for easy extension.
Reform the way forms are built. Build a form out of blocks. Take control of how form submissions are processed and how the submitted data is stored. Easy to extend. Easy to reconfigure. Tangible data. Easy to add your own integrations.
List and display form submissions from Form Reform.
Not just Form Reform and not just UTM! Capture and hold incoming UTM (or other) tags and make the tag values available to Form Reform and/or Conditional Redirect as {{place_holders}}. You don't need Form Reform to use this.
Form handlers for querying Microsoft Dynamics, forwarding and updating form data to Microsoft Dynamics.
A suite of advanced image capture and upload tools. Enhanced drag and drop file uploading. Make screengrabs from within Concrete CMS. Capture images directly from device webcams. Edit images before uploading.
Save submitted forms to Express objects and user attributes. Add and remove users from groups.
Form Reform Image Picker provides an image picking input block for Form Reform. The Image Picker Input is preconfigured to connect to most Omni Gallery gallery and slider display widgets, the core gallery block, and thumbnail showing templates for the core page list block. Advanced settings allow the Image Picker Input to be configured to pick images from other galleries and sliders.
Form Reform Data Picker provides data picking input blocks for Form Reform. The Table Picker Input is preconfigured to connect to Universal Content Puller table display widgets. Advanced settings allow the Table Picker Input to be configured to pick data from other HTML tables.
Extends Form Reform with form handler macros. Provides a new dashboard page at System & Settings > Form Reform > Form Reform Macros to manage macros, and form handlers to run macros.
A growing suite of resources to assist those developing blocks, handlers and more complex forms for Form Reform.
While you may have plans to implement some much more complex forms using Form Reform, we strongly recommend you start with a simple form such as our contact form example in order to review the basic principles of using Form Reform before you move onto anything bigger.