Skip to content

Releases: verbb/formie

1.4.20

12 Oct 03:29
Compare
Choose a tag to compare

Added

  • Added verify = false to Guzzle requests for Webhook integrations, when devMode is enabled.
  • Added EVENT_BEFORE_SUBMISSION and EVENT_BEFORE_INCOMPLETE_SUBMISSION events.
  • Added EVENT_BEFORE_SPAM_CHECK and EVENT_AFTER_SPAM_CHECK events.
  • Improved error message when email notification body content returns no content. Some email providers hard-fail when trying to send an empty email.

Fixed

  • Fixed Agree fields not working correctly for Email Notification conditions.
  • Fixed Dropdown fields not working correctly for Email Notification conditions.
  • Fixed Date fields not working correctly for Email Notification conditions.
  • Fixed Group and Repeater fields not working correctly for Email Notification conditions.
  • Fixed Table fields inside a Group field not saving correctly.
  • Fixed an issue where Group fields, inner fields would receive the incorrect namespace, when validation for the form page failed and page reload enabled.
  • Fixed an error for the Webhook integration in some cases when an error occurs.
  • Fixed Tag fields and their beforeInit options not being applied to Tagify.
  • Fixed Date fields and their beforeInit options not being applied to Flatpickr.
  • Fixed relations in POST requests for submissions being always present, when not always needed.
  • Fixed extraFields in POST requests for submissions being always present, when not always needed.
  • Fixed an error with contains, startswith and endswith field conditions, when dealing with empty values.
  • Fixed Page Reload forms not evaluating conditions in Group fields, for multi-page forms.
  • Fixed Group fields not evaluating field conditions correctly when sending email notifications.
  • Fixed sub-fields within Group fields not working correctly for variable picker, for email notifications.
  • Fixed when attaching the PDF to an email notification, can sometimes clear the body content of the email.
  • Fixed Phone number field values sometimes showing () when a country code wasn't provided.
  • Fixed populateFormValues not working with Phone fields.
  • Fixed a deprecation when calling populateFormValues when populating elements fields.
  • Fixed individual permissions for submissions not working for user permissions.
  • Fixed Agree fields not using their "Checked/Unchecked Value" values in integrations, when the destination field in the integration allows string text.

1.4.19

30 Sep 12:42
Compare
Choose a tag to compare

Fixed

  • Fixed an error when garbage-collecting orphaned fields, where globally-context fields with the same handle would have their content columns removed. This only affects installs where a Formie field and non-Formie field have the same handle and the Formie field has been marked as orphaned (the owner form has been deleted). As such, this should only happen in rare circumstances.
  • Fixed email fields set to have unique values not working correctly for multi-page forms.

1.4.18

26 Sep 06:13
Compare
Choose a tag to compare

Added

  • Added beforeInit and afterInit JS events for Tag fields.

Fixed

  • Fixed Date fields (calendar and date picker) not saving time values correctly.
  • Fixed Email fields with "Unique Value" set throwing an error on Craft 3.7+.
  • Fixed Date fields throwing an error when used in the submission element index columns.
  • Fixed Name and Address fields not having their instructions position set correctly for new fields.
  • Fixed Date fields not always returning a formatted date as a string, when used in integrations.
  • Fixed Mailchimp email marketing integration not casting phone numbers to the correct type in some instances.
  • Allow element fields to modify the element query in templates.

1.4.17

16 Sep 22:54
Compare
Choose a tag to compare

Added

  • Added onFormieCaptchaValidate and onAfterFormieValidate JS events.
  • Added support for user photo uploading (via File Upload fields), for User element integrations.

Changed

  • Changed reCAPTCHA captchas now use onFormieCaptchaValidate to hook into validation, allowing third-party handling of validation events for JS.

Fixed

  • Fixed placeholder text for Phone field in the form builder, when country dropdown was enabled.
  • Fixed checkbox fields having their default options set when editing a submission.
  • Fixed submission titles not generating correctly in some circumstances.
  • Fixed Recipients dropdown field when an option has no value, not validating correctly.

1.4.16

12 Sep 23:48
Compare
Choose a tag to compare

Added

  • Added FORMIE_INTEGRATION_PROXY_REDIRECT env variable for integrations.
  • Added Current URL (without Query String) option for hidden fields.
  • Added ability for hidden fields to set their column type, to assist with capturing large field values.

Changed

  • Changed Freefom migrations for a HTML field to use hash as the field handle instead of a randomly generated handle.
  • Changed Freefom migrations for a HTML field to use HTML as the field name.
  • Freeform/Sprout Forms migrations now auto-prefix fields that have reserved words as their handle.

Fixed

  • Fixed migrated email notifications not respecting the "Default Email Template" plugin setting.
  • Fixed migrated forms not respecting the "Default Form Template" plugin setting.
  • Fixed an error when migrating a Freeform form, containing a HTML field.
  • Fixed Freeform/Sprout Forms migrations when fields contain invalid characters.
  • Fixed "Undefined variable" error when failed email notifications with attachments throws an error itself.
  • Fixed an error when running garbage collection on deleted forms.
  • Fixed an error when trying to migrate "all" Freeform forms.
  • Fixed Phone field country dropdown throwing an error when a default country was picked, but not included in the "Allowed Countries".
  • Fixed an error when saving a submission from the command line.
  • Fixed Checkboxes field not applying default checkboxes.

1.4.15

04 Sep 06:05
Compare
Choose a tag to compare

Added

  • Added support for user-based variables in email notifications to support the recorded user on the submission when "Collect User" is enabled on forms.
  • Added option to Mailchimp integration to append tags. (thanks @boundstate).
  • Added support for Zoho CRM jsonarray field types.
  • Element field values used in integrations can now include disabled elements.

Fixed

  • Fixed checkbox validation not working correctly when "Validate When Typing" was enabled.
  • Fixed conditions used in forms triggering the "content changed" unload warning, when nothing has changed.
  • Fixed element fields when used in conditional rules not working correctly.
  • Fixed group fields not displaying values correctly, or saving properly in submissions.
  • Fixed populateFormValues() changing the current language for multi-site installs.
  • Fixed multi-page forms when marked as spam on a page, not being able to finalise submission.
  • Fixed Phone field country dropdown throwing an error when live validation is set for the form.
  • Fixed Phone field country dropdown throwing an error when a default country was picked, but not included in the "Allowed Countries".
  • Fixed some failed queue jobs for integrations storing large amounts of cache data when not needed.
  • Fixed an error when applying project config, with a stencil with the (incorrect) value of defaultStatusId = 0.
  • Fixed table fields in notification emails not rendering correctly when containing time or date columns.
  • Fixed bouncer.js not processing grouped checkboxes correctly.
  • Fixed bouncer.js not properly listening to checkbox change events.
  • Fixed element fields not having their "Label Source" and "Options Order" settings use "Title" as the default for new fields.

Removed

  • Removed conditional handling for fields when editing a submission. Too complicated to handle both front-end fields and Craft fields.

1.4.14

17 Aug 05:45
Compare
Choose a tag to compare

Fixed

  • Fix recipients field values not saving correctly.

Removed

  • Removed columnWidth from GraphQL queries (it did nothing).

1.4.13

08 Aug 13:54
Compare
Choose a tag to compare

{warning} Please read through the Breaking Changes before updating.

Added

  • Added field.getHtmlDataId() which replaces field.getHtmlId().
  • Added data-fui-id attribute to all inputs for default templates.
  • Added typeName and inputTypeName to the FieldInterface for GQL queries.
  • Added prefixOptions to Name field for GraphQL queries.
  • Added countryOptions to Address field for GraphQL queries.
  • Added CsrfTokenInterface to GraphQL FormInterface for easier fetching of CSRF details.
  • Added countryOptions to Phone field for GraphQL queries.
  • Added some error-handling messages to failed-to-parse integration settings.
  • Added users to User fields for GraphQL queries.
  • Added tags to Tag fields for GraphQL queries.
  • Added entries to Entry fields for GraphQL queries.
  • Added categories to Category fields for GraphQL queries.

Changed

  • All field inputs now have a data-fui-id, which replaces the id attribute which has been updated to be unique.
  • For multi-page, page reload forms, every page is now rendered, and all page data is submitted. This is now the same behaviour as Ajax-based forms. Validation still only occurs every page submission.
  • Changed Phone::getCountries to Phone::getCountryOptions.
  • Changed Address::getCountries to Address::getCountryOptions.

Fixed

  • Fixed an error when fetching a submission via its uid, not populating form attributes correctly.
  • Fixed rendering the same form multiple times would lead non-unique labels. Causing issues for checkbox/radio/agree fields.
  • Fixed rebuild project config not typecasting some settings correctly (therefore showing changes).
  • Fixed multiple rows in table fields not saving correctly.
  • Fixed multi-page, page reload forms with conditions not working correctly, when page or field conditions are based off previous page values. Ajax-based forms do not have this issue.
  • Fixed progress value being incorrect for Ajax-based forms, when clicking on page tabs.
  • Fixed Name fields incorrectly casted as NameInputType for GraphQL mutations.
  • Fixed Recipients field reporting radio options as multiple.
  • Fixed Table fields not sending the correct input type for GraphQL mutations.
  • Fixed Recipients field incorrectly encoding options for submissions in the control panel, throwing an error.
  • Fixed Recipients field not casting to the correct type for Checkboxes for GraphQL.
  • Fixed FormSettings::submitActionMessageTimeout not casting as an int.
  • Fixed Active Campaign CRM integrating overwriting fields for contacts when mapped but no value set.
  • Fixed integrations throwing an error for some fields.
  • Fixed hidden fields configured with a cookie value, getting undefined set if the cookie didn't exist.
  • Fixed the Prefix for a Name field defaulting to the first option when viewing a submission.
  • Fixed GraphQL mutation validation errors not always returning a JSON string.
  • Fixed GraphQL submission mutations not validating correctly.

Breaking Changes

  • If you rely on the id attribute of any <input> or <select> element on the front-end, these have been changed in order for them to be truly unique. For instance fields-formie-form-formHandle-formField now becomes fields-formie-form-56526107b0a3e1eb3-formHandle-formField. Please instead use the data-fui-id attribute for the old value if you need it.

1.4.12

28 Jul 01:56
Compare
Choose a tag to compare

Fixed

  • Fixed data-encrypted fields incorrectly using their encrypted content for integrations.
  • Fixed an error when triggering an integration queue job for a non-existant submission.
  • Fixed an error with logging element integration payload fields.
  • Fixed Craft 3.6 incompatibility with Craft 3.7 changes.

1.4.11

25 Jul 12:45
Compare
Choose a tag to compare

Added

  • Added email, notification, notificationContent and submission to email notification queue jobs, to assist better with troubleshooting failed queue jobs.
  • Added payload to integration queue jobs, to assist better with troubleshooting failed queue jobs.

Fixed

  • Fixed handling of element integrations where their objects are too complex for queue-logging.
  • Fixed element integrations not firing EVENT_BEFORE_SEND_PAYLOAD and EVENT_AFTER_SEND_PAYLOAD.
  • Removed incorrect placeholder attribute from Agree field input.
  • Fixed some email notification fields not filtering out incorrect values like emojis.