function isBadElem(elem)
{
	// I assume that elem is a string type;
	var length = elem.value.length;
	for (i=0; i<length; i++)
	{
		if (elem.value.charAt(i) != ' ' &&
			elem.value.charAt(i) != '!' &&
			elem.value.charAt(i) != '?' &&
			elem.value.charAt(i) != ',' &&
			elem.value.charAt(i) != '.' &&
			elem.value.charAt(i) != '\n' &&
			elem.value.charAt(i) != '\r' &&
			elem.value.charAt(i) != '*' &&
			elem.value.charAt(i) != '/' &&
			elem.value.charAt(i) != '\\' &&
			elem.value.charAt(i) != '+' &&
			elem.value.charAt(i) != '-'
			) { return false; }
	}
	alert("Ââåäèòå ÷òî-íèáóäü ñóùåñòâåííîå");
	elem.value = "";
	elem.focus();
	return true;
}

function isEmail(str)
{
	if (str.indexOf("@") != "-1" &&
		str.indexOf(".") != "-1" &&
		str != "")
	return true;
	else return false;
}

function isEmptyElem(elem, strComment)
{
	if (elem.value == "")
	{
		alert(strComment);
		elem.focus();
		return true;
	}
	return false;
}

function isDateValid(day, month, year) {
	if (day == 0 || day > 31) { return false }
	if (month == 0 || month > 12) { return false }
	switch (month)
	{
	case 1:
	case 3:
	case 5:
	case 7:
	case 8:
	case 10:
	case 12:
		if (day < 32) { return true }
		break
	case 2:
		if (day < 29) { return true }
		break
	case 4:
	case 6:
	case 9:
	case 11:
		if (day < 31) { return true }
		break
	}
	return false
}
