Tokenization has become a synonym for ease, trust and security, since it is one of the best data protection strategies that can be integrated into different payment ecosystems. The benefits it brings to both sellers and consumers have made it possible for tokenization to spread so quickly.

What is tokenization?

Tokenization is the protection of the sensitive data or PAN (principal account number) of a card by means of replacing it with an algorithmically generated number called token. It is mainly used to prevent credit card fraud.

This functionality allows a website to store all the payment information of a user without having to keep sensitive information on the site, so you can make periodic collections or facilitate payment in 1 click in your online store.

Once the token is created, tokenization is irreversible, there is no mathematical relationship between the original number and the token, only the system that generated the token in the first place is capable of performing the reverse process, so if there was a gap in the web the leaked data would be absolutely useless to the thief.

How does tokenization work?

The tokens are created by companies such as VISA and Mastercard, among others, which act as Token Service Providers (TSP) and send them to mobile payment or e-commerce platforms so that they can use them in transactions instead of using the customer’s actual card data.

This way, when a user enters their card details in a virtual wallet such as Google Pay or Apple Pay, these platforms request the ‘token’ from one of these providers, who must first ask the customer’s bank for verification of the data.

Once the data is verified, they generate the token and send it to the user’s device. After this unique number is created, it is irreversibly and irreplaceably linked to the customer’s device.

So every time the user makes a payment, the platform can authorize the operation just by sharing this code, without having to expose the real data.

In addition, since tokenization is a fully PCI DSS (Payment Card Industry Data Security Standard) compliant solution, many platforms are opting to facilitate the adoption of this new secure payment system for their customers.

Tokenization on the payment gateway

To better understand the process of converting the original payment data to a token, let’s take a look at what happens from the time a customer uses their credit card to the time the payment is processed.

  1. A credit card is swiped at an ATM or used for an online transaction.
  2. The credit card number is passed to the tokenization system.
  3. The tokenization system generates a random 16-character sequence to replace the original credit card number.
  4. The tokenization system returns the newly generated 16 random characters to the POS machine or e-commerce site to replace the customer’s credit card number in the system.

Tokenization process with Truust

At Truust, the tokenization process works as follows.

The Truust API receives the request to save the card from the user, Truust communicates with the tokenization service of the acquiring bank (RedSys, Addon Payments, etc).

A token is then generated, which can be used by the merchant to charge subsequent purchases, as shown in the diagram below.

tokenization process

This way, your business never stores, processes or transfers the PAN: only the token.

The advantage of an off-platform tokenization service is that it prevents computer attacks from obtaining any kind of sensitive information, neither financial nor personal.

Advantages of tokenization

The major advantages of implementing a tokenization service in your platform are the following:

  • At all times the financial institution keeps the control of customer data, and external systems never have access to them.
  • Since the tokens are not mathematically linked to the original value, security is maximized.
  • It facilitates payment on subsequent visits by avoiding the need to re-enter data each time the user wants to make a new purchase.

Tokenization in payment processing: use cases

The fact is that tokenization is extraordinarily useful for various types of online transactions. We can distinguish three payment scenarios in which tokenization is playing an increasingly important role.

  • The first case is for businesses that need to securely store their users’ credit card information so that they can charge a subscription or generate a recurring payment.
  • The second is for online stores or marketplaces where merchants want to offer their users one-click checkouts.
  • And the third is for the so-called mobile proximity payments (NFC / Near Field Communications), such as Apple Pay and Android Pay.

Below, we explain how tokenization helps you protect yourself in these payment scenarios.

#1 Tokenization in the payment of subscriptions

Imagine a streaming-music service needs to process customers’ subscription payments on a monthly and recurring basis. Imagine if this service had to email, call or send an SMS to its users every month to get payment details.

This would result in a significant process overload for the service, as a lot of effort would be required to manage the payment updates. The users’ experience would also be affected, which could result in more customers deciding not to pay that month or, even worse, losing interest in the service.

However, thanks to tokenization, this arduous process will be unnecessary: the company can recharge its customers monthly without the need to display the original card information.

Truust offers several solutions as a payment partner to businesses at any size. For more information, get in touch with our team .

#2 Tokenization in e-commerce

Tokenization also helps to protect payments on online purchases.

Let’s take an example of a website that sells mobile phone cases.

The customer, after making a purchase has the option to save the data from their card for future purchases, having an integrated system of tokenization, the data are converted into tokens and thus fully secured.

Even in the hypothetical case that the web is hacked. The only thing the hacker could see would be the tokens, i.e. useless information that cannot be deciphered.

Let’s take the tokenization of Apple Pay as an example.

#3 Tokenization in mobile wallets: Apple Pay and Android Pay

After taking a photo of your credit card and saving it to your iPhone from the app called “Wallet”, Apple sends the data to the bank or network that issued the card, which replaces your card data with a series of randomly generated numbers (the token). This random number is sent back to Apple, which programs it into the phone.

This means that no information useful to scammers can be extracted from the number stored in the mobile phone.

Tokenization vs Encryption

Although tokenization and encryption have certain similarities, when it comes to cloud data protection, these security technologies differ from each other. The major difference is the security method each system uses.

To put it simply, whereas tokenization technology protects data by means of using a token, encryption uses a key.

This means that tokenization transforms sensitive data into an irreversible number without sensitive information (token), and securely stores that original sensitive information outside its original environment.

In contrast, encryption encodes the content of a data element where it resides with a key shared between the person who is encrypting the data and the person who needs to decrypt it.

To access the original data, tokenization exchanges the token for the sensitive data, while encryption decodes the encrypted data to reveal its sensitive form.

Both solutions have great advantages when it comes to securely storing customer data:

  • Encryption is ideal for unstructured fields or databases of information that are not frequently exchanged or stored in multiple systems.
  • Tokenization is ideal for structured data, such as Social Security and credit card numbers, which must be kept on file to verify identities and be easily accessible for future use, such as financial transactions and online purchases.
Criteria TOKENIZATION ENCRYPTION
The PAN (principal account number) is displayed X
Mathematically reversible X
Reduces the scope of the PCI X
Payment flexibility: refunds, chargebacks, recurring payments, etc. X
Key rotation required X
End-to-End Security X
Low cost per transaction X
The format is consistent with traditional credit card fields X
It is centrally managed X
Established security X

In short, tokenization is a complex concept, but it is useful to understand how it works in order to see how useful it can be in the payment processing industry, where it is becoming increasingly important. It is an exciting revolution that makes payment processing more secure.

REFERENCES

https://searchsecurity.techtarget.com/definition/tokenization
https://medium.com/coreledger/what-is-tokenization-everything-you-should-know-1b2403a50f0e
https://www.adyen.com/knowledge-hub/guides/tokenization-payment-technology-guide#how
https://blockgeeks.com/guides/security-tokens/

Find your business motivation!

<style><!-- [et_pb_line_break_holder] -->& {<!-- [et_pb_line_break_holder] --> font-size: 14px;<!-- [et_pb_line_break_holder] --> line-height: 1.6;<!-- [et_pb_line_break_holder] --> font-family: arial, helvetica, sans-serif;<!-- [et_pb_line_break_holder] --> margin: 0;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->* {<!-- [et_pb_line_break_holder] --> outline: 0;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->GLOBAL-STYLE ._form_hide {<!-- [et_pb_line_break_holder] --> display: none;<!-- [et_pb_line_break_holder] --> visibility: hidden;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->GLOBAL-STYLE ._form_show {<!-- [et_pb_line_break_holder] --> display: block;<!-- [et_pb_line_break_holder] --> visibility: visible;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form-top {<!-- [et_pb_line_break_holder] --> top: 0;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form-bottom {<!-- [et_pb_line_break_holder] --> bottom: 0;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form-left {<!-- [et_pb_line_break_holder] --> left: 0;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form-right {<!-- [et_pb_line_break_holder] --> right: 0;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->input[type="text"],<!-- [et_pb_line_break_holder] -->input[type="date"],<!-- [et_pb_line_break_holder] -->textarea {<!-- [et_pb_line_break_holder] --> padding: 6px;<!-- [et_pb_line_break_holder] --> height: auto;<!-- [et_pb_line_break_holder] --> border: #979797 1px solid;<!-- [et_pb_line_break_holder] --> border-radius: 4px;<!-- [et_pb_line_break_holder] --> color: #000000 !important;<!-- [et_pb_line_break_holder] --> font-size: 14px;<!-- [et_pb_line_break_holder] --> -webkit-box-sizing: border-box;<!-- [et_pb_line_break_holder] --> -moz-box-sizing: border-box;<!-- [et_pb_line_break_holder] --> box-sizing: border-box;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->textarea {<!-- [et_pb_line_break_holder] --> resize: none;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._submit {<!-- [et_pb_line_break_holder] --> -webkit-appearance: none;<!-- [et_pb_line_break_holder] --> cursor: pointer;<!-- [et_pb_line_break_holder] --> font-family: arial, sans-serif;<!-- [et_pb_line_break_holder] --> font-size: 14px;<!-- [et_pb_line_break_holder] --> text-align: center;<!-- [et_pb_line_break_holder] --> background: #fbaf17 !important;border: 0 !important;-moz-border-radius: 4px !important;-webkit-border-radius: 4px !important;border-radius: 4px !important;color: #FFFFFF !important;padding:10px !important}<!-- [et_pb_line_break_holder] -->._close-icon {<!-- [et_pb_line_break_holder] --> cursor: pointer;<!-- [et_pb_line_break_holder] --> background-image: url('https://d226aj4ao1t61q.cloudfront.net/esfkyjh1u_forms-close-dark.png');<!-- [et_pb_line_break_holder] --> background-repeat: no-repeat;<!-- [et_pb_line_break_holder] --> background-size: 14.2px 14.2px;<!-- [et_pb_line_break_holder] --> position: absolute;<!-- [et_pb_line_break_holder] --> display: block;<!-- [et_pb_line_break_holder] --> top: 11px;<!-- [et_pb_line_break_holder] --> right: 9px;<!-- [et_pb_line_break_holder] --> overflow: hidden;<!-- [et_pb_line_break_holder] --> width: 16.2px;<!-- [et_pb_line_break_holder] --> height: 16.2px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._close-icon:before {<!-- [et_pb_line_break_holder] --> position: relative;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form-body {<!-- [et_pb_line_break_holder] --> margin-bottom: 30px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form-image-left {<!-- [et_pb_line_break_holder] --> width: 150px;<!-- [et_pb_line_break_holder] --> float: left;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form-content-right {<!-- [et_pb_line_break_holder] --> margin-left: 164px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form-branding {<!-- [et_pb_line_break_holder] --> color: #fff;<!-- [et_pb_line_break_holder] --> font-size: 10px;<!-- [et_pb_line_break_holder] --> clear: both;<!-- [et_pb_line_break_holder] --> text-align: left;<!-- [et_pb_line_break_holder] --> margin-top: 30px;<!-- [et_pb_line_break_holder] --> font-weight: 100;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form-branding ._logo {<!-- [et_pb_line_break_holder] --> display: block;<!-- [et_pb_line_break_holder] --> width: 130px;<!-- [et_pb_line_break_holder] --> height: 14px;<!-- [et_pb_line_break_holder] --> margin-top: 6px;<!-- [et_pb_line_break_holder] --> background-image: url('https://d226aj4ao1t61q.cloudfront.net/hh9ujqgv5_aclogo_li.png');<!-- [et_pb_line_break_holder] --> background-size: 130px auto;<!-- [et_pb_line_break_holder] --> background-repeat: no-repeat;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form-label,<!-- [et_pb_line_break_holder] -->._form_element ._form-label {<!-- [et_pb_line_break_holder] --> font-weight: bold;<!-- [et_pb_line_break_holder] --> margin-bottom: 5px;<!-- [et_pb_line_break_holder] --> display: block;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._dark ._form-branding {<!-- [et_pb_line_break_holder] --> color: #333;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._dark ._form-branding ._logo {<!-- [et_pb_line_break_holder] --> background-image: url('https://d226aj4ao1t61q.cloudfront.net/jftq2c8s_aclogo_dk.png');<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form_element {<!-- [et_pb_line_break_holder] --> position: relative;<!-- [et_pb_line_break_holder] --> margin-bottom: 10px;<!-- [et_pb_line_break_holder] --> font-size: 0;<!-- [et_pb_line_break_holder] --> max-width: 100%;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form_element * {<!-- [et_pb_line_break_holder] --> font-size: 14px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form_element._clear {<!-- [et_pb_line_break_holder] --> clear: both;<!-- [et_pb_line_break_holder] --> width: 100%;<!-- [et_pb_line_break_holder] --> float: none;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form_element._clear:after {<!-- [et_pb_line_break_holder] --> clear: left;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form_element input[type="text"],<!-- [et_pb_line_break_holder] -->._form_element input[type="date"],<!-- [et_pb_line_break_holder] -->._form_element select,<!-- [et_pb_line_break_holder] -->._form_element textarea:not(.g-recaptcha-response) {<!-- [et_pb_line_break_holder] --> display: block;<!-- [et_pb_line_break_holder] --> width: 100%;<!-- [et_pb_line_break_holder] --> -webkit-box-sizing: border-box;<!-- [et_pb_line_break_holder] --> -moz-box-sizing: border-box;<!-- [et_pb_line_break_holder] --> box-sizing: border-box;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._field-wrapper {<!-- [et_pb_line_break_holder] --> position: relative;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._inline-style {<!-- [et_pb_line_break_holder] --> float: left;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._inline-style input[type="text"] {<!-- [et_pb_line_break_holder] --> width: 150px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._inline-style:not(._clear) + ._inline-style:not(._clear) {<!-- [et_pb_line_break_holder] --> margin-left: 20px;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] -->._form_element img._form-image {<!-- [et_pb_line_break_holder] --> max-width: 100%;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._clear-element {<!-- [et_pb_line_break_holder] --> clear: left;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._full_width {<!-- [et_pb_line_break_holder] --> width: 100%;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form_full_field {<!-- [et_pb_line_break_holder] --> display: block;<!-- [et_pb_line_break_holder] --> width: 100%;<!-- [et_pb_line_break_holder] --> margin-bottom: 10px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->input[type="text"]._has_error,<!-- [et_pb_line_break_holder] -->textarea._has_error {<!-- [et_pb_line_break_holder] --> border: #F37C7B 1px solid;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->input[type="checkbox"]._has_error {<!-- [et_pb_line_break_holder] --> outline: #F37C7B 1px solid;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._error {<!-- [et_pb_line_break_holder] --> display: block;<!-- [et_pb_line_break_holder] --> position: absolute;<!-- [et_pb_line_break_holder] --> font-size: 14px;<!-- [et_pb_line_break_holder] --> z-index: 10000001;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._error._above {<!-- [et_pb_line_break_holder] --> padding-bottom: 4px;<!-- [et_pb_line_break_holder] --> bottom: 39px;<!-- [et_pb_line_break_holder] --> right: 0;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._error._below {<!-- [et_pb_line_break_holder] --> padding-top: 4px;<!-- [et_pb_line_break_holder] --> top: 100%;<!-- [et_pb_line_break_holder] --> right: 0;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._error._above ._error-arrow {<!-- [et_pb_line_break_holder] --> bottom: 0;<!-- [et_pb_line_break_holder] --> right: 15px;<!-- [et_pb_line_break_holder] --> border-left: 5px solid transparent;<!-- [et_pb_line_break_holder] --> border-right: 5px solid transparent;<!-- [et_pb_line_break_holder] --> border-top: 5px solid #F37C7B;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._error._below ._error-arrow {<!-- [et_pb_line_break_holder] --> top: 0;<!-- [et_pb_line_break_holder] --> right: 15px;<!-- [et_pb_line_break_holder] --> border-left: 5px solid transparent;<!-- [et_pb_line_break_holder] --> border-right: 5px solid transparent;<!-- [et_pb_line_break_holder] --> border-bottom: 5px solid #F37C7B;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._error-inner {<!-- [et_pb_line_break_holder] --> padding: 8px 12px;<!-- [et_pb_line_break_holder] --> background-color: #F37C7B;<!-- [et_pb_line_break_holder] --> font-size: 14px;<!-- [et_pb_line_break_holder] --> font-family: arial, sans-serif;<!-- [et_pb_line_break_holder] --> color: #fff;<!-- [et_pb_line_break_holder] --> text-align: center;<!-- [et_pb_line_break_holder] --> text-decoration: none;<!-- [et_pb_line_break_holder] --> -webkit-border-radius: 4px;<!-- [et_pb_line_break_holder] --> -moz-border-radius: 4px;<!-- [et_pb_line_break_holder] --> border-radius: 4px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._error-inner._form_error {<!-- [et_pb_line_break_holder] --> margin-bottom: 5px;<!-- [et_pb_line_break_holder] --> text-align: left;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._button-wrapper ._error-inner._form_error {<!-- [et_pb_line_break_holder] --> position: static;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._error-inner._no_arrow {<!-- [et_pb_line_break_holder] --> margin-bottom: 10px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._error-arrow {<!-- [et_pb_line_break_holder] --> position: absolute;<!-- [et_pb_line_break_holder] --> width: 0;<!-- [et_pb_line_break_holder] --> height: 0;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._error-html {<!-- [et_pb_line_break_holder] --> margin-bottom: 10px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->GLOBAL-STYLE .pika-single {<!-- [et_pb_line_break_holder] --> z-index: 10000001 !important;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->@media all and (min-width: 320px) and (max-width: 667px) {<!-- [et_pb_line_break_holder] --> GLOBAL-STYLE ::-webkit-scrollbar {<!-- [et_pb_line_break_holder] --> display: none;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> & {<!-- [et_pb_line_break_holder] --> margin: 0;<!-- [et_pb_line_break_holder] --> width:100%;<!-- [et_pb_line_break_holder] --> min-width:100%;<!-- [et_pb_line_break_holder] --> max-width:100%;<!-- [et_pb_line_break_holder] --> box-sizing: border-box;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> * {<!-- [et_pb_line_break_holder] --> -webkit-box-sizing: border-box;<!-- [et_pb_line_break_holder] --> -moz-box-sizing: border-box;<!-- [et_pb_line_break_holder] --> box-sizing: border-box;<!-- [et_pb_line_break_holder] --> font-size: 1em;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> ._form-content {<!-- [et_pb_line_break_holder] --> margin: 0;<!-- [et_pb_line_break_holder] --> width: 100%;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> ._form-inner {<!-- [et_pb_line_break_holder] --> display: block;<!-- [et_pb_line_break_holder] --> min-width: 100%;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> ._form-title,<!-- [et_pb_line_break_holder] --> ._inline-style {<!-- [et_pb_line_break_holder] --> margin-top: 0;<!-- [et_pb_line_break_holder] --> margin-right: 0;<!-- [et_pb_line_break_holder] --> margin-left: 0;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> ._form-title {<!-- [et_pb_line_break_holder] --> font-size: 1.2em;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> ._form_element {<!-- [et_pb_line_break_holder] --> margin: 0 0 20px;<!-- [et_pb_line_break_holder] --> padding: 0;<!-- [et_pb_line_break_holder] --> width:100%;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> ._form-element,<!-- [et_pb_line_break_holder] --> ._inline-style,<!-- [et_pb_line_break_holder] --> input[type="text"],<!-- [et_pb_line_break_holder] --> label,<!-- [et_pb_line_break_holder] --> p,<!-- [et_pb_line_break_holder] --> textarea:not(.g-recaptcha-response) {<!-- [et_pb_line_break_holder] --> float: none;<!-- [et_pb_line_break_holder] --> display: block;<!-- [et_pb_line_break_holder] --> width: 100%;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> ._row._checkbox-radio label {<!-- [et_pb_line_break_holder] --> display: inline;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> ._row,<!-- [et_pb_line_break_holder] --> p,<!-- [et_pb_line_break_holder] --> label {<!-- [et_pb_line_break_holder] --> margin-bottom: 0.7em;<!-- [et_pb_line_break_holder] --> width: 100%;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> ._row input[type="checkbox"],<!-- [et_pb_line_break_holder] --> ._row input[type="radio"] {<!-- [et_pb_line_break_holder] --> margin: 0 !important;<!-- [et_pb_line_break_holder] --> vertical-align: middle !important;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> ._row input[type="checkbox"] + span label {<!-- [et_pb_line_break_holder] --> display: inline;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> ._row span label {<!-- [et_pb_line_break_holder] --> margin: 0 !important;<!-- [et_pb_line_break_holder] --> width: initial !important;<!-- [et_pb_line_break_holder] --> vertical-align: middle !important;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> ._form-image {<!-- [et_pb_line_break_holder] --> max-width: 100%;<!-- [et_pb_line_break_holder] --> height: auto !important;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> input[type="text"] {<!-- [et_pb_line_break_holder] --> padding-left: 10px;<!-- [et_pb_line_break_holder] --> padding-right: 10px;<!-- [et_pb_line_break_holder] --> font-size: 16px;<!-- [et_pb_line_break_holder] --> line-height: 1.3em;<!-- [et_pb_line_break_holder] --> -webkit-appearance: none;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> input[type="radio"],<!-- [et_pb_line_break_holder] --> input[type="checkbox"] {<!-- [et_pb_line_break_holder] --> display: inline-block;<!-- [et_pb_line_break_holder] --> width: 1.3em;<!-- [et_pb_line_break_holder] --> height: 1.3em;<!-- [et_pb_line_break_holder] --> font-size: 1em;<!-- [et_pb_line_break_holder] --> margin: 0 0.3em 0 0;<!-- [et_pb_line_break_holder] --> vertical-align: baseline;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> button[type="submit"] {<!-- [et_pb_line_break_holder] --> padding: 20px;<!-- [et_pb_line_break_holder] --> font-size: 1.5em;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> ._inline-style {<!-- [et_pb_line_break_holder] --> margin: 20px 0 0 !important;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->& {<!-- [et_pb_line_break_holder] --> position: relative;<!-- [et_pb_line_break_holder] --> text-align: left;<!-- [et_pb_line_break_holder] --> margin: 25px auto 0;<!-- [et_pb_line_break_holder] --> padding: 20px;<!-- [et_pb_line_break_holder] --> -webkit-box-sizing: border-box;<!-- [et_pb_line_break_holder] --> -moz-box-sizing: border-box;<!-- [et_pb_line_break_holder] --> box-sizing: border-box;<!-- [et_pb_line_break_holder] --> *zoom: 1;<!-- [et_pb_line_break_holder] --> background: ##ffffff !important;<!-- [et_pb_line_break_holder] --> border: 0px solid #B0B0B0 !important;<!-- [et_pb_line_break_holder] --> width: 500px;<!-- [et_pb_line_break_holder] --> -moz-border-radius: 0px !important;<!-- [et_pb_line_break_holder] --> -webkit-border-radius: 0px !important;<!-- [et_pb_line_break_holder] --> border-radius: 0px !important;<!-- [et_pb_line_break_holder] --> color: #000000 !important;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form-title {<!-- [et_pb_line_break_holder] --> font-size: 22px;<!-- [et_pb_line_break_holder] --> line-height: 22px;<!-- [et_pb_line_break_holder] --> font-weight: 600;<!-- [et_pb_line_break_holder] --> margin-bottom: 0;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->&:before,<!-- [et_pb_line_break_holder] -->&:after {<!-- [et_pb_line_break_holder] --> content: " ";<!-- [et_pb_line_break_holder] --> display: table;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->&:after {<!-- [et_pb_line_break_holder] --> clear: both;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._inline-style {<!-- [et_pb_line_break_holder] --> width: auto;<!-- [et_pb_line_break_holder] --> display: inline-block;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._inline-style input[type="text"],<!-- [et_pb_line_break_holder] -->._inline-style input[type="date"] {<!-- [et_pb_line_break_holder] --> padding: 10px 12px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._inline-style button._inline-style {<!-- [et_pb_line_break_holder] --> position: relative;<!-- [et_pb_line_break_holder] --> top: 27px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._inline-style p {<!-- [et_pb_line_break_holder] --> margin: 0;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._inline-style ._button-wrapper {<!-- [et_pb_line_break_holder] --> position: relative;<!-- [et_pb_line_break_holder] --> margin: 27px 12.5px 0 20px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->._form-thank-you {<!-- [et_pb_line_break_holder] --> position: relative;<!-- [et_pb_line_break_holder] --> left: 0;<!-- [et_pb_line_break_holder] --> right: 0;<!-- [et_pb_line_break_holder] --> text-align: center;<!-- [et_pb_line_break_holder] --> font-size: 18px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->@media all and (min-width: 320px) and (max-width: 667px) {<!-- [et_pb_line_break_holder] --> ._inline-form._inline-style ._inline-style._button-wrapper {<!-- [et_pb_line_break_holder] --> margin-top: 20px !important;<!-- [et_pb_line_break_holder] --> margin-left: 0 !important;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --> #_form_9_ ._form_1 { width:100%; background-color:#dbf2f7; padding:10px; }<!-- [et_pb_line_break_holder] --></style><!-- [et_pb_line_break_holder] --><form method="POST" action="https://truust4124.activehosted.com/proc.php" id="_form_9_" class="_form _form_9 _inline-form " novalidate><!-- [et_pb_line_break_holder] --> <input type="hidden" name="u" value="9" /><!-- [et_pb_line_break_holder] --> <input type="hidden" name="f" value="9" /><!-- [et_pb_line_break_holder] --> <input type="hidden" name="s" /><!-- [et_pb_line_break_holder] --> <input type="hidden" name="c" value="0" /><!-- [et_pb_line_break_holder] --> <input type="hidden" name="m" value="0" /><!-- [et_pb_line_break_holder] --> <input type="hidden" name="act" value="sub" /><!-- [et_pb_line_break_holder] --> <input type="hidden" name="v" value="2" /><!-- [et_pb_line_break_holder] --> <div class="_form-content"><!-- [et_pb_line_break_holder] --> <div class="_form_element _x81290551 _full_width " ><!-- [et_pb_line_break_holder] --> <label class="_form-label"><!-- [et_pb_line_break_holder] --> First Name*<!-- [et_pb_line_break_holder] --> </label><!-- [et_pb_line_break_holder] --> <div class="_field-wrapper"><!-- [et_pb_line_break_holder] --> <input type="text" name="firstname" placeholder="Type your first name" required/><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="_form_element _x42104337 _full_width " ><!-- [et_pb_line_break_holder] --> <label class="_form-label"><!-- [et_pb_line_break_holder] --> Email*<!-- [et_pb_line_break_holder] --> </label><!-- [et_pb_line_break_holder] --> <div class="_field-wrapper"><!-- [et_pb_line_break_holder] --> <input type="text" name="email" placeholder="Your email" required/><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="_form_element _field21 _full_width " ><!-- [et_pb_line_break_holder] --> <div class="_row"><!-- [et_pb_line_break_holder] --> <label class="_form-label"><!-- [et_pb_line_break_holder] --> </label><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <input data-autofill="false" type="hidden" name="field[21][]" value="~|"><!-- [et_pb_line_break_holder] --> <div class="_row _checkbox-radio"><!-- [et_pb_line_break_holder] --> <input id="field_21I have read and accept the Privacy Policy.*" type="checkbox" name="field[21][]" value="I have read and accept the Privacy Policy.*" required><!-- [et_pb_line_break_holder] --> <span><!-- [et_pb_line_break_holder] --> <label for="field_21I have read and accept the Privacy Policy.*"><!-- [et_pb_line_break_holder] --> I have read and accept the <a target="_blank" href="https://truust.io/privacy-policy/" style="font-size:12px;">Privacy Policy</a>.*<!-- [et_pb_line_break_holder] --> </label><!-- [et_pb_line_break_holder] --> </span><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="_form_element _x55892198 _full_width _clear" ><!-- [et_pb_line_break_holder] --> <div class="_html-code"><!-- [et_pb_line_break_holder] --> <p style="font-size:10px; line-height: 12px;"><!-- [et_pb_line_break_holder] --> We recommend that you read the following information before providing us with your personal details. Basic information on data protection: the data controller is Socialpay, S.L. for the purpose of sending commercial communications. under the legal conditions, you have the right to access, rectify and delete data, the limitation of its processing, to oppose it and its portability. You can consult the additional and detailed information about Data Protection in this <a target="_blank" href="https://truust.io/privacy-policy/" style="font-size:10px;">link</a>.<!-- [et_pb_line_break_holder] --> </p><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="_button-wrapper _full_width"><!-- [et_pb_line_break_holder] --> <button id="_form_9_submit" class="_submit" type="submit"><!-- [et_pb_line_break_holder] --> Subscribe to our Newsletter<!-- [et_pb_line_break_holder] --> </button><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="_clear-element"><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --> <div class="_form-thank-you" style="display:none;"><!-- [et_pb_line_break_holder] --> </div><!-- [et_pb_line_break_holder] --></form><script type="text/javascript"><!-- [et_pb_line_break_holder] -->window.cfields = {"21":"i_have_read"};<!-- [et_pb_line_break_holder] -->window._show_thank_you = function(id, message, trackcmp_url) {<!-- [et_pb_line_break_holder] --> var form = document.getElementById('_form_' + id + '_'), thank_you = form.querySelector('._form-thank-you');<!-- [et_pb_line_break_holder] --> form.querySelector('._form-content').style.display = 'none';<!-- [et_pb_line_break_holder] --> thank_you.innerHTML = message;<!-- [et_pb_line_break_holder] --> thank_you.style.display = 'block';<!-- [et_pb_line_break_holder] --> if (typeof(trackcmp_url) != 'undefined' && trackcmp_url) {<!-- [et_pb_line_break_holder] --> // Site tracking URL to use after inline form submission.<!-- [et_pb_line_break_holder] --> _load_script(trackcmp_url);<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> if (typeof window._form_callback !== 'undefined') window._form_callback(id);<!-- [et_pb_line_break_holder] -->};<!-- [et_pb_line_break_holder] -->window._show_error = function(id, message, html) {<!-- [et_pb_line_break_holder] --> var form = document.getElementById('_form_' + id + '_'), err = document.createElement('div'), button = form.querySelector('button'), old_error = form.querySelector('._form_error');<!-- [et_pb_line_break_holder] --> if (old_error) old_error.parentNode.removeChild(old_error);<!-- [et_pb_line_break_holder] --> err.innerHTML = message;<!-- [et_pb_line_break_holder] --> err.className = '_error-inner _form_error _no_arrow';<!-- [et_pb_line_break_holder] --> var wrapper = document.createElement('div');<!-- [et_pb_line_break_holder] --> wrapper.className = '_form-inner';<!-- [et_pb_line_break_holder] --> wrapper.appendChild(err);<!-- [et_pb_line_break_holder] --> button.parentNode.insertBefore(wrapper, button);<!-- [et_pb_line_break_holder] --> document.querySelector('[id^="_form"][id$="_submit"]').disabled = false;<!-- [et_pb_line_break_holder] --> if (html) {<!-- [et_pb_line_break_holder] --> var div = document.createElement('div');<!-- [et_pb_line_break_holder] --> div.className = '_error-html';<!-- [et_pb_line_break_holder] --> div.innerHTML = html;<!-- [et_pb_line_break_holder] --> err.appendChild(div);<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] -->};<!-- [et_pb_line_break_holder] -->window._load_script = function(url, callback) {<!-- [et_pb_line_break_holder] --> var head = document.querySelector('head'), script = document.createElement('script'), r = false;<!-- [et_pb_line_break_holder] --> script.type = 'text/javascript';<!-- [et_pb_line_break_holder] --> script.charset = 'utf-8';<!-- [et_pb_line_break_holder] --> script.src = url;<!-- [et_pb_line_break_holder] --> if (callback) {<!-- [et_pb_line_break_holder] --> script.onload = script.onreadystatechange = function() {<!-- [et_pb_line_break_holder] --> if (!r && (!this.readyState || this.readyState == 'complete')) {<!-- [et_pb_line_break_holder] --> r = true;<!-- [et_pb_line_break_holder] --> callback();<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> };<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> head.appendChild(script);<!-- [et_pb_line_break_holder] -->};<!-- [et_pb_line_break_holder] -->(function() {<!-- [et_pb_line_break_holder] --> if (window.location.search.search("excludeform") !== -1) return false;<!-- [et_pb_line_break_holder] --> var getCookie = function(name) {<!-- [et_pb_line_break_holder] --> var match = document.cookie.match(new RegExp('(^|; )' + name + '=([^;]+)'));<!-- [et_pb_line_break_holder] --> return match ? match[2] : null;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> var setCookie = function(name, value) {<!-- [et_pb_line_break_holder] --> var now = new Date();<!-- [et_pb_line_break_holder] --> var time = now.getTime();<!-- [et_pb_line_break_holder] --> var expireTime = time + 1000 * 60 * 60 * 24 * 365;<!-- [et_pb_line_break_holder] --> now.setTime(expireTime);<!-- [et_pb_line_break_holder] --> document.cookie = name + '=' + value + '; expires=' + now + ';path=/';<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> var addEvent = function(element, event, func) {<!-- [et_pb_line_break_holder] --> if (element.addEventListener) {<!-- [et_pb_line_break_holder] --> element.addEventListener(event, func);<!-- [et_pb_line_break_holder] --> } else {<!-- [et_pb_line_break_holder] --> var oldFunc = element['on' + event];<!-- [et_pb_line_break_holder] --> element['on' + event] = function() {<!-- [et_pb_line_break_holder] --> oldFunc.apply(this, arguments);<!-- [et_pb_line_break_holder] --> func.apply(this, arguments);<!-- [et_pb_line_break_holder] --> };<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> var _removed = false;<!-- [et_pb_line_break_holder] --> var form_to_submit = document.getElementById('_form_9_');<!-- [et_pb_line_break_holder] --> var allInputs = form_to_submit.querySelectorAll('input, select, textarea'), tooltips = [], submitted = false;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> var getUrlParam = function(name) {<!-- [et_pb_line_break_holder] --> var regexStr = '[\?&]' + name + '=([^&#]*)';<!-- [et_pb_line_break_holder] --> var results = new RegExp(regexStr, 'i').exec(window.location.href);<!-- [et_pb_line_break_holder] --> return results != undefined ? decodeURIComponent(results[1]) : false;<!-- [et_pb_line_break_holder] --> };<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> for (var i = 0; i < allInputs.length; i++) {<!-- [et_pb_line_break_holder] --> var regexStr = "field\\[(\\d+)\\]";<!-- [et_pb_line_break_holder] --> var results = new RegExp(regexStr).exec(allInputs[i].name);<!-- [et_pb_line_break_holder] --> if (results != undefined) {<!-- [et_pb_line_break_holder] --> allInputs[i].dataset.name = window.cfields[results[1]];<!-- [et_pb_line_break_holder] --> } else {<!-- [et_pb_line_break_holder] --> allInputs[i].dataset.name = allInputs[i].name;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> var fieldVal = getUrlParam(allInputs[i].dataset.name);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> if (fieldVal) {<!-- [et_pb_line_break_holder] --> if (allInputs[i].dataset.autofill === "false") {<!-- [et_pb_line_break_holder] --> continue;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> if (allInputs[i].type == "radio" || allInputs[i].type == "checkbox") {<!-- [et_pb_line_break_holder] --> if (allInputs[i].value == fieldVal) {<!-- [et_pb_line_break_holder] --> allInputs[i].checked = true;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> } else {<!-- [et_pb_line_break_holder] --> allInputs[i].value = fieldVal;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> var remove_tooltips = function() {<!-- [et_pb_line_break_holder] --> for (var i = 0; i < tooltips.length; i++) {<!-- [et_pb_line_break_holder] --> tooltips[i].tip.parentNode.removeChild(tooltips[i].tip);<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> tooltips = [];<!-- [et_pb_line_break_holder] --> };<!-- [et_pb_line_break_holder] --> var remove_tooltip = function(elem) {<!-- [et_pb_line_break_holder] --> for (var i = 0; i < tooltips.length; i++) {<!-- [et_pb_line_break_holder] --> if (tooltips[i].elem === elem) {<!-- [et_pb_line_break_holder] --> tooltips[i].tip.parentNode.removeChild(tooltips[i].tip);<!-- [et_pb_line_break_holder] --> tooltips.splice(i, 1);<!-- [et_pb_line_break_holder] --> return;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> };<!-- [et_pb_line_break_holder] --> var create_tooltip = function(elem, text) {<!-- [et_pb_line_break_holder] --> var tooltip = document.createElement('div'), arrow = document.createElement('div'), inner = document.createElement('div'), new_tooltip = {};<!-- [et_pb_line_break_holder] --> if (elem.type != 'radio' && elem.type != 'checkbox') {<!-- [et_pb_line_break_holder] --> tooltip.className = '_error';<!-- [et_pb_line_break_holder] --> arrow.className = '_error-arrow';<!-- [et_pb_line_break_holder] --> inner.className = '_error-inner';<!-- [et_pb_line_break_holder] --> inner.innerHTML = text;<!-- [et_pb_line_break_holder] --> tooltip.appendChild(arrow);<!-- [et_pb_line_break_holder] --> tooltip.appendChild(inner);<!-- [et_pb_line_break_holder] --> elem.parentNode.appendChild(tooltip);<!-- [et_pb_line_break_holder] --> } else {<!-- [et_pb_line_break_holder] --> tooltip.className = '_error-inner _no_arrow';<!-- [et_pb_line_break_holder] --> tooltip.innerHTML = text;<!-- [et_pb_line_break_holder] --> elem.parentNode.insertBefore(tooltip, elem);<!-- [et_pb_line_break_holder] --> new_tooltip.no_arrow = true;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> new_tooltip.tip = tooltip;<!-- [et_pb_line_break_holder] --> new_tooltip.elem = elem;<!-- [et_pb_line_break_holder] --> tooltips.push(new_tooltip);<!-- [et_pb_line_break_holder] --> return new_tooltip;<!-- [et_pb_line_break_holder] --> };<!-- [et_pb_line_break_holder] --> var resize_tooltip = function(tooltip) {<!-- [et_pb_line_break_holder] --> var rect = tooltip.elem.getBoundingClientRect();<!-- [et_pb_line_break_holder] --> var doc = document.documentElement, scrollPosition = rect.top - ((window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0));<!-- [et_pb_line_break_holder] --> if (scrollPosition < 40) {<!-- [et_pb_line_break_holder] --> tooltip.tip.className = tooltip.tip.className.replace(/ ?(_above|_below) ?/g, '') + ' _below';<!-- [et_pb_line_break_holder] --> } else {<!-- [et_pb_line_break_holder] --> tooltip.tip.className = tooltip.tip.className.replace(/ ?(_above|_below) ?/g, '') + ' _above';<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> };<!-- [et_pb_line_break_holder] --> var resize_tooltips = function() {<!-- [et_pb_line_break_holder] --> if (_removed) return;<!-- [et_pb_line_break_holder] --> for (var i = 0; i < tooltips.length; i++) {<!-- [et_pb_line_break_holder] --> if (!tooltips[i].no_arrow) resize_tooltip(tooltips[i]);<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> };<!-- [et_pb_line_break_holder] --> var validate_field = function(elem, remove) {<!-- [et_pb_line_break_holder] --> var tooltip = null, value = elem.value, no_error = true;<!-- [et_pb_line_break_holder] --> remove ? remove_tooltip(elem) : false;<!-- [et_pb_line_break_holder] --> if (elem.type != 'checkbox') elem.className = elem.className.replace(/ ?_has_error ?/g, '');<!-- [et_pb_line_break_holder] --> if (elem.getAttribute('required') !== null) {<!-- [et_pb_line_break_holder] --> if (elem.type == 'radio' || (elem.type == 'checkbox' && /any/.test(elem.className))) {<!-- [et_pb_line_break_holder] --> var elems = form_to_submit.elements[elem.name];<!-- [et_pb_line_break_holder] --> if (!(elems instanceof NodeList || elems instanceof HTMLCollection) || elems.length <= 1) {<!-- [et_pb_line_break_holder] --> no_error = elem.checked;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> else {<!-- [et_pb_line_break_holder] --> no_error = false;<!-- [et_pb_line_break_holder] --> for (var i = 0; i < elems.length; i++) {<!-- [et_pb_line_break_holder] --> if (elems[i].checked) no_error = true;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> if (!no_error) {<!-- [et_pb_line_break_holder] --> tooltip = create_tooltip(elem, "Please select an option.");<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> } else if (elem.type =='checkbox') {<!-- [et_pb_line_break_holder] --> var elems = form_to_submit.elements[elem.name], found = false, err = [];<!-- [et_pb_line_break_holder] --> no_error = true;<!-- [et_pb_line_break_holder] --> for (var i = 0; i < elems.length; i++) {<!-- [et_pb_line_break_holder] --> if (elems[i].getAttribute('required') === null) continue;<!-- [et_pb_line_break_holder] --> if (!found && elems[i] !== elem) return true;<!-- [et_pb_line_break_holder] --> found = true;<!-- [et_pb_line_break_holder] --> elems[i].className = elems[i].className.replace(/ ?_has_error ?/g, '');<!-- [et_pb_line_break_holder] --> if (!elems[i].checked) {<!-- [et_pb_line_break_holder] --> no_error = false;<!-- [et_pb_line_break_holder] --> elems[i].className = elems[i].className + ' _has_error';<!-- [et_pb_line_break_holder] --> err.push("Checking %s is required".replace("%s", elems[i].value));<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> if (!no_error) {<!-- [et_pb_line_break_holder] --> tooltip = create_tooltip(elem, err.join('<br/>'));<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> } else if (elem.tagName == 'SELECT') {<!-- [et_pb_line_break_holder] --> var selected = true;<!-- [et_pb_line_break_holder] --> if (elem.multiple) {<!-- [et_pb_line_break_holder] --> selected = false;<!-- [et_pb_line_break_holder] --> for (var i = 0; i < elem.options.length; i++) {<!-- [et_pb_line_break_holder] --> if (elem.options[i].selected) {<!-- [et_pb_line_break_holder] --> selected = true;<!-- [et_pb_line_break_holder] --> break;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> } else {<!-- [et_pb_line_break_holder] --> for (var i = 0; i < elem.options.length; i++) {<!-- [et_pb_line_break_holder] --> if (elem.options[i].selected && !elem.options[i].value) {<!-- [et_pb_line_break_holder] --> selected = false;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> if (!selected) {<!-- [et_pb_line_break_holder] --> elem.className = elem.className + ' _has_error';<!-- [et_pb_line_break_holder] --> no_error = false;<!-- [et_pb_line_break_holder] --> tooltip = create_tooltip(elem, "Please select an option.");<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> } else if (value === undefined || value === null || value === '') {<!-- [et_pb_line_break_holder] --> elem.className = elem.className + ' _has_error';<!-- [et_pb_line_break_holder] --> no_error = false;<!-- [et_pb_line_break_holder] --> tooltip = create_tooltip(elem, "This field is required.");<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> if (no_error && elem.name == 'email') {<!-- [et_pb_line_break_holder] --> if (!value.match(/^[\+_a-z0-9-'&=]+(\.[\+_a-z0-9-']+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,})$/i)) {<!-- [et_pb_line_break_holder] --> elem.className = elem.className + ' _has_error';<!-- [et_pb_line_break_holder] --> no_error = false;<!-- [et_pb_line_break_holder] --> tooltip = create_tooltip(elem, "Enter a valid email address.");<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> if (no_error && /date_field/.test(elem.className)) {<!-- [et_pb_line_break_holder] --> if (!value.match(/^\d\d\d\d-\d\d-\d\d$/)) {<!-- [et_pb_line_break_holder] --> elem.className = elem.className + ' _has_error';<!-- [et_pb_line_break_holder] --> no_error = false;<!-- [et_pb_line_break_holder] --> tooltip = create_tooltip(elem, "Enter a valid date.");<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> tooltip ? resize_tooltip(tooltip) : false;<!-- [et_pb_line_break_holder] --> return no_error;<!-- [et_pb_line_break_holder] --> };<!-- [et_pb_line_break_holder] --> var needs_validate = function(el) {<!-- [et_pb_line_break_holder] --> return el.name == 'email' || el.getAttribute('required') !== null;<!-- [et_pb_line_break_holder] --> };<!-- [et_pb_line_break_holder] --> var validate_form = function(e) {<!-- [et_pb_line_break_holder] --> var err = form_to_submit.querySelector('._form_error'), no_error = true;<!-- [et_pb_line_break_holder] --> if (!submitted) {<!-- [et_pb_line_break_holder] --> submitted = true;<!-- [et_pb_line_break_holder] --> for (var i = 0, len = allInputs.length; i < len; i++) {<!-- [et_pb_line_break_holder] --> var input = allInputs[i];<!-- [et_pb_line_break_holder] --> if (needs_validate(input)) {<!-- [et_pb_line_break_holder] --> if (input.type == 'text') {<!-- [et_pb_line_break_holder] --> addEvent(input, 'blur', function() {<!-- [et_pb_line_break_holder] --> this.value = this.value.trim();<!-- [et_pb_line_break_holder] --> validate_field(this, true);<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> addEvent(input, 'input', function() {<!-- [et_pb_line_break_holder] --> validate_field(this, true);<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> } else if (input.type == 'radio' || input.type == 'checkbox') {<!-- [et_pb_line_break_holder] --> (function(el) {<!-- [et_pb_line_break_holder] --> var radios = form_to_submit.elements[el.name];<!-- [et_pb_line_break_holder] --> for (var i = 0; i < radios.length; i++) {<!-- [et_pb_line_break_holder] --> addEvent(radios[i], 'click', function() {<!-- [et_pb_line_break_holder] --> validate_field(el, true);<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> })(input);<!-- [et_pb_line_break_holder] --> } else if (input.tagName == 'SELECT') {<!-- [et_pb_line_break_holder] --> addEvent(input, 'change', function() {<!-- [et_pb_line_break_holder] --> validate_field(this, true);<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> } else if (input.type == 'textarea'){<!-- [et_pb_line_break_holder] --> addEvent(input, 'input', function() {<!-- [et_pb_line_break_holder] --> validate_field(this, true);<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> remove_tooltips();<!-- [et_pb_line_break_holder] --> for (var i = 0, len = allInputs.length; i < len; i++) {<!-- [et_pb_line_break_holder] --> var elem = allInputs[i];<!-- [et_pb_line_break_holder] --> if (needs_validate(elem)) {<!-- [et_pb_line_break_holder] --> if (elem.tagName.toLowerCase() !== "select") {<!-- [et_pb_line_break_holder] --> elem.value = elem.value.trim();<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> validate_field(elem) ? true : no_error = false;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> if (!no_error && e) {<!-- [et_pb_line_break_holder] --> e.preventDefault();<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> resize_tooltips();<!-- [et_pb_line_break_holder] --> return no_error;<!-- [et_pb_line_break_holder] --> };<!-- [et_pb_line_break_holder] --> addEvent(window, 'resize', resize_tooltips);<!-- [et_pb_line_break_holder] --> addEvent(window, 'scroll', resize_tooltips);<!-- [et_pb_line_break_holder] --> window._old_serialize = null;<!-- [et_pb_line_break_holder] --> if (typeof serialize !== 'undefined') window._old_serialize = window.serialize;<!-- [et_pb_line_break_holder] --> _load_script("//d3rxaij56vjege.cloudfront.net/form-serialize/0.3/serialize.min.js", function() {<!-- [et_pb_line_break_holder] --> window._form_serialize = window.serialize;<!-- [et_pb_line_break_holder] --> if (window._old_serialize) window.serialize = window._old_serialize;<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> var form_submit = function(e) {<!-- [et_pb_line_break_holder] --> e.preventDefault();<!-- [et_pb_line_break_holder] --> if (validate_form()) {<!-- [et_pb_line_break_holder] --> // use this trick to get the submit button & disable it using plain javascript<!-- [et_pb_line_break_holder] --> document.querySelector('#_form_9_submit').disabled = true;<!-- [et_pb_line_break_holder] --> var serialized = _form_serialize(document.getElementById('_form_9_'));<!-- [et_pb_line_break_holder] --> var err = form_to_submit.querySelector('._form_error');<!-- [et_pb_line_break_holder] --> err ? err.parentNode.removeChild(err) : false;<!-- [et_pb_line_break_holder] --> _load_script('https://truust4124.activehosted.com/proc.php?' + serialized + '&jsonp=true');<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> return false;<!-- [et_pb_line_break_holder] --> };<!-- [et_pb_line_break_holder] --> addEvent(form_to_submit, 'submit', form_submit);<!-- [et_pb_line_break_holder] -->})();<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --></script>

facebook icontwitter iconlinkedin icon