function EmailRewrite(cssClass, cssClassDivider) {
	var cssClass = cssClass ? cssClass : "rewrite";
	var cssClassDivider = cssClassDivider ? cssClassDivider : "-";
	var address = new Object();

	this.addAddress = function(name, domain, tld) {
		address[name] = name+"@"+domain+"."+tld;
	};
	this.getAddress = function(name) {
		if (!address[name]) {
			for (var i in address) return address[i];
		}
		return address[name];
	};
	
	
	this.rewrite = function() {
		//var spans = getElementsByClass(cssClass, document, "span");
		var spans = document.getElementsByTagName("span");
		for (var i = 0; i < spans.length; i++) {
			var cssClasses = spans[i].className.split(" ");
			for (var j = cssClasses.length - 1; j >= 0; j--) {
				if (cssClasses[j].substring(0, cssClass.length) == cssClass) {
					if (cssClasses[j] == cssClass) {
						var email = spans[i].firstChild.nodeValue.replace(/<at>/, "@").replace(/<.>/, ".");
						var desc = email;
					} else {
						var desc = spans[i].title ? spans[i].title : spans[i].firstChild.nodeValue;
						var key = spans[i].className.substring(cssClass.length+cssClassDivider.length);
						var email = this.getAddress(key);
					}
					//spans[i].innerHTML = "<a href=\"mailto:"+email+"\">"+desc+"</a>";
					var a = document.createElement("a");
					a.setAttribute("href", "mailto:"+email);
					a.appendChild(document.createTextNode(desc));
					spans[i].replaceChild(a, spans[i].firstChild);
				}
			}
		}
	};
	
	// default-mäßig Adresse hinzufügen
	this.addAddress("kontakt", "aysberg", "de");
}




window.onload = function() {
	var er = new EmailRewrite();
	er.rewrite();
};
