Martin Abrahams Team : Web Development Tags : Technology

My first experience with Umbraco Forms

Martin Abrahams Team : Web Development Tags : Technology

I've been developing Umbraco based systems for over 3 years now but have always been wary of giving clients access to build their own forms via the Content Management System.

Umbraco ships with an official form builder plugin which goes by the name of, wait for it, Umbraco Forms. Earlier versions of Forms (previously branded Contour) were a little shaky when it came to complex validation requirements, mark-up flexibility and API integration. For most projects the potential headaches simply outweighed the projected benefits.

But having recently trialled Umbraco Forms version 7 on a smaller project I can say that mind has been well and truly been changed. The new version is flexible, stable and can easily be integrated with third party services. I’m so impressed that I’m even considering implementing it on a large multilingual site which requires complex integration with a third party service.

Even if your CMS users don't need the ability to create their own custom forms, just having the framework that ships with the software is still justifies the small development overhead.

It's the classic case of not wanting to re-invent the wheel when creating forms that store submissions to a database and then emailing a summary of the data to the client. For us at Wiliam this is a requirement for almost every site that we develop.

These basic forms can now be set up in minutes with Umbraco Forms, with only the styling left to deal with on the front end.

Each form input type (textbox, checkbox, select, textarea, etc.) has its own partial view which gives you the ability to easily wrap fields in additional mark-up to suit your needs.

Out of the box features include:

  • JQuery unobtrusive validation supported
  • Conditional validation
  • Storage of all submissions in the database
  • An interface for the client to review and manage submission via the CMS
  • Emailing of submission data
  • Exporting to CSV, HTML and custom data types
  • Optional approval process on submission
  • Optional work flow (post as XML, post to Slack Chart, post to URL, save as file, save as Umbraco document, send email)
  • Web service integration