var wickedHome = {
	init : function() {
		$E.on('mlForm', 'submit', wickedHome.joinMailingList);
		
		//Save to Delicious popup with data population
		$E.on('bookmarkDelicious', 'click', function(ev) {
			$E.stopEvent(ev);
			window.open('http://delicious.com/save?v=5&amp;noui&amp;jump=close&amp;url='+encodeURIComponent(location.href)+'&amp;title='+encodeURIComponent(document.title), 'delicious','toolbar=no,width=550,height=550');
		});
	},
	
	joinMailingList : function(ev) {
		$E.stopEvent(ev);
		var form = $E.getTarget(ev);
		
		//Check email
		var field = $('email');
		if(!field) return;
		var value = field.value;
		if(value == '') {
			alert('Email is required');
			field.focus();
			return;
		}
		if(value.search(/^[a-zA-Z0-9\.,\_\<\>\-]+@[a-zA-Z0-9\.,\_\<\>\-]+\..+$/) == -1) {
			alert('Invalid email address');
			field.focus();
			return;
		}
				
		var callback = {
			success : function(o) {
				//Remove form from DOM
				form.parentNode.removeChild(form);
				
				//Add success message
				var p = mkEl('p');
				p.innerHTML = "Thanks for joining";
				
				var div = $D.getElementsByClassName('mailingList', 'div', 'left');
				if(div[0]) div[0].appendChild(p);
			},
			failure : function(o) {
				alert("Apologies - you couldn't be added at this time.\nPlease try again later");
			},
			timeout: 6000
		};
		
		YAHOO.util.Connect.asyncRequest('POST', 'ajax/mailinglist.ajax.php', callback, 'email='.concat(value));
	}
};

$E.onDOMReady(wickedHome.init);