Form processor for MODX

Creator: Sterc Agency (sterc)

2.2.2-pl (190 KB) Other Versions Need help installing this extra?


About FormIt

Formit is an extra to create advanced web forms. Key features:

  • Automatic validation and custom validator options
  • Auto reply to visitor + email to owner(s)
  • Multiple attachments
  • Submitted forms can be automatically saved in the Formit component
  • Submitted forms can be exported to CSV, based on filters
  • Redirect to thank-you pages for optimal tracking in your analytics software (e.g. Google Analytics funnels)
  • Add your own hooks as Snippets to handle forms dynamically
  • Spam protection
  • Dynamic country/state dropdown lists

Official documentation here (still being updated to 2.2.2 version):


March 19, 2015
Supported Versions
2.2 – Current
Supported Database
MySQL, Microsoft SQL Server

New in FormIt 2.2.2

New in 2.2.2

    • Added CMP for the saved forms
    • Fixed whitespace PR on required checkboxes

    New in 2.2.1

      • Updated numbers generation for math captcha #5
      • German translation #10
      • Added missing formit.notregexp lexicon #15
      • Specify explicitely return-path fixes #19 #20
      • fix addAttachment() typo #23
      • Fixed typo in adding of the attachments #24
      • Add the possibility of redirectTo=formfield #26
      • Added attachments for auto-reply and Added ability to use @CODE as tpl #29
      • Update snippet.formitisselected.php #12
      • Canadian options for FormitStateOptions

      New in 2.2.0

      • [#8382] Prevent issue with checkboxes/radios causing text-parsing problems with required validator
      • Fixed issue with custom error message for vTextPasswordConfirm not respected
      • [#9457] Fixed issue with commas in values causing errors with FormItIsChecked & FormItIsSelected
      • [#9576] Add ability to translate country options
      • Add check for preHook errors before processing postHooks
      • Add option, defaulting true, to trim spaces from sides of values before validation
      • [#8785] Fix ESTRICT error in fiDictionary

      New in 2.1.2

      • Various language updates
      • [#7250] Fix issue with 0 not passing :required filter

      New in 2.1.1

      • [#8204] Fix issue with FormItAutoResponder and processing of MODX tags

      New in 2.1.0

      • [#7620] Allow for MODX tags in email templates, as well as pass-through of snippet properties to tpl
      • [#7502] Add ability to find type of hook by using $hook->type
      • [#8151] More sanity checking for FormItAutoResponder and replyTo addresses
      • Fix useIsoCode issue in FormItCountryOptions
      • Update German translation
      • Enhance validation templating for validationErrorBulkTpl
      • Add &country option to FormItStateOptions to allow loading of non-US states (currently us/de)

      New in 2.0.3

      • Update Czech translation
      • Fix issue with French accents in translation
      • [#6021] Refactor Russian reCaptcha translations
      • [#6618] Standardize XHTML in reCaptcha usage

      New in 2.0.2

      • [#4864] Fix issue with isNumber not allowing blank fields
      • [#5404] Fix issues with checkboxes and array fields in FormItAutoResponder
      • [#5269] Fix issues with checkboxes in various forms in emails
      • [#5792] Update reCaptcha URLs

      New in 2.0.1

      • [#5525] Add &allowFiles property, that when set to 0, prevents file submissions on form
      • [#5484] Fix issue with double validation error spans
      • Fix issue where config was not passed to hooks
      • Update German translation

      New in 2.0.0

      • [#3514] Add ability to customize validator error messages per FormIt form and per field
      • [#4705] Add regexp validator
      • [#5454] Fix issue with customValidators property in 2.0.0-rc2
      • Fix issue with reCaptcha loading in 2.0.0-rc1
      • Major reworking of main FormIt script to be OOP
      • Add over 150 unit tests to prevent regression
      • [#5388], [#5240] Fix issue with FormItCountryOptions and &useIsoCode
      • Fix issue with FormItStateOptions and &useAbbr
      • [#5267] Fix issue with FormItRetriever and array fields

      New in 1.7.0

      • Add ability to have "Frequent Visitors" optgroup in FormItCountryOptions, moving specified countries to the top of the list in an optgroup
      • Add missing property translations for FormItStateOptions snippet
      • Fix small issue with stored values after validation of fields
      • Add FormItStateOptions snippet for easy U.S. state dropdowns
      • Add FormItCountryOptions snippet for easy country dropdowns
      • [#5101] Fix issue with emailMultiSeparator and emailMultiWrapper default values
      • Fix issue with bracketed field names being added as extra fields post-validation with . prefix

      New in 1.6.0

      • [#4708] Add support for bracketed fields, such as contact[name]
      • [#5038] Fix uninitialized variable warnings in reCaptcha service
      • [#4993] Add Italian translation and fix recaptcha links
      • Fix issue where fields could be removed via DOM from form and be bypassed
      • Add &emailMultiSeparator and &emailMultiWrapper properties for handling display of checkboxes/multi-selects in email hook

      New in 1.5.6

      • [#4564] Fix redirectTo with non-web contexts

      New in 1.5.5

      • [#4168] Add emailConvertNewlines property for handling newlines in HTML emails
      • [#4057] Prevent math hook from generating similar numbers
      • [#4302] Cleanups to FormItAutoResponder snippet
      • [#3991] Fix issue with checkbox values in emails

      New in 1.5.4

      • Fix issue with math hook where error placeholders were incorrect
      • Fix issue where emailHtml property was not respected in email hook
      • Fix issue where hooks were not passed customProperties array
      • [#51] Allow blank fields to be passed with :email validator
      • [#55] Allow all fields to be accessed in custom validators

      New in 1.5.3

      • [#40] Add ability to display all error messages in bulk at top, added validationErrorBulkTpl for templating each one
      • [#52] Add a general validation error message property, validationErrorMessage, that shows when validation fails
      • [#53] Fix bug that prevented recaptcha options from working
      • Add a generic validation error placeholder in FormIt to allow for general messages
      • [#50] Trim each hook specification in hooks calls
      • [#49] Ensure reCaptcha service instance is unique for each FormIt instance
      • [#47] Ensure email validator checks for empty string
      • [#42] Can now include field names in error strings via field placeholder
      • [#39] Fix issue with FormItIsChecked/Selected to prevent output from occurring if not checked
      • [#37] Fix allowTags validator to work, and work with parameters encapsulated by ^


      Current Releases

      January 23, 2021
      2.2 – Current
      January 10, 2020
      2.2 – Current
      January 10, 2020
      2.2 – Current
      April 18, 2019
      2.2 – Current
      April 12, 2019
      2.2 – Current
      February 18, 2019
      2.2 – Current
      View Deprecated Releases

      More from Sterc Agency



      Batcher is a batch-editing Extra for MODX Revolution. It allows you…



      Digital Signage is a MODX Extra by Sterc.


      Call to Action TV

      Added missing Dutch lexicon


      Mailchimp for FormIt

      Package for subscribing users in Mailchimp lists using FormIt.