/**
 *Register interest emails.
 */

//=============================================================================>
/**
 *Constructor
 */
function Capsool_Holding_Page(){
  
  //Constants
  this.constants = {};
  this.constants.PROMPT = 'email address';
  
  //DOM
  this.dom = {};
  
  //State
  this.state = {};
  
  //Widgets
  this.widget = {};
}
//#############################################################################>
/**
 *Email on blur handler
 */
Capsool_Holding_Page.prototype.email_onblur = function( evnt ){
  
  var vvv = this.dom.email.val();
                    
  if( vvv.length == 0 ){
    this.dom.email.val( this.constants.PROMPT );
  }
}
//#############################################################################>
/**
 *Email on focus handler
 */
Capsool_Holding_Page.prototype.email_onfocus = function( evnt ){
  
  var vvv = this.dom.email.val();
                    
  if( vvv == this.constants.PROMPT ){
    this.dom.email.val( '' );
  }
}
//#############################################################################>
/**
 *Form submit handler
 */
Capsool_Holding_Page.prototype.form_onsubmit = function( evnt ){
  
  var self = this
  
  evnt.preventDefault();
  evnt.stopPropagation();
  
  this.dom.thanks_opener.trigger('click');//Fancybox
  
  //Register
  var email = this.dom.email.val();
  
  var deferred = jQuery.post(
      AppBase + '/welcome/registerinterest/ajax/1',
      { 'email':  email,
        'Submit': 'Submit'
      }
  );
  
  deferred.done(
    function( response ){
      
      self.dom.email.val( '' );
      self.dom.email.blur();
      
      //self.dom.thanks_opener.trigger('click');//Fancybox
    }
  ).fail(
    function( response ){
      window.alert('An error has occurred');
    }
  );
  
  return false;
}
//#############################################################################>
/**
 *Initialise the page
 */
Capsool_Holding_Page.prototype.initialise = function(){
  
  var self = this;
  
  //Dom
  this.dom.email = jQuery( '#idEmailFormInput' );
  this.dom.form  = jQuery( '#idRegisterInterestForm' );
  
  this.dom.thanks_opener = jQuery( 'a.thanks_opener' );
  
  //Events
  this.dom.email.bind( 'blur',  {'self': self}, function(evnt){ evnt.data.self.email_onblur( evnt); } );
  this.dom.email.bind( 'focus', {'self': self}, function(evnt){ evnt.data.self.email_onfocus(evnt); } );
  
  this.dom.form.bind( 'submit', {'self': self}, function(evnt){ return evnt.data.self.form_onsubmit( evnt); } );
  
  //Widgets
  this.widget.popup = this.dom.thanks_opener.fancybox(
		{
			'autoDimensions': false,
			'width':          400,
			'height':          80,
			'transitionIn':   'none',
			'transitionOut':  'none',
			'centerOnScroll': true,
			'scrolling':      'auto'
		}
	);
};
//#############################################################################>
/**
 *Render page
 */
Capsool_Holding_Page.prototype.render = function(){
  
  this.dom.email.blur();
}
//#############################################################################>
/**
 *Start up the page item
 */
jQuery(document).ready(
  function(){ 
    
    Capsool_Holding_Page.instance = new Capsool_Holding_Page();
    
    Capsool_Holding_Page.instance.initialise();
    Capsool_Holding_Page.instance.render();
  }
);
//=============================================================================>


