// Replaces text with by in string
function replaceText(string,text,by) {

	var strLength = string.length, txtLength = text.length;
	
	if ((strLength == 0) || (txtLength == 0)) {
		return string;
	}
	
	var i = string.indexOf(text);

	if ((!i) && (text != string.substring(0,txtLength))) {
		return string;
	}
	
	if (i == -1) {
		return string;
	}

	var newstr = string.substring(0,i) + by;

	if (i+txtLength < strLength){
		newstr += replaceText(string.substring(i+txtLength,strLength),text,by);
	}
	
	return newstr;
}

// Funktio posti(a, b, c, d, e)
//
// Piilottaa sähköpostiosoitteen spammiroboteilta.
// Esim posti('Elvis', 'presley', 1, 'Graceland', 'com')
// paluttaa mailto- osoitteen muodossa
// <a href="mailto:elvis.presley@domain.suffix">Elvis Presley</a>
// Vaihtaa ääkköset ä -> a   ö -> o   å -> a
// Kirjoittaa ensimäiset kirjaimet näkyvään nimeen isolla.
// Jos sähköposti pelkällä etunimellä, kutsu posti('Elvis', 1, 'Graceland', 'com')
// Vaihda oletusdomain ja jälkiliite kohdalleen.
//
// kutsu posti(a, b, c, d, e)
// jossa a = etunimi
//       b = sukunimi 
//       c = 1 eli annetaan domain
//       d = domain
//       e = jälkiliite
//
// tai   a = nimi
//       b = 1 eli annetaan domain
//       c = domain
//       d = jälkiliite
//
// tai   a = etunimi
//       b = sukunimi
//
// tai   a = nimi
//
// Copyright © Esa Hietala
// Oulun Laatumikro




function posti(a, b, c, d, e){
	if (!a){
		return;
	}
	var DefaultDomain='pp.inet';
	var DefaultSuffix='fi';

	if ((b!=1)&&(c!=1)){
		var Domain=DefaultDomain;
		var Suffix=DefaultSuffix;
	}
      else{
      	if (b==1){
      		if (!c){
      			var Domain=DefaultDomain;
      		}
      		if (!d){
      			var Suffix=DefaultSuffix;
      		}
      		if (c){
      			var Domain=c.toLowerCase();
      			Domain = replaceText(Domain,'ä','a');
      			Domain = replaceText(Domain,'ö','o');
      			Domain = replaceText(Domain,'å','a');
      		}
      		if (d){
      			var Suffix=d.toLowerCase();
      			Suffix = replaceText(Suffix,'ä','a');
      			Suffix = replaceText(Suffix,'ö','o');
      			Suffix = replaceText(Suffix,'å','a');
      		}
      	}
      	if (c==1){
      		if (!d){
      			var Domain=DefaultDomain;
      		}
      		if (!e){
      			var Suffix=DefaultSuffix;
      		}
      		if (d){
      			var Domain=d.toLowerCase();
      			Domain = replaceText(Domain,'ä','a');
      			Domain = replaceText(Domain,'ö','o');
      			Domain = replaceText(Domain,'å','a');
      		}
      		if (e){
      			var Suffix=e.toLowerCase();
      			Suffix = replaceText(Suffix,'ä','a');
      			Suffix = replaceText(Suffix,'ö','o');
      			Suffix = replaceText(Suffix,'å','a');
      		}
      	}
      }

	var etu = a.toLowerCase();
	if ((b)&&(b!=1)){
		var suku = b.toLowerCase();
	}
	var nimi='';
	//var text='<a class=\"mail_on_black\" href="mailto:';
	var text='<a href="mailto:';
	var address='';
	if ((b)&&(b!=1)){
		var firstLetter = etu.substring(0, 1).toUpperCase();
		var restOfWord = etu.substring(1, etu.length).toLowerCase();
		nimi += firstLetter + restOfWord;
		nimi += ' ';
		firstLetter = suku.substring(0, 1).toUpperCase();
		restOfWord = suku.substring(1, suku.length).toLowerCase();
		nimi += firstLetter + restOfWord;
		etu = replaceText(etu,'ä','a');
		etu = replaceText(etu,'ö','o');
		etu = replaceText(etu,'å','a');
		suku = replaceText(suku,'ä','a');
		suku = replaceText(suku,'ö','o');
		suku = replaceText(suku,'å','a');
		address += etu;
		address += '.';
		address += suku;
		address += '@';
		address += Domain;
		address += '.';
		address += Suffix;
	}
	else{
		var firstLetter = etu.substring(0, 1).toUpperCase();
		var restOfWord = etu.substring(1, etu.length).toLowerCase();
		nimi += firstLetter + restOfWord;
		etu = replaceText(etu,'ä','a');
		etu = replaceText(etu,'ö','o');
		etu = replaceText(etu,'å','a');
		address += etu;
		address += '@';
		address += Domain;
		address += '.';
		address += Suffix;
	}
	text += address;
	text += '">';
	text += address;
	text += '</a>';
	document.write(text);
}