Enform

The safety association for the upstream oil and gas industry in British Columbia, Alberta and Saskatchewan.

The Strategy

Enform needed their Signup process customized as they were using the out of the box Create Account page which was not meeting their business requirements. We installed Sonic Forms on their server and allowed their staff create the two forms that will later be used to form the signup process. They had complete control over the look and feel of the pages, prompts, text, fields, etc. As you can see the form on LHS.

Implementation Goals

The first page is used to create new account in iMIS and the second one asks the user to populate their preferred address (Work or Home). Enform also needed advanced duplicate check that will notify users if they have already created an account in their system. To accommodate this request we used the “Advanced duplicate check” feature available in Sonic Forms. What is does is simply call a stored procedure before creating the account, pass some of the values the user entered on the form and check if the stored procedure finds a matching record in the database. The specific conditions are: send First name, Last name, Email and Date of birth, the stored procedure returns positive (0 or greater) value if an account is found or negative value if there is no such account. In order to meet the criteria at least 3 out this 4 values should match an existing account.

As you can see ‘Simple duplicate check’ box is clear(which means the advanced feature is enabled) and below you can even see a list of fields which values are to be sent to the stored procedure. It is important that the order matches the order of parameter declaration in the stored procedure. Proceed anyway option is enabled allowing users to continue after seeing a warning message and create the account anyway. 

The Challenges

On that second page the client needed even more advanced validation for phone numbers and postal code only when Canada is selected as country of residence. To accomplish that we used additional jQuery code and JQuery mask library. All the additional code was added as html iPart to the content record making it really easy to maintain:

Using jQuery we were able to customize the behaviour of the page based on user actions:

  • If Canada is selected postal code has mask allowing only canadian postal codes and the field is required

  • If another country is selected postal code is not required, the mask is removed so users can type anything in that field

  • It allows users to type postal code with lowercase letters (ex. l3k 5j8) and automatically converts it to uppercase (L3K 5J8) once the user finishes typing.

The Results

  • Complex Signup process was created using different pieces working together and still allowing the client to customize their forms(to some level) in the future. Of course if they remove some of the fields used by the jQuery code it’ll need to be updated accordingly but when it comes to text or style changes on the form there will be no problem for a non-developer to accomplish.

  • Because the second step of the signup process call a stored procedure (standard feature in Sonic Forms) updating the member type of the user now Enform can track users who have started the Signup process but haven’t completed it yet for one reason or another.

 
Impressed Yet?
Contact Us