function chkValue(_val, _type, _length)
{
	switch (_type.toLowerCase())
	{
		case "isnumber":
				x = parseInt(_val, 10);
				if (!isNaN(x)) {
					if (x == _val) return true;
				}
				return false;
			break;
		case "minonenum":
				zz = _val;
				for(x = 0; x < zz.length; x++) if (!isNaN(parseInt(zz.charAt(x)))) return true;
				return false;
			break;
		case "minlength":
				x = "_" + _val;
				if (x.length >= _length + 1) return true;
				return false;
			break;
	}
}

function strTest(_val)
{
	if (_val == "") return false;
	x = 0;
	for (a = 0; a < _val.length; a++)
		if ((_val.charAt(a) != " ") &&
			 (_val.charAt(a) != "	")) x++;
	if (x > 0) return true;
	return false;
}

function trimToNum(_val)
{
	x = "";
	for (a = 0; a < _val.length; a++)
		if ((_val.charAt(a) != " ") &&
		    (_val.charAt(a) != ".") &&
			 (_val.charAt(a) != ",") &&
			 (_val.charAt(a) != "-") &&
			 (_val.charAt(a) != "/") &&
			 (_val.charAt(a) != "(") &&
			 (_val.charAt(a) != ")") &&
			 (_val.charAt(a) != "\\") &&
			 (_val.charAt(a) != "	")) x += _val.charAt(a);

	if (chkValue(x, "isNumber")) return x;
	return false;
}

function gotoElement(_name, _isscr)
{
	dd = document.foo.elements[_name];
	if (dd)
	{
		dd.focus();
		if (_isscr) window.scrollBy(0, -20);
	}
}

function showFormErr(_err, _addmsg, _taddmsg)
{
	switch(_err)
	{
		case ERR_EMPTY:
			alert(_addmsg + " mező kitöltése kötelező!");
			break;
		case ERR_NOTANUM:
			alert(_addmsg + " mezőben csak szám szerepelhet!");
			break;
		case ERR_TOOSHORT:
			alert(_addmsg + " mezőben minimum " + _taddmsg + " karakternek kell szerepelnie!");
			break;
		case ERR_NEEDNUM:
			alert(_addmsg + " mezőben minimum egy számnak szerepelnie kell!");
			break;
	}
}

function checkElement(_name, _mtype, _mlength)
{
	dk = document.foo.elements[_name];
	if (dk)
	{
		z = dk.value;
		if (!strTest(z))
		{
			return ERR_EMPTY;
		}
		else
		{
			switch (_mtype)
			{
				case "string":
					if (!chkValue(z, "minLength", _mlength))
					{
						return ERR_TOOSHORT;
					}
					break;
				case "number":
					if (!chkValue(z, "isNumber"))
					{
						return ERR_NOTANUM;
					}
					else
					{
						if (!chkValue(z, "minlength", _mlength))
						{
							return ERR_TOOSHORT;
						}
					}
					break;
				case "strwithnum":
					if (!chkValue(z, "minLength", _mlength))
					{
						return ERR_TOOSHORT;
					}
					if (!chkValue(z, "minonenum"))
					{
						return ERR_NEEDNUM;
					}
					break;
			}

		}
	}
	return NOERR;
}

function chkBoxList(_this)
{
	b = 0;
	for(a = 0; a < 1; a++)
	{
		if (document.foo.elements["auto" + a].checked) b++;
	}
	if (b > 2) return false;
	return true;
}

function validateForm()
{

	nret = checkElement("vezeteknev", "string", 2);
	if (nret != NOERR)
	{
		gotoElement("vezeteknev", true); showFormErr(nret, "A Vezetéknév", 2);
		return false;
	}

	nret = checkElement("keresztnev", "string", 2);
	if (nret != NOERR)
	{
		gotoElement("keresztnev", true); showFormErr(nret, "A Keresztnév", 2);
		return false;
	}

	nret = checkElement("email", "string", 6);
	ema = document.foo.email.value;
	if (nret != NOERR)
	{
		gotoElement("email", false); showFormErr(nret, "Az E-mail cím", 6);
		return false;
	}
	else
	{
		np2 = ema.indexOf("@", 1);
		if (np2 < 1) { gotoElement("email", false); alert("Az E-mail cím nem megfelel? formátumú!"); return false; }
		np3 = ema.indexOf(".", np2 + 2);
		if (np3 < 1) { gotoElement("email", false); alert("Az E-mail cím nem megfelel? formátumú!"); return false; }
	}

	nret = checkElement("irszam", "number", 4);
	if ((nret != NOERR))
	{
		gotoElement("irszam", true); showFormErr(nret, "Az Irányítószám", 4);
		return false;
	}

	nret = checkElement("varos", "string", 2);
	if ((nret != NOERR))
	{
		gotoElement("varos", true); showFormErr(nret, "A Város", 2);
		return false;
	}

	nret = checkElement("cim", "string", 2);
	if ((nret != NOERR))
	{
		gotoElement("cim", true); showFormErr(nret, "A Cím", 2);
		return false;
	}
	if (nret != ERR_EMPTY)
	{
		nret = checkElement("hazszam", "strwithnum", 1);
		if (nret != NOERR)
		{
			gotoElement("hazszam", true);	showFormErr(nret, "A Házszám", 1);
			return false;
		}
	}


	nret = checkElement("vtelelotag", "number", 1);
	if ((nret != NOERR) && (nret != ERR_EMPTY))
	{
		gotoElement("vtelelotag", true); showFormErr(nret, "A körzetszám", 1);
		return false;
	}

	nret1 = checkElement("vtelszam", "number", 6);
	if (((nret1 != NOERR) && (nret1 != ERR_EMPTY)) || ((nret == NOERR) && (nret1 != NOERR)))
	{
		gotoElement("vtelszam", true); showFormErr(nret1, "A telefonszám", 6);
		return false;
	}
	if ((nret1 == NOERR) && (nret == ERR_EMPTY))
	{
		gotoElement("vtelelotag", true); showFormErr(ERR_EMPTY, "A közetszám", 1);
		return false;
	}

	nret2 = checkElement("mtelelotag", "number", 2);
	if ((nret2 != NOERR) && (nret2 != ERR_EMPTY))
	{
		gotoElement("mtelelotag", true); showFormErr(nret2, "A mobiltelefon körzetszám", 2);
		return false;
	}

	nret3 = checkElement("mtelszam", "number", 6);
	if ((nret3 != NOERR) && (nret3 != ERR_EMPTY) || ((nret2 == NOERR) && (nret3 != NOERR)))
	{
		gotoElement("mtelszam", true); showFormErr(nret3, "A mobiltelefon szám", 6);
		return false;
	}
	if ((nret3 == NOERR) && (nret2 == ERR_EMPTY))
	{
		gotoElement("mtelelotag", true); showFormErr(ERR_EMPTY, "A mobiltelefon körzetszám", 2);
		return false;
	}

	nret = checkElement("mtelelotag", "number", 2);
	if (nret != ERR_EMPTY)
	{
		mtnum = document.foo.mtelelotag.value;
		if ((mtnum != 20) && (mtnum != 30) && (mtnum != 60) && (mtnum != 70) && (mtnum != 90))
		{
			gotoElement("mtelelotag", true); alert("A mobiltelefon körzetszám helytelen!\nCsak a 20, 30, 60 és 70-es körzetszámok használhatóak!");
			return false;
		}
	}

	if ((nret1 == ERR_EMPTY) && (nret3 == ERR_EMPTY))
	{
		if (nret == ERR_EMPTY)
		{
			gotoElement("vtelelotag", true);
		}
		else if (nret1 == ERR_EMPTY)
		{
			gotoElement("vtelszam", true);
		}
		else if (nret2 == ERR_EMPTY)
		{
			gotoElement("mtelelotag", true);
		}
		else if (nret3 == ERR_EMPTY)
		{
			gotoElement("mtelszam", true);
		}
		alert("A vezetékes vagy a mobiltelefon szám kitöltése kötelező!");
		return false;
	}


	return true;
}
function obsScreenResolutionX()
{
	return screen.width;
}

function obsScreenResolutionY()
{
	return screen.height;
}

