/* -- Általános függvények ------------------------------ */

// Enter tiltás
function disableEnterKey(e) {
	var key;     
	if(window.event) { //IE
		var key = window.event.keyCode;
	}
	else { // FF
		var key = e.which;
	}
	return (key != 13);
}

// E-mail cím ellenőrzése
function emailTeszt(email) {
	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	if(reg.test(email) == false) {
		return false;
	}
	else {
		return true;
	}
}

// Csak latin1 karakter
function latin1(e) {
	if(window.event) { //IE
		var charCode = window.event.keyCode;
	}
	else { // FF
		var charCode = e.which;
	}
	if((charCode > 31 && (charCode < 48 || charCode > 57) && (charCode < 65 || charCode > 90) && (charCode < 97 || charCode > 122) && charCode != 95 && charCode != 45 && charCode != 46) || charCode == 13) {
		return false;
	}
	return true;
}

// Hiba jelzése
function showError(id, keret) {
	$("#" + id).slideDown(300);
	$("input[name=" + keret + "]").css("border", "2px solid #CC0000");
	$("input[name=" + keret + "]").css("margin", "1px");
	changePikt("#check_pic_" + id, "rossz");
}

// Javított hiba elrejtése
function hideError(id, keret) {
	$("#" + id).slideToggle(300);
	$("input[name=" + keret + "]").css("border", "1px solid #BFA56A");
	$("input[name=" + keret + "]").css("margin", "2px");
	changePikt("#check_pic_" + id, "jo");
}

// Piktogram változtatása
function changePikt(id, mire) {
	var jo		= "/kepek/piktogram/accept.png";
	var rossz	= "/kepek/piktogram/remove.png";
	var ures	= "/kepek/ures.gif";
	var check_pic = $("#check_pic_" + id).attr("src");
	if(mire == "ures") {
		if(check_pic != ures) {
			$(id).fadeOut(150, function() {
				$(id).attr("src", ures);
				$(id).fadeIn(150);
			});
		}
	}
	else if(mire == "jo") {
		if(check_pic != jo) {
			$(id).fadeOut(150, function() {
				$(id).attr("src", jo);
				$(id).fadeIn(150);
			});
		}
	}
	else if(mire == "rossz") {
		if(check_pic != rossz) {
			$(id).fadeOut(150, function() {
				$(id).attr("src", rossz);
				$(id).fadeIn(150);
			});
		}
	}
}

// Felhasználónév ellenőrzése az adatbázisban
function checkUsername(nev) {
	if (window.XMLHttpRequest) {
		xmlhttp = new XMLHttpRequest();
  }
	else {
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  }
	xmlhttp.onreadystatechange = function() {
		if(xmlhttp.readyState == 4 && xmlhttp.status == 200) {
			if(xmlhttp.responseText == "ok") {
				$("#checkname").fadeOut(150, function() {
					$("#checkname").html('<span style="color:#336600;">A <strong><em>' + nev + '</em></strong> szabad</span>');
					changePikt("#check_pic_01", "jo");
					$("#checkname").fadeIn(150);
					$("input[name=nick]").css("border", "1px solid #BFA56A");
					$("input[name=nick]").css("margin", "2px");
				});
				$("input[name=hiba_06]").val(0);
			}
			else {
				$("#checkname").fadeOut(150, function() {
					$("#checkname").html('<span class="ajax_error_msg">A <em>' + nev + '</em> már foglalt</span>');
					changePikt("#check_pic_01", "rossz");
					$("#checkname").fadeIn(150);
					$("input[name=nick]").css("border", "2px solid #CC0000");
					$("input[name=nick]").css("margin", "1px");
				});
				$("input[name=hiba_06]").val(1);
			}
		}
	}
	xmlhttp.open("GET", "/inc/check.php?a=1&nev=" + nev, true);
	xmlhttp.send();
}

// E-mail cím ellenőrzése az adatbézisban
function checkUsedEmail(email, mit) {
	if (window.XMLHttpRequest) {
		xmlhttp = new XMLHttpRequest();
  }
	else {
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  }
	xmlhttp.onreadystatechange = function() {
		if(xmlhttp.readyState == 4 && xmlhttp.status == 200) {
			if(mit == 1) {
				if(xmlhttp.responseText == "ok") {
					$("#checkemail").slideToggle(150, function() {
						$("#checkemail").html("");
						changePikt("#check_pic_04", "jo");
						$("input[name=email]").css("border", "1px solid #BFA56A");
						$("input[name=email]").css("margin", "2px");
					});
					$("input[name=hiba_07]").val(0);
				}
				else {
					$("#checkemail").slideToggle(150, function() {
						$("#checkemail").html('<span class="ajax_error_msg">Ezt a címet már valaki más használja.</span>');
						changePikt("#check_pic_04", "rossz");
						$("#checkemail").slideDown(150);
						$("input[name=email]").css("border", "2px solid #CC0000");
						$("input[name=email]").css("margin", "1px");
					});
					$("input[name=hiba_07]").val(1);
				}
			}
			if(mit == 2) {
				if(xmlhttp.responseText == "ok") {
					$("#checkemail").slideToggle(150, function() {
						$("#checkemail").html('<span class="ajax_error_msg">Nincs regisztrált felhasználó a megadott e-mail címmel</span>');
						changePikt("#check_pic_01", "rossz");
						$("#checkemail").slideDown(150);
						$("input[name=reminder_email]").css("border", "2px solid #CC0000");
						$("input[name=reminder_email]").css("margin", "1px");
					});
					$("input[name=hiba_01]").val(1);
				}
				else {
					$("#checkemail").slideToggle(150, function() {
						$("#checkemail").html("");
						changePikt("#check_pic_01", "jo");
						$("input[name=reminder_email]").css("border", "1px solid #BFA56A");
						$("input[name=reminder_email]").css("margin", "2px");
					});
					$("input[name=hiba_01]").val(0);
				}
			}
		}
	}
	xmlhttp.open("GET", "/inc/check.php?a=2&email=" + email, true);
	xmlhttp.send();
}

// A hibához görgetés
function hibaScroll(hova) {
	$.scrollTo($(hova), 300, {offset: {top:-10}});
}

/* -- Elfelejtett jelszó (e-mail cím megadása) ---------- */

// Űrlap elküldése
function reminderSubmit1() {
	/*if(reminderCheck1() == true) {
		$("#reminder").submit();
	}*/
	$("#reminder").submit();
}

function reminderCheck1() {
	var email	= $("input[name=reminder_email]").val();
	
	if(!emailTeszt(email)) {
		if(email.length > 0) {
			changePikt("#check_pic_01", "rossz");
			showError("form_error_01", "reminder_email");
		}
		hiba_01	= true;
	}
	else {
		checkUsedEmail(email, 2);
		//if(hiba_01) {
			hideError("form_error_01", "reminder_email");
		//}
		hiba_01 = false;
	}
	var hiba_02 = false;
	if($("input[name=hiba_01]").val() == 1) {
		hiba_02 = true;
	}
	if(hiba_01 == true || hiba_02 == true) {
		return false;
	}
	return true;
}

/* -- Elfelejtett jelszó (új jelszó beállítása) --------- */

// Űrlap elküldése
function reminderSubmit2() {
	/*if(reminderCheck2(0) == true) {
		$("#setpasswd").submit();
	}*/
	$("#setpasswd").submit();
}

function reminderCheck2(pos) {
	var pw1	= $("input[name=setpasswd_passwd1]").val();
	var pw2	= $("input[name=setpasswd_passwd2]").val();
	
	if(pos == 0 || pos == 1) {
		if(pw1.length < 6 || pw1.length > 16) {
			changePikt("#check_pic_01", "rossz");
			showError("form_error_01", "setpasswd_passwd1");
			$("input[name=hiba_01]").val(1);
		}
		else {
			changePikt("#check_pic_01", "jo");
			if($("input[name=hiba_01]").val() == 1) {
				hideError("form_error_01", "setpasswd_passwd1");
				$("input[name=hiba_01]").val(0);
			}
		}
	}
	if(pos == 0 || pos == 2) {
		if(pw1 != "") {
			if(pw1 != pw2) {
				changePikt("#check_pic_02", "rossz");
				showError("form_error_02", "setpasswd_passwd2");
				$("input[name=hiba_02]").val(1);
			}
			else {
				if($("input[name=hiba_02]").val() == 1) {
					changePikt("#check_pic_02", "jo");
					hideError("form_error_02", "setpasswd_passwd2");
					$("input[name=hiba_02]").val(0);
				}
			}
		}
	}
	if($("input[name=hiba_01]").val() == 1 || $("input[name=hiba_02]").val() == 1) {
		return false;
	}
	return true;
}

/* -- Regisztráció ------------------------------------- */

// Felhasználónév ellenőrzése
function checkNick() {
	var nick = $("input[name=nick]").val();
	if(nick.length < 2 || nick.length > 16) {
		changePikt("#check_pic_01", "rossz");
		showError("form_error_01", "nick");
		$("#checkname").html("");
		$("input[name=hiba_01]").val(1);
	}
	else {
		checkUsername(nick);
		if($("input[name=hiba_01]").val() == 1) {
			hideError("form_error_01", "nick");
		}
		$("input[name=hiba_01]").val(0);
	}
}

function checkPw1() {
	var pw1 = $("input[name=passwd1]").val();
	if(pw1.length < 6 || pw1.length > 16) {
		changePikt("#check_pic_02", "rossz");
		showError("form_error_02", "passwd1");
		$("input[name=hiba_02]").val(1);
	}
	else {
		changePikt("#check_pic_02", "jo");
		if($("input[name=hiba_02]").val() == 1) {
			hideError("form_error_02", "passwd1");
		}
		$("input[name=hiba_02]").val(0);
	}
}

function checkPw2() {
	var pw1 = $("input[name=passwd1]").val();
	var pw2 = $("input[name=passwd2]").val();
	if(pw1 != "") {
		if(pw1 != pw2) {
			changePikt("#check_pic_03", "rossz");
			showError("form_error_03", "passwd2");
		$("input[name=hiba_03]").val(1);
		}
		else {
			changePikt("#check_pic_03", "jo");
			if($("input[name=hiba_03]").val() == 1) {
				hideError("form_error_03", "passwd2");
			}
		$("input[name=hiba_03]").val(0);
		}
	}
}

function checkEmail() {
	var email = $("input[name=email]").val();
	if(!emailTeszt(email)) {
		changePikt("#check_pic_04", "rossz");
		if($("input[name=hiba_07]").val() == 1) {
			$("#checkemail").slideToggle(150);
			$("input[name=hiba_07]").val(0);
		}
		showError("form_error_04", "email");
		$("input[name=hiba_04]").val(1);
	}
	else {
		checkUsedEmail(email, 1);
		if($("input[name=hiba_04]").val() == 1) {
			hideError("form_error_04", "email");
		}
		$("input[name=hiba_04]").val(0);
	}
}

function checkCaptcha() {
	var cptch	= $("input[name=captcha_code]").val();
	if(cptch.length == 0) {
		showError("form_error_05", "captcha_code");
		$("input[name=hiba_05]").val(1);
	}
	else {
		if($("input[name=hiba_05]").val() == 1) {
			hideError("form_error_05", "captcha_code");
		}
		$("input[name=hiba_05]").val(0);
	}
}

// Űrlap elküldése
function registerSubmit() {
	if(registerCheck() == true) {
		$("#register").submit();
	}
}

// E-mail cím megerősítés elküldése
function register2Submit() {
	$("#register2").submit();
}

// Teljes űrlap ellenőrzése
function registerCheck() {
	checkNick();
	checkPw1();
	checkPw2();
	checkEmail();
	checkCaptcha();

	var hiba_01	= $("input[name=hiba_01]").val();
	var hiba_02	= $("input[name=hiba_02]").val();
	var hiba_03	= $("input[name=hiba_03]").val();
	var hiba_04	= $("input[name=hiba_04]").val();
	var hiba_05	= $("input[name=hiba_05]").val();
	var hiba_06	= $("input[name=hiba_06]").val();
	var hiba_07	= $("input[name=hiba_07]").val();

	if(hiba_01 == 1 || hiba_02 == 1 || hiba_03 == 1 || hiba_04 == 1 || hiba_05 == 1 || hiba_06 == 1 || hiba_07 == 1) {
		if(hiba_01 == 1 || hiba_06 == 1) {
			hibaScroll("input[name=nick]");
			return false;
		}
		if(hiba_02 == 1) {
			hibaScroll("input[name=passwd1]");
			return false;
		}
		if(hiba_03 == 1) {
			hibaScroll("input[name=passwd2]");
			return false;
		}
		if(hiba_04 == 1 || hiba_07 == 1) {
			hibaScroll("input[name=email]");
			return false;
		}
		if(hiba_05 == 1) {
			hibaScroll("input[name=captcha_code]");
			return false;
		}
	}
	return true;
}

