Changelog
6.0.42018-11-21
Fixes
- Fixed a bug where the
search:field="value"
parameter did not work with exact searching.
6.0.32018-04-30
Changes
- Further updates for compatibility with ExpressionEngine 4.2+. Addresses UI issues with assigning fields to forms and editing field layouts in Submissions CP view.
6.0.22018-04-24
Changes
- Updated for compatibility with ExpressionEngine 4.2+. Addresses a critical issue with assigning fields to forms and editing field layouts in Submissions CP view.
6.0.12018-03-01
Fixes
- Fixed a bug where Freeform Classic would not install on sites with
utf8mb4
character set. - Fixed a bug where the Country fieldtype was using a deprecated call.
- Fixed a bug where some Freeform template tags were using deprecated
assign_parameters()
calls.
6.0.02017-12-04
::: danger Important: Freeform Classic has been discontinued but will continue to be available until sometime in 2018. Users should strongly consider switching to the new Freeform (A.K.A. Freeform Next). :::
Changes
- Updated for compatibility with ExpressionEngine 4+ (only). For EE3, please use Freeform Classic 5.x.
- Renamed Freeform Pro / Freeform Classic Pro to just Freeform Classic (free version is no longer available).
5.3.02017-12-04
::: danger Important: Freeform Classic has been discontinued but will continue to be available until sometime in 2018. Users should strongly consider switching to the new Freeform (A.K.A. Freeform Next). :::
Changes
- Renamed Freeform Pro / Freeform Classic Pro to just Freeform Classic (free version is no longer available).
5.2.22017-10-17
Fixes
- Fixed a bug where Field Layout Editor (in Submissions list) would not work on MSM sites.
5.2.12017-09-05
Fixes
- Fixed a bug where fields would be displayed in alphabetical order instead of Composer field order when editing/viewing Freeform submissions in CP.
- Fixed a bug where Fields from other MSM sites would show up in Fields area while creating/editing a form when 'Show Data from All Sites' preference was set to NO.
5.2.02017-06-06
Changes
- Renamed Freeform / Freeform Pro to Freeform Classic / Freeform Classic Pro respectively, in light of Freeform Next launch.
Fixes
- Fixed a bug where email notification templates using the
{all_form_fields}
variable pair would not respect the field order set in Composer.
5.1.22016-12-29
Fixes
- Fixed a compatibility issue with ExpressionEngine 3.4.5+.
- Fixed a bug where the custom error page feature would not work when a template is saved as a file.
5.1.12016-11-03
Fixes
- Fixed a bug where Freeform would show an error when accessing its control panel with PHP 5.3.
- Fixed a bug where Freeform wouldn't work with third-party Freeform field types.
5.1.02016-09-22
Additions
- Added ability to customize and set a link to Freeform entries on the front end from the Freeform control panel Entries view, thus allowing for a customized and/or printer-friendly view of submissions.
Fixes
- Fixed a bug where Freeform Submissions/Entries view in control panel would not respect the "Show field on submissions/moderation CP page?" settings for each field.
- Fixed a bug where exporting and Field Layout editor in CP Entries view would sometimes show a special character instead of a space for some column titles.
- Fixed a bug where the Fields list in the left column of Composer would sometimes glitch if the form was short/small enough.
- Fixed a bug where setting the Dynamic Recipients field to required in Composer would not show that it was set to required.
5.0.52016-08-19
Fixes
- Fixed a bug where the 'Field Length' input field would show up twice when creating/editing Freeform fields.
- Fixed a bug where the 'Submit' button in Composer view was not styled correctly.
- Fixed a bug where pagination did not work correctly in the Submissions view in Freeform control panel.
- Fixed a bug where an error would show up when editing Freeform fields if no forms existed.
5.0.42016-06-22
Changes
- Updated for compatibility with ExpressionEngine 3.4.
Fixes
- Fixed a bug where the short name auto-generating JS was automatically overwriting existing short names when editing forms, fields, etc.
- Fixed a bug where keyword banning setting was not working.
- Fixed the
IS_EMPTY
search keyword to include or exclude NULL fields accordingly.
5.0.32016-04-29
Additions
- Added support for PHP7.
5.0.22016-04-19
Additions
- Added Troubleshooting guide to Demo Templates.
Changes
- Updated User for compatibility with ExpressionEngine 3.3's new icon set in the control panel.
Fixes
- Fixed a bug where the
error_page
feature returned an error. - Fixed a bug with visual inconsistencies with "Add to Form" fields that spanned more than 1 line.
5.0.12016-03-18
Additions
- Added Bootstrap styled/formatted Composer Template example to Demo Templates.
Changes
- Updated the "Form Fields" section interface when creating EE Template-based forms to allow re-ordering of custom fields.
Fixes
- Fixed a bug where Freeform extension hooks were using a deprecated call.
5.0.02016-03-14
Additions
- Updated Freeform to be compatible with ExpressionEngine 3+ (only). Freeform 4.x is required for ExpressionEngine 2.x.
- Added demo templates to Freeform to help demonstrate and teach usage of add-on.
- Added
orderby=""
,sort=""
andlimit=""
parameters to Freeform:Form_Info tag.
Removals
- Removed Mailing List fieldtype, as it is no longer supported in ExpressionEngine 3.
- Removed Freeform helper Accessory, as Accessories are no longer supported in ExpressionEngine 3.
- Removed Freeform 3.x Migration utility. Freeform 3.x users should upgrade to Freeform 4.x on EE2 first, then to EE3 and Freeform 5.x.
- Removed
text_direction_row
helper function for custom fieldtypes. - Removed underscored
_yes_no_row
field helper. Useyes_no_row
.
4.2.52016-06-22
Additions
- Added support for PHP7.
Fixes
- Fixed a bug where file downloads inside control panel did not work at all.
- Fixed a bug where keyword banning setting was not working.
- Fixed the
IS_EMPTY
search keyword to include or exclude NULL fields accordingly. - Fixed a bug where search criteria that had the same words as a Freeform custom field short name would show no results from entries.
- Fixed a bug where the prevent_duplicate_on="ip_address" parameter was not being checked correctly.
4.2.42015-09-23
Fixes
- Fixed a bug where multi-page forms in EE 2.10+ could have issues using the 'previous page' submit feature.
4.2.32015-06-23
Additions
- Added a {freeform:attachment_count} variable to the Freeform:Entries tag to display the total number of file attachments for a Freeform entry.
Fixes
- Fixed a bug in notification emails containing attachment info where {fileurl} would display a URL-encoded URL instead of a regular URL.
- Fixed a bug where EE 2.10.x's broken legacy support for mime types was causing errors downloading large exports.
- Fixed a bug where when using more than 1 Freeform fieldtype fields, despite having different return URLs set, one would overwrite the next one's return URL.
- Fixed some display issues with Freeform accessory.
- Fixed formatting and display of delete confirmation pages.
4.2.22015-02-18
Additions
- Added
{composer:field_description}
variable for use in Composer Templates. - Added a delete option for uploaded files in the control panel entry edit screen.
Changes
- Updated styles in preference area to allow for easier reading of descriptions.
- Updated nation ban checking to avoid errors on local machines.
Fixes
- Fixed a bug where entry statuses would return to default status on edit, unless the new/current status was included on submit.
- Fixed a bug where the Freeform:Entries tag could merge results that were exactly the same (ex: 2 forms with the exact same fields, data, and entry IDs).
4.2.12015-02-02
Additions
- Added
{freeform:form_id}
variable to outer and inner template variables with Freeform:Form/Edit. - Added index to
exp_freeform_params
database table to assist in faster deletion calls.
Changes
- Updated duplicate prevention checking to now always return FALSE on an empty field.
- Updated File Upload Field upload options to now be restricted to the site that the field was created on (affects MSM installs), unless the 'Show Data From All Sites' preference is enabled.
Fixes
- Fixed a bug where edit data wasn't being pulled when saving an edited form, thus affecting items like file uploads regarding
required=""
params and other issues. - Fixed a bug where editing a form entry with more than one file upload field would only show a link to the first upload field's uploads.
- Fixed a bug where deleting a file from the 'View Files' control panel interface for the File Upload fields would delete all files for the entry instead of just the selected files.
- Fixed a bug where the 'File Field Uploads' button in the Form Entries manager would only show a single field's uploads.
- Fixed a bug where mailing list caching was overzealous, causing multiple mailing list fields in the same form to always show the same lists.
- Fixed a bug where the 'Countries' fieldtype could come up empty in some situations.
- Fixed a bug where table sorting was not working in the Control Panel in EE 2.9.x+.
- Fixed a bug where a blank 'Allowed File Types' choice would give an incorrect error message when creating a File Upload field.
- Fixed a bug where percent symbols in Composer paragraph text could cause a javascript error that prevents the text from being saved.
- Fixed a bug where Freeform Fields and Composer Templates from other sites would show up as options in Composer when the 'Show Data From All Sites' preference was disabled.
4.2.02014-07-25
Additions
- Added email logging feature to assist in the troubleshooting of sending notification emails.
Fixes
- Fixed a bug where migrated fields from Freeform 3.x with illegal characters could cause errors with entry fetching.
- Fixed a bug where errors could occur if another add-on loads the template parser before notification parsing occurs.
4.1.82014-05-12
Additions
- Added a
freeform:field_errors
conditional, for use with inline errors alongside thefreeform:general_errors
conditional.
Fixes
- Fixed a bug where the
pending
link in the accessory pointed to all entries instead of the entry moderation page. - Fixed a bug where the
stripslashes()
call to the final template on Freeform:Form was affecting fields with HTML5 regex validation. - Fixed a bug where CAPTCHA checking was not accounting for server offset settings and could result in failed CAPTCHAs, even when the input matched.
- Fixed a bug with
no_results
where template errors could occur in some situations.
4.1.72014-04-08
Fixes
- Fixed a bug where Freeform would conflict with some other add-ons in EE 2.8.
- Fixed a bug where
session_id
fetching was causing errors in EE 2.5.x.
4.1.62014-04-02
Fixes
- Fixed a bug where
next_page
andprevious_page
were incorrectly being parse protected in the{freeform:pagination_links}
variable pairs. - Fixed a bug in notifications with the 'From Name' and 'From Email' settings.
4.1.52014-03-22
Fixes
- Fixed a bug where Freeform could error on updating the module.
4.1.42014-03-20
Additions
- Added detection for PHP 5.3 when directory mapping installable fields. This adds a performance boost when possible.
Changes
- Updated for compatibility with ExpressionEngine 2.8.
- Updated secure forms handling for EE 2.8.
- Updated documentation regarding the
require_captcha
parameter and logged-in members. Freeform cannot override the EE 'Require Member Captcha' preference when set to 'No'.
Fixes
- Fixed a bug where the
orderby="random"
parameter wasn't working in Freeform:Entries. - Fixed a bug where template parsing in Composer preview and notifications weren't utilizing the full abilities of EE's template parser and added a missing
template_post_parse
hook. - Fixed a bug where
from_email
andfrom_name
were not accepting changes from thefreeform_module_user_notification
,freeform_module_admin_notification
, andfreeform_recipient_email hooks
via$this->variables
. - Fixed a bug where having parameters on multiple lines with
{freeform:page:1}
variable pairs could result in a PHP error. - Fixed a bug where Captcha was being required for logged-in members even with the EE 'Require Member Captcha' preference set to 'No'.
4.1.32013-10-16
Fixes
- Fixed a bug where default fieldtypes might error during installation on Windows servers.
- Fixed a bug where editing a form could show PHP errors in the control panel.
- Fixed a bug where form entry filtering was failing in IE8 due to the use of an old reserved keyword in JavaScript.
4.1.22013-09-17
Fixes
- Fixed a bug where the Freeform fieldtype would trigger errors with PHP 5.2.x and EE 2.7.
- Adjusted the random hash used to store dynamic recipient emails because ISS servers incorrectly reuse unique values.
4.1.12013-09-16
Fixes
- Fixed a bug where the Freeform fieldtype could error on update in EE 2.7.
- Fixed a bug where the Freeform fieldtype was displaying unparsed tags and a PHP error in the post publish preview area in EE 2.7.
4.1.02013-09-13
Additions
- Added an option for exports to format entry and edit dates on output using the CP date format preference.
- Added the ability to put attribute parameters on the
freeform:submit
variable (e.g.:{freeform:submit attr:value="Submit, yo!" attr:class="submission-power"}
). - Added the
{freeform:field_description}
variable to the Freeform:Form{freeform:all_form_fields}
variable pair. - Added an accessory to show submissions and field names for forms to aid in template writing.
- Added the
{freeform:submit_previous}
variable in the Freeform:Form tag to allow moving backward in multipage forms after submitting data on the current page so it is not lost. - Added "Submit Previous" option for Composer-based forms.
- Added Sticky controls option for Composer so insertable elements in the left navigation are fixed on long forms. Default on.
- Added code to help prevent issues with some ISPs and sending notifications where subject lines containing newlines might cause the emails to fail to send.
Changes
- Updated performance with Composer output with multipage forms. Now pages are only rendered if they are detected as the current page. This is enabled by default and can be disabled, if need be, with the
disable_mp_performance="yes"
parameter.
Fixes
- Fixed a bug where the Freeform Channel fieldtype could show PHP errors in ExpressionEngine 2.6.
- Fixed a bug where entry dates in the CP would sometimes show Epoch instead of the proper, localized date in versions of ExpressionEngine less than 2.6.
- Fixed a bug where strings in the Freeform:Form
page_marker
parameter containing regular expression symbols would not correctly move to subsequent pages. - Fixed a bug where HTML was not allowed in multi-item lists used in Radio, Checkbox Group, Select, and Multi-select fieldtypes.
- Fixed a bug where protocol-agnostic URLs (starting with
//
instead ofhttp
orhttps
specifically), were not properly accepted by any Freeform tags. - Fixed a bug where MySQL errors could occur when searching on multiple form IDs with Freeform:Entries.
- Fixed a bug where searching for entries in the Freeform CP when user sessions are using session IDs and cookies at the same time was sending the user to the login page.
- Fixed a language error in Preferences.
- Fixed a bug where editing a multipage form with a required file upload would report the file field not filled if no new file was added but the previous one was kept.
- Fixed bugs where dynamic recipients and user recipients were not getting data properly carried over when using inline errors and multipage navigation back and forth when using Composer.
- Fixed a bug where malformed field attributes using
{freeform:field:FIELD_NAME}
would result in a PHP error instead of simply failing to accept the attributes. - Fixed a bug in EE 2.7+ where forms would not function with CSRF protection enabled.
- Fixed a bug where some types of errors would not work properly with custom error pages.
- Fixed a bug where duplicating a form with fields chosen could result in an error on the edit screen for the duplicated form.
4.0.122013-04-23
Additions
- Added
{FIELD_NAME:form_id}
to Freeform's Channel fieldtype tag parsing. - Added a preference for disabling the 'Missing Submit Button' warning in Composer.
- Added a preference (default on) to protect required data from third party extensions that accidentally malform needed output on Freeform extension hooks.
Changes
- Updated for compatibility with ExpressionEngine 2.6+.
Fixes
- Fixed a bug where
%id%
was not being replaced in radio attributes. - Fixed a bug where IP address and member ID were not being checked for duplicates on save form.
- Fixed a bug where a member ID of 0 could result in duplicates checked by IP address on accident.
- Fixed a bug where a file upload error happening on save after validation might cause a PHP error.
- Fixed a bug with migrations where table renaming could fail.
- Fixed a bug where having '0' as a multi-item list value (Select, Checkbox Group, Radio, etc.), could result in single choices always being recorded as containing item '0' as well as the user choice.
- Fixed a bug where when submitting a Composer-based form without a Submit button, getting the 'submit button missing' warning, then clicking 'continue anyway', would result in an error instead of properly saving.
- Fixed a bug where PHP errors could occur when installing the fieldtype by itself.
- Fixed a bug where PHP errors could occur when downloading files from the file upload menu in the control panel.
4.0.112013-03-14
Additions
- Added a quicksave button to Freeform Composer.
- Added
{composer:column_count}
and{composer:field_count}
variables to the Freeform:Composer tags. - Added download buttons to the control panel entries file upload view area for force downloading files.
- Added links to file upload preference pages in the control panel entries file upload view area.
- Added
data.return_url
to Freeform:Form AJAX submit response due to issues withdata.return
and IE8's JS interpreter seeing it as a keywordreturn
.
Changes
- Updated Freeform to now allow automatic updating rather than requiring manual updating in the module at all times.
- Updated the control panel entries file upload view area to build its own links to files in order to mitigate issues with files uploaded above root.
- Updated default output of form methods to be lowercased
post
to assist users in complying with older XHTML formats.
Fixes
- Fixed a bug where the Hidden fieldtype (Pro) would not accept
attr:
parameters. - Fixed a bug where some fields were outputting entities for plain text emails.
- Fixed a bug where the
freeform:mp_data:FIELD_NAME
andfreeform:edit_data:FIELD_NAME
variables from multi-select fields would output unparsed data. - Fixed a bug where an incorrect 'Invalid Form id(s) submitted' error would occur when in fact the error is caused due to missing POST data when submitting Freeform:Form.
- Fixed a bug where the
date_range_start
anddate_range_end
parameters on the Freeform:Entries tag were not properly accepting all types of PHP datetime formats. - Fixed a bug where multiple status filtering (
status="status1|status2"
) was not working in Freeform:Entries. - Fixed a bug where fields with multi-item choices (Multiselect, Checkbox Group, Radio), would not respect the 'backspace' parameter in Freeform:Entries.
- Fixed a language issue in the control panel where instructions notate
{all_form_fields}
where it should be saying{freeform:all_form_fields}
. - Fixed a bug where Notification templates using the
{all_form_fields}
variable pair were not ordering data by the field order set in the form edit screen in the CP and were going in Alphabetical order instead. - Fixed a bug where some Freeform Composer and Control Panel Entries items via JavaScript wouldn't properly display some foreign characters.
- Fixed a bug where some older upload prefs for migrated file upload fields might not be counted.
- Fixed a bug where editing entries in Textarea fieldtypes would incorrectly encode HTML.
- Fixed a bug where the
recipient_email_user
andrecipient_email
fields were not properly requirable in Composer or in Freeform:Form. - Fixed a bug where migrations would add a field of type VARCHAR to legacy tables and potentially overflow the max fields available and throw MySQL errors. Changed type to TEXT.
- Fixed a bug where migrations from Freeform 3.x would halt if a legacy field was using a MySQL reserved word such as 'group'.
- Fixed a bug where migrations of text fields would not carry over the field length settings and would error on import.
- Fixed a bug where requiring File Upload field types would not properly error when no files were uploaded.
- Fixed a bug where requiring fields that pass arrays to PHP, like Checkbox Groups, could result in a PHP error on submission of forms.
- Fixed a bug where the
{freeform:filename}
,{freeform:extension}
,{freeform:filesize}
, and{freeform:fileurl}
variables were not parsing correctly when used in the{freeform:field:FIELD_NAME}
variable pair in Freeform:Entries. - Fixed a bug where using
notify_on_edit="yes"
with Freeform:Edit would only email edited form data and not all form data including unedited data.
Removals
- Removed unnecessary trimming of Freeform Composer output data.
4.0.102012-12-21
Fixes
- Fixed a bug where MySQL errors would occur on any template form in ExpressionEngine 2.5.4+.
4.0.92012-12-17
Additions
- Added offline documentation files to download package.
Fixes
- Fixed a bug where field validation was not being run the same between the template version of new form entries and the control panel version, possibly causing errors for extension hooks.
- Fixed a bug where field errors that exist prior to fieldtype validation would not be prefixed for generic output types.
- Fixed a bug where the
last_page
andmultipage
class vars were missing from the control panel class object and could cause errors with entry hooks. - Fixed a bug where some class variables for
edit
,last_page
andmultipage
might not be available to hooks in the Freeform:Form tag. - Fixed a bug where putting multiple forms on the same page could result in the same form being displayed twice instead of two different forms as expected.
- Fixed a bug where a channel would not show up in multi-input fieldtypes as an option (multi-select, select, checkbox group, radio), if it didn't have any field groups assigned to it.
- Fixed a bug where multi-input fieldtypes would add blank rows at the end of output choices (multi-select, select, checkbox group, radio).
- Fixed a bug in both Freeform:Edit and multipage forms where using "inline_errors" would not carry over the inputs after an error had occurred.
4.0.82012-11-19
Additions
- Added a safety net for the
freeform_module_insert_begin
hook that checks for a returned input array and if none, replaces it with the input array existing before the hook call. This prevents irrecoverable errors with extensions not returning the form input array.
Fixes
- Fixed a bug where running multiple Freeform:Entries tags in the same template could sometimes cause errors.
- Fixed a bug where the wrong tag for
{attachment_count}
was in the notification builder. - Fixed a bug where blank values in the first line of multi-item fieldtypes were being filtered and removed.
- Fixed a bug where the "Reply To Email" field for notifications was not being parsed for variables.
- Fixed a bug where a value of "0" was not being accepted as a valid input when a field was set to required.
- Fixed a bug where the default formatting for dates was
Y-m-d H:s
instead ofY-m-d H:i
. - Fixed a bug in email notifications where multi-select data wasn't being parsed to its correct display data, and was instead showing raw data.
- Fixed a bug where using the
multipage_page_names=""
parameter would require the use of themultipage_page=""
parameter and wasn't auto-detecting segments. - Fixed a bug where the
{freeform:absolute_count}
variable in Freeform:Entries was not adjusting based on theoffset
parameter.
4.0.72012-10-03
Additions
- Added an option to File Upload fields to individually ignore system XSS filtering settings in case users are experiencing issues with uploading files and do not want to disable XSS filtering system-wide.
Changes
- Modified
recipient_email
to no longer be a reserved field name in order to allow the storage of recipient emails in a custom field.
Fixes
- Fixed a bug where the File Upload field could show an error while trying to throw a legitimate file upload error.
- Fixed a bug where forms could sometimes refuse to submit if using Captcha in Composer.
- Fixed a bug where uploading files in locales where commas are used to notate decimal places could cause SQL errors.
- Fixed a bug where JavaScript errors could occur if the server changed
application/json
response types totext/html
. - Fixed a bug where deleting entries with uploaded files could result in an error.
- Fixed a bug where having Captcha enabled in the system, but not having a captcha field in a composer layout would show an error when a user submitted the form on the front end.
- Fixed a bug where Admin Notification Emails would not show errors for invalid emails on the initial Form creation screen.
- Fixed a bug where used Captchas wouldn't properly delete in some situations.
- Fixed a bug where fields added to forms that received no input on posted forms could cause MySQL errors when MySQL strict mode is enabled.
4.0.62012-09-05
Additions
- Added the
allow_status_edit
parameter to the Freeform:Form and Freeform:Edit tags to allow the submission of a "status" field that can override the default status. - Added the
{freeform:statuses}
variable pair to the Freeform:Form and Freeform:Edit tags to populate existing statuses for a form field for setting/changing the status of an entry. - Added a 'Select All' checkbox to the migration utility to allow selecting of all collections to migrate.
Fixes
- Fixed a bug where the default Composer template was not calling Captcha with the
freeform:
prefix. - Fixed a bug where the selected composer template would not be used when previewing Composer output.
- Fixed a bug where statuses that were adjusted through the "status" parameter were not being saved.
- Fixed a bug with the Freeform 3.x -> 4.x migration utility where errors could occur with the MySQL strict flag enabled.
- Fixed a bug where the default date formatting on the
entry_date
insert for notifications was not using%
as required for ExpressionEngine formatting. - Fixed a bug where multi-option type fields would incorrectly suggest blank values for a value/label type setup.
- Fixed a bug where channels with empty field groups could show errors when using multi-select type fields.
- Fixed a bug where sending Base64 encoded data, containing UTF-8 special characters, to the browser and decoding it client side would result in garbled characters instead of the intended Unicode output.
- Fixed a bug where the
secure_action
andsecure_return
parameters might not properly enable HTTPS URLs. - Fixed a bug where the
form:action
parameter would add a second action instead of replacing the original on the form element. - Fixed a bug where file names for uploaded files were not getting properly renamed.
- Fixed a bug where file names with spaces in them would cause errors and send a blank email body.
- Fixed a bug where migrating from a lower version of Freeform that did not contain a preferences table could throw an error on upgrade.
- Fixed a bug where AJAX templates could error out when asp_tags are enabled in
PHP.ini
. - Fixed a bug where exports could run out of memory when many fields were in a single form.
- Fixed a bug where a language variable could collide with other add-ons and report incorrect error information.
- Fixed a bug where the
matching_fields
parameter would display a PHP error.
4.0.52012-08-14
Additions
- Added the ability to override the return URL of a form with a URI value in a field named 'return'.
Changes
- Moved the hooks:
freeform_module_user_notification
,freeform_module_admin_notification
, andfreeform_recipient_email
to occur after notification template parsing in order to work more like they did in Freeform 3.x. - Modified custom CP CSS to better override popular CP themes: Sassy CP, NSM Override, and Nerdary, and adjusted the non-custom CP theme to be better compatible with the aforementioned.
- Modified
recipient_user_email
to no longer be a reserved field name in order to allow the storage of user emails in a custom field. - Removed the prevention of naming fields
subject
andmessage
and adjusted the migration script for Freeform 3.x -> Freeform 4.x to reflect it.
Fixes
- Fixed a bug in migrations where fields might get accidentally duplicated if they were in more than one collection on migration.
- Fixed a bug where putting the
ip2nation
check in theconfig.php
file would trigger a nation ban check even if theip2nation
module were not installed. - Fixed a bug where the missing required field errors would append the field name for inline errors and standard AJAX error returning when it should only append for standard error output or custom error page templates (with or without AJAX calls).
- Fixed a bug where File Upload fields could run into issues with MySQL strict mode enabled.
- Fixed a bug where updating from Freeform Free to Freeform Pro would not automatically install the extra default field types.
- Fixed a bug where deleting fields from the same form at the same time could cause a DB error to occur.
- Fixed a bug where having no available custom fields would give a PHP error when attempting to edit a form and possibly prevent it from saving.
4.0.42012-08-03
Fixes
- Fixed a bug where dynamic recipient email notifications were not sending.
- Fixed a bug where spam prevention was not storing all forms of user-initiated emails.
- Fixed a bug where storing user-initiated emails in the spam prevention database table could result in a MySQL error.
- Fixed a bug where admin notification template IDs were not properly being saved in the form settings area.
- Fixed a bug where field names with hyphens would cause errors when retrieving entry data.
- Fixed a bug where the auto "short_name" creating script allowed full stops (
.
) when it shouldn't have. This affects the creation of Forms, Fields, Notifications, and Composer Templates. - Fixed a bug where the Free version of Freeform could encounter a PHP error when attempting to delete a form.
Removals
- Removed the dummy EXT file as it was causing confusion during installation.
4.0.32012-07-29
Fixes
- Fixed a bug where the Freeform Channel Fieldtype would not properly save the ID of the chosen form.
4.0.22012-07-26
Additions
- Added checks for current tables during migration to make sure they are Freeform 4.x schema and not legacy 3.x tables.
Fixes
- Fixed a bug where a safety check for form updates that created missing tables was not working.
- Fixed a bug where updating from Freeform 4 to Freeform Pro was not properly finishing the update.
- Fixed a bug where passing arrays of inputs to a text-based field would cause an error with notifications.
- Fixed a bug where migrating tables could accidentally leave over an incorrect legacy table and prevent further migration.
- Fixed a bug where File Upload field types would not properly save settings.
- Fixed a bug where only comma-delimited emails worked for notifications and not both pipe and comma-delimited functioned as the documentation suggested.
4.0.12012-07-25
Fixes
- Removed a check for database credentials that would error on bootstrapped config files.
4.0.02012-07-25
Additions
- Completely re-wrote the codebase.
- Freeform is now only ExpressionEngine 2.x compatible (EE 2.4+).
- Ability to upgrade to and downgrade from Freeform Pro.
- Forms
- Most variables, variable pairs, and conditionals in template tags are now prefixed with
freeform:
. - Collections are now individual forms created in the Freeform control panel, and the
collection=""
parameter is now eitherform_id=""
orform_name=""
, whereform_name
is the short name. - Added the ability to detect duplicates on any field as well as member ID and IP address.
- Added optional duplicate redirect parameter.
- Added
matching_fields=""
parameter to allow for checks to see if two values across two fields match (ex: confirming email address). - All form attributes, including the
onsubmit
parameter are available asform:ATTRIBUTE_NAME
(ex:form:class
,form:onsubmit
, etc). - File uploads are now handled by the File Upload fieldtype.
- Mailing List inclusion is now handled by the Mailing List fieldtype.
- Added inline error handling to forms.
- Added automatic AJAX support.
- Added the ability to moderate entries in the CP by having them assigned to "Pending" status.
- Added optional HTML bracket encoding to Text and Textarea fieldtypes for security (default enabled).
- Added Freeform:Form_Info tag for showing all available forms, or the details of a given form.
- Most variables, variable pairs, and conditionals in template tags are now prefixed with
- Notifications
- Notifications now parse all template tags and variables.
- Added the ability to set a different notification template for all 4 notification types.
- Added
all_form_fields
variable pair for Notification templates for more flexible template construction. - Added searchable, clickable field list to Notification template editing in the control panel.
- Added a Reply-To setting for notifications.
- Control Panel
- Added new control panel UI theme by Eric Miller Design (option to disable in preferences).
- Added the ability to duplicate Forms, Fields, and Notifications in the control panel.
- Added the ability to create new entries in the control panel.
- Added a customizable and savable entry table layout, per user, per form.
- The entries table now has a moderation mode where entries with the status 'pending' can easily be approved or deleted.
- Freeform Pro Only Features
- Third Party custom field types are installable.
- Drag and drop forms can be created in Composer.
- Editable Composer form output templates.
- Additional default custom fields:
- Checkbox
- Checkbox Group
- Country Select
- Hidden Field
- Select
- Multi Select
- State Select (US)
- Province Select (Canadian)
- Radio Buttons
- Export entries as XML and JSON in addition to the default CSV and Text.
- Front end editing with Freeform:Edit and Freeform:Composer_Edit tags.
- The ability to call a Composer-based form in ExpressionEngine entries through a Freeform custom channel field.
- Custom error page output.
- Spam keyword blocking.
- Custom form statuses.
- Multipage forms with automatic and manual page triggers.
3.1.52013-01-25
Fixes
- Fixed a bug when editing saved entries from the CP with the
show_empties
checkbox checked. - Fixed a bug where MySQL errors would occur in EE 2.5.4+.
- Fixed a bug where Freeform would show an error on form submission if the IP to Nation module was not installed.
3.1.42012-05-10
Additions
- Added
entry_id
to the JSON array that can be outputted upon successful submission.
Fixes
- Fixed a bug where file upload errors did not display the error language properly to the end user.
- Fixed a bug where parameters would expire and still allow form submission when Secure Form Hashes were disabled.
- Fixed a bug where PHP 5.4 with
E_STRICT
would throw an error. - Fixed a bug where EE1, with Secure Forms disabled, an error would show up when editing a Freeform entry in the CP.
- Fixed a bug where empty fields would not show up when editing an entry in the CP if the status was closed.
- Fixed a bug where changing an existing field name with an already existing field name value would cause a MySQL error on submit.
3.1.32012-02-13
Additions
- Added the
output_json="yes"
parameter, which can be used with AJAX requests to return errors and success messages in JSON. Default is 'no'.
3.1.22012-02-10
Additions
- Added the option to select which fields are visible in the Entries tab of the Freeform control panel (EE2-only).
- Added compatibility for MySQL Strict.
Changes
- Modified Freeform to support AJAX requests by default. To disable, use
ajax_request="no"
parameter on Freeform:Form.
Fixes
- Fixed a bug where forms were given an incorrect name attribute value when the form:name= parameter wasn't specified in Freeform:Form tag.
- Fixed a bug where the
max_file
preference was being calculated incorrectly. - Fixed a bug where when exporting to CSV, entries with commas or quotes were not properly escaped.
- Fixed a bug where file uploads in form submissions were being validated too late.
Security
- Fixed a potential XSS security issue in the control panel.
3.1.12011-11-04
Fixes
- Fixed a bug where the entry_id parameter was being ignored in the Freeform:Entries tag.
- Fixed a bug where Freeform was adding
http://
to URLs submitted into custom fields. - Fixed a bug where passing an array input and requiring the field would trigger a PHP error.
- Fixed a bug where using quotes in a Freeform field name label would not work correctly.
3.1.02011-06-21
Additions
- Converted Freeform to use Solspace Add-on Builder Framework, and Solspace Bridge for EE 1.x.
- Added compatibility for NSM addon updater.
- Added the ability to dynamically assign a
reply_to
value for admin notifications. - Added
allowed_file_types
parameter to Freeform:Form tag to allow additional validation of uploaded file types.
Fixes
- Fixed a bug where the {collection_name} variable didn't parse in the message area of notification templates.
- Fixed a bug where pagination in the CP was losing some filter options.
- Fixed a bug where the entry_id param on freeform:entries wasn't being honored.
- Fixed a bug where URLs submitted in certain fields were being prepended with
http://
before saving. - Fixed a bug where requiring and array input would throw a PHP error.
3.0.62011-02-03
Changes
- Updated and enhanced Freeform module CP area (in EE 2.x) to conform completely to native EE styling.
Fixes
- Fixed a bug where file extensions were getting cut off of file uploads in EE 1.x.
- Fixed a bug where default Prefs were not correctly cached and caused errors on the front end.
- Fixed a bug where Template Label, From Name, and Email Subject in the Notification Template create/edit CP area could cause errors when containing quotes or other special or non-latin UTF-8 characters.
- Fixed a bug where when a required field contains a value of
0
, it wouldn't pass validation.
Security
- Fixed a bug where the default
website
field did not contain any security on it.
3.0.52010-11-29
Additions
- Added CSV export option in the Freeform CP.
Fixes
- Fixed a bug where the Collection name was not being properly recorded to the database.
3.0.42010-11-23
Fixes
- Fixed a bug where the
\{collection_name}
variable was not parsing in the Freeform:Entries tag. - Fixed a bug where the ID field was being inserted into hidden fields and conflicted with Ajax when used on a form.
- Fixed a bug where the "select all" checkboxes feature in the Freeform CP area would not work.
- Fixed a bug where having
subject
as a field name would cause issues. - Fixed a bug where the uploaded files would display to have a file size of "1KB" in the Freeform CP.
- Fixed a bug where Freeform Preferences were not always stored properly in the database.
Removals
- Removed the Flow UI theme from Freeform in EE 1.x.
3.0.32010-08-18
Changes
- Modified Freeform to now use the native EE 2.x JS success/error messages.
Fixes
- Fixed a bug where the confirmation link in the Mailing List opt-in email notification triggered by Freeform was not being parsed.
- Fixed a bug where Freeform was taking away the file extensions of uploaded files or in some cases renaming them improperly.
- Fixed a bug where date formatting was not working on the entry_date variable when used in a "user" notification email.
- Fixed a bug where Freeform was improperly displaying foreign characters as entities in the Entry Editing area of the Freeform module CP.
- Fixed a bug where other EE tags would not parse properly inside Freeform template tags.
- Fixed a bug where when creating a custom Freeform field in the Freeform CP would throw an error if "Process form data in secure mode" is disabled.
3.0.22010-07-12
Changes
- Modified all instances of
BASEPATH
to now usePATH_THIRD
as the app folder is outside of the system folder in EE 2.1.
3.0.12010-06-15
Changes
- Updated all instances of
XID_SECURE_HASH
to$XID_SECURE_HASH
in EE 2.x view files.
Fixes
- Fixed a bug where an error would display in the CP if you had no Freeform fields.
- Fixed a bug where the final extension hook call in
insert_new_entry
was improperly cleared. - Fixed a bug where duplicate checking and conditionals were not working correctly for Super Admins.
3.0.02010-05-13
Additions
- Added the new Dynamic Recipients feature to Freeform:Form. Allows you to predefine a list of recipients for a user to choose from.
- Added several new parameters, form fields, variables, and variable pairs to assist with the Dynamic Recipients feature.
- Added Tell-A-Friend functionality to Freeform:Form. Users can now enter in recipient email address(es).
- Added spam controls for the Tell-A-Friend functionality via the new Preferences tab in the CP and/or new parameters for Freeform:Form.
- Added the
form:attribute=""
parameter type to the Freeform:Form tag.
Changes
- Upgraded module to use Solspace Bridge 1.0 with CodeIgniter, therefore allowing compatibility with EE 2.x.
- Modified Freeform module to be PHP 5.3 compatible without throwing deprecated errors.
- Renamed all references of
form_name
tocollection
.
Deprecations
- Deprecated the
form_name
parameter.
Fixes
- Fixed a bug where the
{entry_date format=""}
variable was not being correctly parsed in the User Notification email. - Fixed a bug where if a Freeform field didn't exist and was added to the
required=""
parameter in Freeform:Form, it would return a PHP error.
2.7.2 - Build 200907212009-07-21
Additions
- Added a default
$msg
variable prior to the user email, in case it is not sent so that the extension hook does not throw an unset variable error.
Fixes
- Fixed a bug where PHP errors would be outputted with
mailing_list_opt_in="no"
because of a variable collision.
2.7.22009-05-08
Fixes
- Fixed a bug where the
mailing_list_opt_in="no"
parameter would not send the Admin Notification for the Mailing List module. - Fixed a bug where upon File Upload error one could not resubmit because of the CAPTCHA no longer being valid.
2.7.1 - Build 200902182009-02-18
Additions
- Added the
{freeform_entry_id}
variable parsing to the Subject field for notification templates.
Changes
- Modified the File Size display for attachment size in the CP to display in KBs.
Fixes
- Fixed a bug with
redirect_on_duplicate=""
parameter where forward slashes were converted to entities incorrectly in the hidden field.
2.7.1 - Build 200901112009-01-11
Additions
- Added
{freeform_entry_id}
to the list of available variables for Notification Templates.
2.7.1 - Build 200901082009-01-08
Additions
- Added
freeform_module_admin_notification
extension hook which allows you to alter the$msg
variable before an admin notification is sent. - Added
freeform_module_user_notification
extension hook which allows you to alter the$msg
variable before a user notification is sent.
2.7.12009-01-03
Additions
- Added indexes to various tables in the database to improve performance.
2.7.0 - Build 200812112008-12-11
Fixes
- Fixed a bug where mailing list subscriptions would not work when sending the
list_name
in an array of values (ex: form checkboxes).
2.7.02008-12-05
Additions
- Added
{freeform_entry_id}
as a variable in the Notification templates. - Added support for the
format=""
parameter for{entry_date}
variable in the Freeform notification templates. - Added
secure_action=""
andsecure_return=""
parameters to the Freeform:Form function. - Added a default
name=""
attribute to the Freeform:Form function so that entries in the CP would always have a form name instead of a blank. - Added some descriptions to the Template area in Freeform CP for clarity.
Changes
- Modified the form creation code to remove the
action=""
parameter, which was causing IE6 to behave incorrectly when an error message was shown. - Modified the Templates section of the Freeform CP to show the available variables when creating a new template.
- Modified the
mailinglist=""
parameter to havediv
's around hidden fields for XHTML validation.
Fixes
- Fixed a bug where the Manage Entries section of the CP that would use up all available PHP memory if excessive entries existed.
- Fixed a bug where the
return=""
parameter's forward slash HTML entity was not converted to a character. - Fixed a bug where the
{mailing_list}
variable was not being parsed in the email activation template. - Fixed a bug where when a Freeform Form was put on a Site's main index template, the redirect caused an error.
- Fixed a bug where Freeform was converting characters and entities on outputted forms, which caused problems with quotes and validation.
- Fixed a bug where duplicate emails could be inserted using the
mailinglist=""
parameter because the email could be inserted into the authorization queue multiple times. - Fixed a bug where certain MySQL keywords were unable to be Freeform fields.
- Fixed a bug where Freeform was lower-cased in the CP URLs, causing certain MySQL Strict servers not to show the module's CP at all.
- Fixed a bug in the Freeform:Entries function where the No Results conditional would not work.
- Fixed a bug where Freeform entries could be submitted with no
form_name=""
attribute with the Freeform:Form function. - Fixed a bug where selecting no entries and trying to delete in the Freeform CP resulted in an error.
- Fixed a bug where using Sessions on front end would cause the Session to show twice in the return path.
2.6.62008-08-14
Fixes
- Fixed various extension hook bugs.
2.6.52008-03-27
Fixes
- Fixed
cannot yet handle MBCS in html_entity_decode
bug when using extension hooks.
2.6.42008-03-19
Fixes
- Fixed stripped quotes bug.
2.6.3 - Build 200802222008-02-22
Fixes
- Fixed return parameter slash bug.
2.6.32008-02-14
Fixes
- Fixed entity decoding bug.
2.6.22008-02-05
Fixes
- Fixed variable bugs in
freeform_module_insert_end
extension hook.
2.6.12008-01-08
Fixes
- Fixed
return
parameter slash bug with EE 1.6.1.
2.5.92007-11-21
Fixes
- Fixed a form validation bug related to params database table deletions.
- Fixed a bug caused by 1.6.1 REGEX change to adjust ampersands and slashes.
2.5.82007-11-11
Fixes
- Fixed a
return
parameter bug.
2.5.72007-09-05
Fixes
- Fixed a status bug.
2.5.62007-08-31
Fixes
- Fixed a bug in the Entries tag.
2.5.52007-08-27
Changes
- Changed the name attribute on the form so that it is now set through the
name
parameter rather than throughform_name
for XHTML Strict compliance.
2.5.42007-08-15
Additions
- Added single entry capability in Freeform:Entries.
Changes
- Adopted new commenting syntax.
Fixes
- Several large fixes.
2.5.32007-07-22
Additions
- Added extension hooks.
2.5.22007-05-16
Additions
- Added entry ID return capability.
2.5.02007-04-15
Additions
- Added file upload and attachment capability.
- Added attachment management functions to CP.
- Used a new method of passing form parameters and settings more securely.
- Added HTML capability to notifications.
- Added
file_upload
parameter. - Added form fields for multiple files of format
name="file1"
. - Added
send_user_attachment
parameter to form function. - Added
send_attachment
parameter to form function. - Added variables to email templates to add links to attachments in messages.
- Added attachment parsing to Freeform:Entries function.
- Added
form_class
parameter to exp:freeform:form. - Added
form_title
parameter to exp:freeform:form.