// Email.js version 5
//////////////////////////////////////////////
//<script language="javascript" src="/scripts/email.js"></script>
//You must be careful to specify the correct path to the email.js file - here I've assumed you've saved it into a top-level "scripts" directory in your site.
//
//Now, every email link must be converted to a script call. For instance, a link such as:
//
//<a href="mailto:nobody@fake.address9z.com">Mr Nobody</a>
//Needs to be recoded as:
//
//<script>mail2("nobody","fake.address9z",0,"","Mr Nobody")</script>
//The simplest way to encode your mail links is to use my automatic tool. This converts a list of email addresses into the required Javascript calls for step (2), with a simple button press. 
//
//If you do want to encode the links manually, here is a description of the five parameters needed by the mail2() function call: 
//
//The email name: i.e. the bit before the @ sign 
//The second-level domain of the email address: this is the bit after the @ sign, but with the top level domain (".com" or ".co.uk" etc) stripped off. 
//A number specifying which top-level domain to use. I list these below. 
//The fourth parameter allows you to specify a default subject for the email, by passing e.g. "?subject=Changeringing", but normally you'll just need the empty string "". 
//Finally, the text of the link, i.e. the name to be displayed to the user in the web page. 
//Sometimes you might want to code a link in which the email address itself is shown as the visible text, e.g. nobody@fake.address9z.com. To do this, simply call mail() rather than mail2(). Only the first four parameters are needed. 
//
//http://www.bronze-age.com/nospam/index.html
/////////////////////////////////////////////////////
var tld_ = new Array()
tld_[0] = "com";
tld_[1] = "org";
tld_[2] = "net";
tld_[3] = "ws";
tld_[4] = "info";
tld_[10] = "co.uk";
tld_[11] = "org.uk";
tld_[12] = "gov.uk";
tld_[13] = "ac.uk";
var topDom_ = 13;
var m_ = "mailto:";
var a_ = "@";
var d_ = ".";

function mail(name, dom, tl, params)
{
	var s = e(name,dom,tl);
	document.write('<a href="'+m_+s+params+'">'+s+'</a>');
}
function mail2(name, dom, tl, params, display)
{
	document.write('<a href="'+m_+e(name,dom,tl)+params+'">'+display+'</a>');
}
function e(name, dom, tl)
{
	var s = name+a_;
	if (tl!=-2)
	{
		s+= dom;
		if (tl>=0)
			s+= d_+tld_[tl];
	}
	else
		s+= swapper(dom);
	return s;
}
function swapper(d)
{
	var s = "";
	for (var i=0; i<d.length; i+=2)
		if (i+1==d.length)
			s+= d.charAt(i)
		else
			s+= d.charAt(i+1)+d.charAt(i);
	return s.replace(/\?/g,'.');
}

