jQuery.fn.extend({
	defuscate: function(settings) {
		settings = jQuery.extend({
			link: false,
			find: /(.*)(mailto:)?([A-Z0-9._%-]+) *\([^)]+\) *((?:[A-Z0-9-]+\.)+[A-Z]{2,6})(.*)/gi,
			replace: '$1$3@$4$5'
		}, settings);
		return this.each(function(){
			var an = $(this);
			if(an.is('a[@href]') && settings.find.test(an.attr('href'))) {
				an.attr('href', 'mailto:'+an.attr('href').replace(settings.find, settings.replace));
				var is_link = true;
			}
			an.html(an.html().replace(settings.find, (settings.link && !is_link ? '<a href="mailto:' + settings.replace + '">' + settings.replace + '</a>' : settings.replace)));
		});
	}
});

$(function(){
    $('a[@href]').defuscate();
});