Static Email subscription

subscribe new contact with form placed into your website

Requirements

Mailocator snippet must be present

If you do not have installed Mailocator in your website, please read Mailocator installation notes at first.

Validate email address before subscription (optional)

If you want to validate email addresses, simply switch Addresscheck on.

  • Go to Mailocator app
  • Choose your campaign
  • Open Features & Settings in top menu
  • Select E-mail validation
  • Switch Addresscheck on and follow further instructions



Email subscription

subscription process

subscription proces is based on simple JavaScript request and callback function.

To subscribe your form with Mailocator simply call following Mailocator Action:
mailocator.action.subscribe( user, callback )

- user is object with at least one property email storing email address to be subscribed.
You can also add more properties like custom and system fileds (user.opt_customFiledName)s.

- callback is a callback function called by Mailocator when subscription is done. It will receive only one argument - result object

The validation process can take from milliseconds to several seconds depending on mailserver response etc.

Result object description

ProperyDescription
status
  • 1 subscribed
  • 0 email already in database
  • -1 invalid email address
  • -99 system error
emailsubscribed email
timeunix timestamp of last check
suggestioncontain correct email address suggestion, if email is invalid and Addresscheck is switched on

Example

Basic form with email input and onclick event


<h1>Email static subscription</h1>
<input type="text" name="email" value="" id="emladdr" size="50" />  
<button onclick="subscribe()">subscribe</button>

Custom function

subscribe email input by passing in Mailocator action.

function subscribe(){		        
   var user   = {};
   user.email = document.getElementById('emladdr').value;
   mailocator.action.subscribe( user, callback );          
}

Callback function

Evaluate subscription result

function callback( result ){
   console.log( result );
   var status = parseInt(result.status);
   switch( status ){
      case 1  : { /* subscribed successfuly */  break;}
      case 0  : { /* contact already subscribed */ break;}
      case -1 : { /* email syntax error */ break; }
      case -99: { /* system error */ break; }
   }	           		        
}