<!--

var storePos = null;
var isRange = document.all && !window.opera;

function refreshPos() {
	if (isRange) storePos = document.selection.createRange();
}

function addHandler(o, h, f) { //a function losing ability to use the object_context
	var lh;
	if (o[h]) {lh = o[h]; o[h] = function(e) {!e && (e=event);lh(e);f(e)}}
	else o[h] = f;
} 

function insertSmile(el, text) {
	if (isRange && storePos) storePos.text = text;
	else el.value += text;
	el.focus();
}

function isEmpty(text) {
	return !text || text.match(/^\s+$/);
}

function checkInput(frm) {
	var errs = [];
	var tmp, field;
	
	var fields = [
		['guestName', "Имя", 50, true],
		['guestEmail', "E-mail", 50, false, 'mail'],
		['guestHomepage', "Home Page", 70, false],
		['guestCity', "Город", 30, false],
		['guestMessage', "Сообщение", 1500, true]
	];
	
	for (var i in fields) {
		tmp = "";
		field = fields[i];
		
		if (isEmpty(frm[field[0]].value)) {
			if (field[3]) tmp = "Поле \""+field[1]+"\" не должно быть пустым\n";
			else continue;
		}
		else {
			if (frm[field[0]].value.length > field[2]) tmp = "Поле \""+field[1]+"\" не должно превышать "+field[2]+" символов\n";
			if (field[4] == 'mail' && !frm[field[0]].value.match(/^.+@.+\.\w{2,}$/)) tmp += "Поле \""+field[1]+"\" заполнено неверно\n";
		}
		
		tmp && (errs[errs.length] = tmp);
	}
	
	return errs.length ? (alert(errs.join("\n")), false) : true; 
}

addHandler(window, 'onload', function() {
	with (document.guestFrm) {
		if (isEmpty(guestName.value)) guestName.focus();
		else guestMessage.focus();
	}
})

//-->

