If you are using Umbraco Forms with Umbraco 8, you can update to Forms 8.10.0. If you’ve started projects with Umbraco 9 running on .NET 5, version 9.2.0 of Umbraco Forms is available on Nuget. How to get access to the new versions and where to submit any comments and report issues is discussed at the bottom of the post. First, let’s see what you can look forward to with this new upgrade:
What’s new in Umbraco Forms 8.10/9.2?
The Umbraco Forms backoffice interface is now localized and available in the following languages: Spanish, Italian, French, Polish, English UK, and of course English US as the default.
The Forms sections now use translation files, similar to how the rest of the backoffice is translated, as opposed to being hardcoded in English. This also means you can provide additional translations to any language of your choice, just as you can with the rest of the backoffice - by taking a copy of the default en-us.xml file, saving it using the culture code of your required language, and updating all the text. And if you were to do that… we’d love to discuss an arrangement where we could include them for others in a future release, reach out if you want to contribute.
We have carefully removed all the existing hard-coded text in the backoffice templates, and moved them into standard Umbraco language files, such that the backoffice for Forms can be localized.
We will be adding more languages and translations in upcoming releases and patches.
Another feature extended from the CMS to Umbraco Forms with this release is Content Apps. No longer just available for Content, Media, and Settings, but now also for Forms.
An Umbraco Forms Content App will appear after the built-in “Design” and “Settings” apps:
You can find detailed information and implementation examples in the Content App for Forms documentation article.
Additional Field Type Options
Two new options are now available when configuring text fields (i.e.short and long answers).
Allows you to set a character limit on text input (both short and long answers)
You can now select between 5 different Field Types for text input fields (short answer):
Choosing one of these will add the corresponding HTML5 attribute to the rendered field. This allows you to take advantage of the browser-specific improvements to validation and user experience that comes with using the type attribute.
Thanks for sharing
It’s only available for Umbraco 7 and hence not suitable for projects based on more recent versions. At Umbraco HQ, we’ve been delighted to receive a kind offer - that we are welcome to absorb the features that we deem appropriate from that package into the core Umbraco Forms project.
As it happens over time - and no doubt influenced by feature requests from users familiar with the package - some of the benefits brought by the add-on, such as “forms in folder”, have already made their way into the core product. And there are others, such as for start-nodes, that we’d like to consider more widely in a future update to permissions.
So we’d like to say a big thank you and H5YR to the Perplex team for the ideas and effort that went into the package, and for the generous offer that will benefit all Forms users today and in the future.
Enhanced Security For File Uploads
One of the field types available when creating forms is for uploading files. When you want to allow your site visitors completing the form to be able to submit a file of a particular format, such as a PDF or an image, with their details. These files are stored within the Umbraco Media system.
Although the path used is very obscure - requiring knowledge of two GUIDs - it’s possible if you did know the path to these files that you could view them without being logged into the backoffice.
From the current release, this will no longer be possible. We’ve implemented a check (as an IHttpModule in V8, and as middleware in V9) that will ensure requested for uploaded files will only be served to authenticated backoffice users that have access to the Forms section and permissions for the specific form for which the file was uploaded.
Disabling the enhanced security
If for whatever reason you were relying on unauthenticated access to these files, you can disable the protection by updating the following configuration.
In Umbraco 8, in UmbracoForms.config set:
In Umbraco 9, set the following in appSettings.json (or equivalent):
Special thanks to Alan Thom for his comments on this issue and suggested solution.
The other updates included in the release are as follows:
- Fixed issues relating to the Umbraco Documents prevalue source.
- Added details available in save events to detect and act on forms or folders being moved.
- Applied dictionary translations to form fields displayed in backoffice entries viewer.
- Resolved issue with field type script rendering when multiple forms are displayed on a page.
- Completed support for client-side views to be created outside of the App_Plugins folder, thus being retained following a dotnet clean (V9 only).
- Added fallback to default configured SMTP sender address (V9 only).
Updates since the RC
Since the RC release we've fixed up a few further issues:
- Updates to casing of files and paths to allow running of Forms in an Umbraco 9 installation on Linux.
- Added support for retrieving the user's IP address in V9, using the same "magic string" that was available in V8.
How to get your hands Umbraco Forms
As always, from today, all new Umbraco Cloud projects will be running the latest versions of Umbraco Forms. For all our Umbraco Cloud customers with existing projects, this upgrade is only 2 minutes away with the upgrade minor version feature.
We’ve wrapped it all up for you, so all you have to do now is follow these steps:
- Add a Development Environment to your project, if you do not already have one (Add a Development environment by clicking “Manage Environments” in the project view)
- Make sure you also restore the content to the Development Environment from your Live.
- When the Development Environment is all set up and you’ve made sure you don’t have any pending changes on the Development Environment - you are all ready to upgrade your project!
- It's as easy as clicking a button - like, literally clicking the "Get started..." button on the Development Environment. The auto-upgrader will take care of everything from here! 🚀
- Once it's done, check the Development Environment to make sure everything is looking right.
- When that's confirmed, you are ready to deploy the upgrade to the next environment - Live or Staging, and start taking full advantage of all the new features.
Non-Cloud and release notes:
You can either create a new installation using the package from the link below or upgrade an existing project. If upgrading, you may find you need to bump your client-dependency version. Installation and release notes can be found on Our.umbraco.com:
Release notes for Umbraco Forms can be found on the Umbraco Forms download page where there’s also a download available for Umbraco 8. The releases are also available from the appropriate NuGet feed:
Thanks to everyone testing out the release candidates 🙏A special thanks to Craig Stevens for providing testing and valuable feedback, especially for Umbraco 9/Forms on Linux - HIGH FIVE YOU ROCK 🙌
All issues reported have been addressed and listed in the release notes. For general feedback, you’re always welcome to contact us on firstname.lastname@example.org and specific issues on the GitHub issue trackers.