function addr(p1,p2) {
	style = '';
	color = addr.arguments[2];
	if (!addr.arguments.length) {
		p1 = 'boss09'
		p2 = 'boss-forum.ru'
	}
	if (color) style = ' style="color:#'+color+'"';
	document.write('<a'+style+' href="mailto:'+p1+'@'+p2+'">'+p1+'@'+p2+'</a>');
}

function checkform(o,r) {
	var err = []
	var re = /^[\w\-\.]+\@[\w-\.]+\.[\w]{2,5}$/
	for(j=0; j<r.length; j++) {
		for (i=0; i<o.length; i++) {
			if (o.elements[i].name==r[j]) {
				if (o.elements[i].name=='E-mail' && !re.test(o.elements[i].value) ) {
					err.push(' E-mail')
					continue
				}
				if (!o.elements[i].value.length) err.push(' ' + r[j])
			}
		}
	}
	if (err.length) {
		alert('Пожалуйста заполните обязательные поля:'+"\n"+err.join("\n"))
		return
	}
	o.submit()
}

function fake(s) {
	var mail = base64_decode(s)
	style = '';
	color = fake.arguments[1];
	if (color) style = ' style="color:#'+color+'"';
	document.write('<a'+style+' href="mailto:'+mail+'">'+mail+'</a>');
}

function base64_decode( data ) {

    var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    var o1, o2, o3, h1, h2, h3, h4, bits, i=0, enc='';
 
    do {  // unpack four hexets into three octets using index points in b64
        h1 = b64.indexOf(data.charAt(i++));
        h2 = b64.indexOf(data.charAt(i++));
        h3 = b64.indexOf(data.charAt(i++));
        h4 = b64.indexOf(data.charAt(i++));
 
        bits = h1<<18 | h2<<12 | h3<<6 | h4;
 
        o1 = bits>>16 & 0xff;
        o2 = bits>>8 & 0xff;
        o3 = bits & 0xff;
 
        if (h3 == 64)      enc += String.fromCharCode(o1);
        else if (h4 == 64) enc += String.fromCharCode(o1, o2);
        else               enc += String.fromCharCode(o1, o2, o3);
    } while (i < data.length);
 
    return enc;
}
