if (wait_for_mpp) {
    document.observe('mpp:loaded', function() {  setTimeout(initOverlay,1000) });
} else {
    document.observe("dom:loaded", function() {  initOverlay(); });
    Event.observe ( window, 'load', function() { initOverlay(); } );
}

// Flag to make sure this fires only once.
var overlay_inited = 0;
initOverlay = function () {
	if (overlay_inited) {
		return;
	} else {
		overlay_inited++;
	}
	if ( Cookie.get('OPTIN_SEEEN') == null ) {
		launchOptinOverlay();
	}
	
};

launchOptinOverlay = function() {
        Cookie.set( 'OPTIN_SEEEN', '1', 31556926);
        document.fire('opt_in:loading');
        console.log('optin loading');
		// bug 28585
		if ( $('sppVideo') ) {
			$('sppVideo') .javascriptToFlash('pauseVideo');
		}
        
		generic.templatefactory.get({path: '/templates/optin_overlay.tmpl'}).evaluateCallback({
			callback: function (html){
				generic.overlay.launch({
					content  : html,
					cssStyle : {width:'665px', height:'385px',  border:'4px solid #ccc', padding:'0px'},
                    fireOnClose : 'opt_in:finished'
				});
                $('optin_container').style.backgroundImage = 'url("/images/optin/'+optin_key+'_image.jpg")';
                $('optin_header').src = '/images/optin/'+optin_key+'_header.gif';
                $('optin_button').src = '/images/optin/'+optin_key+'_btn.gif';
                $('optin_overlay_CM_VALUE').value+=optin_key;
                $('optin_overlay_LAST_SOURCE').value+=optin_key;
                
                // listen for "submit" event
                var optinForm = $('optin_overlay-_-email_signup');
                if (!optinForm) {
                    return;
                }
                optinForm.observe( "submit", function (submitEvt) {
                    submitEvt.preventDefault();
                    //call submit handler
                    submitClickHandler(optinForm);
                    document.fire('opt_in:finished');
                }); // end optinForm.observe
                    
                
                var submitClickHandler = function (optinForm){
                    var paramObj = optinForm.serialize(true);
                    paramObj._SUBMIT = "optin_overlay-_-email_signup";
                    generic.jsonrpc.fetch({
                        method: 'rpc.form',
                        params: [paramObj],
                        onSuccess: function(jsonRpcResponse) {
                            $('optin_overlay_right').innerHTML = '<div style="height: 200px; width: 300px; position: relative;"><h3 style="position: absolute; bottom: 0pt;">Thank you for signing up to receive clinique.com email.<br><br>To make sure you receive clinique.com email in your inbox, please add clinique@e.clinique.com to your address book.</h3></div>';
                            var reset = function () {
                                generic.overlay.hide();
                            };         
                            this.timeout = setTimeout(reset.bind(this),5000);	  
                        },
                        onFailure: function (jsonRpcResponse) {
                            var errorObjectsArray = jsonRpcResponse.getMessages();
                            var errListNode = optinForm.select("ul.error_messages")[0];
                            generic.showErrors(errorObjectsArray, errListNode, optinForm);
                        }
                    }); // end generic.jsonrpc.fetch
                };       
			}
		});
      
        
	};

 
