var signup_for_mailing_list = function(email, fname, lname, referrer, callback_success, callback_failure){
	var $		= jQuery;
	var url		= ((document.location.protocol.toLowerCase() === 'file:')? 'http://www.serenaandlily.com' : '') + '/app/site/crm/externalleadpage.nl';
	var data	= {
		"email"									: email,
		"firstname"								: fname,
		"lastname"								: lname,
		"custentityemail_registration_source"	: referrer,
		"custentity12"							: "T",
		"submitter"								: "Submit",
		"compid"								: "668979",
		"formid"								: "24",
		"h"										: "35dd61d65047aadb148c",
		"type"									: "Customer",
		"formdisplayview"						: "NONE",
		"submitted"								: "T",
		"encoding"								: "UTF-8",
		"redirect_count"						: "1",
		"did_javascript_redirect"				: "T"
	};
	$.post(
		url,
		data,
		function(data, textStatus, jqXHR){

			var statusText;
			try {
				statusText = jqXHR.statusText;
			}
			catch(e){
				console.log('statusText: [cannot be determined]');
				if (typeof callback_failure === 'function'){
					callback_failure();
				}
			}

			switch(jqXHR.statusText){
				case 'OK':
					if (typeof callback_success === 'function'){
						callback_success();
					}
					else if(
						(typeof console === 'object') &&
						(typeof console.log !== 'undefined')
					){
						console.log('record saved!');
					}
					break;
				case 'Partial Content':
					if (typeof callback_failure === 'function'){
						callback_failure();
					}
					else {
						alert('required field missing; please correct and resubmit..');
					}
					break;
				default:
					if(
						(typeof console === 'object') &&
						(typeof console.log !== 'undefined')
					){
						console.log('statusText: ' + jqXHR.statusText);
						if (typeof callback_failure === 'function'){
							callback_failure();
						}
					}
					break;
			}
		}
	);
};

