Form processor for MODX

Creator: Sterc Agency (sterc)

2.2.3-pl (191 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.3 version):


April 10, 2015
Supported Versions
2.2 – Current
Supported Database
MySQL, Microsoft SQL Server

New in FormIt 2.2.3

New in 2.2.3

    • Added encryption to saved forms
    • Added formname to grid
    • Saved form is now returned from the hook
    • Export unlimited items
    • Add RU translation
    • Fixed some bugs

    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.