/**************************************************************/
/* Ezt figyelni kell, nehogy felülírja egy hasonló függvény   */
/* Szükség esetén ki kell tenni az index oldalra.             */
var Menu;
window.onload = function() {
//	Menu = new SDMenu("CW_WebshopTermekekMainDiv");
//	Menu.init();
};
/**************************************************************/

function SDMenu(id) {
	if (!document.getElementById || !document.getElementsByTagName)
		return false;
	this.menu = document.getElementById(id); 
	this.submenuk = this.menu.getElementsByTagName("div"); // megszámolja a főmenüket
	this.vezerlok = this.menu.getElementsByTagName("img"); // megszámolja a vezérlőket
	for (var i = 0; i < this.submenuk.length; i++) {
	    this.submenuk[i].subsub = this.submenuk[i].getElementsByTagName("div");
	}
	this.emlekez = true; // cookie-ban tárolja az aktuális menüállapotot
	this.leptek = 5; // nyitási sebesség
	this.aktualis = false; //megjelöli az aktuális hivatkozást
	this.csak_egy_menu = false; // egyszerre csak egy menü lehet nyitva
	this.sebesseg = 5;
	return true;
}
SDMenu.prototype.init = function() {
	var temp = this;
	for (var i = 0; i < this.submenuk.length; i++) {
		this.submenuk[i].getElementsByTagName("span")[0].onclick = function() {
			temp.menuValtas(this.parentNode);
		};
		this.submenuk[i].className = "collapsed";
		this.submenuk[i].style.height = "";
		//////// Utólag beillesztett. Az 'innerHTML'-t teszi be a kategória paraméterébe.//////
/*		var hivatkozasok = this.submenuk[i].getElementsByTagName("a");
		for (var s = 0; s < hivatkozasok.length; s++) {
			hivatkozasok[s].href = "index.php?menu=termekek&kategoria=" + hivatkozasok[s].alt;
		}*/
		//////////////////////////////////////////////////////////////////////////////////////
		if (this.submenuk[i].subsub) {
			for (var z = 0; z < this.submenuk[i].subsub.length; z++) {
				this.submenuk[i].subsub[z].className = "collapsed";
				this.submenuk[i].subsub[z].style.height = "";
			}
		}
	}
	if (this.vezerlok[0]) {
	    this.vezerlok[0].onclick = function() {
	        temp.osszesZaras();
	    }
	    this.vezerlok[0].alt = "Összes zárása";
	}
	if (this.vezerlok[1]) {
	    this.vezerlok[1].onclick = function() {
	        temp.osszesNyitas();
	    }
	    this.vezerlok[1].alt = "Összes nyitása";
	}
	if (this.aktualis) {
		var hivatkozasok = this.menu.getElementsByTagName("a");
		for (var i = 0; i < hivatkozasok.length; i++)
			if (hivatkozasok[i].href == document.location.href) {
				hivatkozasok[i].className = "current";
				break;
			}
	}
	if (this.emlekez) {
		var regex = new RegExp("menu_" + encodeURIComponent(this.menu.id) + "=([01]+)");
		var match = regex.exec(document.cookie);
		if (match) {
			var allapotok = match[1].split("");
			for (var i = 0; i < allapotok.length; i++)
				this.submenuk[i].className = (allapotok[i] == 0 ? "collapsed" : "");
		}
	}
};
SDMenu.prototype.menuValtas = function(submenu) {
	if (submenu.className == "collapsed") 
		this.menuNyitas(submenu); 
	else
		this.menuZaras(submenu);
};
SDMenu.prototype.menuNyitas = function(submenu) {
	var teljesMagassag = submenu.getElementsByTagName("span")[0].offsetHeight;
	var szamlalo = 1;
	if (submenu.subsub) {
		for (var i = 0; i < submenu.subsub.length; i++) {
			teljesMagassag += submenu.subsub[i].getElementsByTagName("span")[0].offsetHeight;
			szamlalo++;
			if (submenu.subsub[i].className != "collapsed") {
				var hivatkozasok = submenu.subsub[i].getElementsByTagName("a");
				for (var z = 0; z < hivatkozasok.length; z++) {
					teljesMagassag += hivatkozasok[z].offsetHeight;
					szamlalo++;
				}
			}
		}
	}
	var hivatkozasok = submenu.getElementsByTagName("a");
	for (var i = 0; i < hivatkozasok.length; i++) {
		if (hivatkozasok[i].parentNode == submenu) {
			teljesMagassag += hivatkozasok[i].offsetHeight;
			szamlalo++;
		}
	}
	/////////////////////////////////////////////////////////// a mozgás...
	var mozgatas = Math.round(this.leptek * szamlalo);
	var temp = this;
	var intervalId = setInterval(function() {
		var aktMagassag = submenu.offsetHeight;
		var ujMagassag = aktMagassag + mozgatas;
		if (ujMagassag < teljesMagassag)
			submenu.style.height = ujMagassag + "px";
		else {
			clearInterval(intervalId);
			submenu.style.height = "";
			submenu.className = "";
			temp.rogzites();
		}
	}, this.sebesseg);
	this.mas_menuZaras(submenu);
};
SDMenu.prototype.menuZaras = function(submenu) {
	var minimumMagassag = submenu.getElementsByTagName("span")[0].offsetHeight;
	var szamlalo = 1;
	if (submenu.subsub) {
		for (var i = 0; i < submenu.subsub.length; i++) {
			szamlalo++;
			if (submenu.subsub[i].className != "collapsed") {
				var hivatkozasok = submenu.subsub[i].getElementsByTagName("a");
				for (var z = 0; z < hivatkozasok.length; z++) {
					szamlalo++;
				}
			}
		}
	}
	var hivatkozasok = submenu.getElementsByTagName("a");
	for (var i = 0; i < hivatkozasok.length; i++) {
		if (hivatkozasok[i].parentNode == submenu) {
			szamlalo++;
		}
	}
	/////////////////////////////////////////////////////////// a mozgás...
	var mozgatas = Math.round(this.leptek * szamlalo);
	var temp = this;
	var intervalId = setInterval(function() {
		var aktMagassag = submenu.offsetHeight;
		var ujMagassag = aktMagassag - mozgatas;
		if (ujMagassag > minimumMagassag)
			submenu.style.height = ujMagassag + "px";
		else {
			clearInterval(intervalId);
			submenu.style.height = "";
			submenu.className = "collapsed";
			temp.rogzites();
		}
	}, this.sebesseg);
};
SDMenu.prototype.mas_menuZaras = function(submenu) {
	if (this.csak_egy_menu) {
		for (var i = 0; i < this.submenuk.length; i++)
			if (this.submenuk[i] != submenu && this.submenuk[i].className != "collapsed")
				this.menuZaras(this.submenuk[i]);
	}
};
SDMenu.prototype.osszesNyitas = function() {
	var oldCsak_egy_menu = this.csak_egy_menu;
	this.csak_egy_menu = false;
	for (var i = 0; i < this.submenuk.length; i++)
		if (this.submenuk[i].className == "collapsed")
			this.menuNyitas(this.submenuk[i]);
	this.csak_egy_menu = oldCsak_egy_menu;
};
SDMenu.prototype.osszesZaras = function() {
	for (var i = 0; i < this.submenuk.length; i++)
		if (this.submenuk[i].className != "collapsed")
			this.menuZaras(this.submenuk[i]);
};
SDMenu.prototype.rogzites = function() {
	if (this.emlekez) {
		var allapotok = new Array();
		for (var i = 0; i < this.submenuk.length; i++)
			allapotok.push(this.submenuk[i].className == "collapsed" ? 0 : 1);
		var d = new Date();
		d.setTime(d.getTime() + (30 * 24 * 60 * 60 * 1000));
		document.cookie = "menu_" + encodeURIComponent(this.menu.id) + "=" + allapotok.join("") + "; expires=" + d.toGMTString() + "; path=/";
	}
};

/***************************/
/* Ajánlatkérés ellenőrzés */

function ajanlat_ellenoriz() {
	var result = true;
	hiba = new new_hiba();
	///////////////
	text = document.CW_AjanlatkeresForm.elements['nev'].value;
	if (text.length < 3) {
		hiba['szoveg'] = "A név legalább 3 karakter kell legyen!";
		hiba['mezo'] = "nev";
	}
	if (text == "") {
		hiba['szoveg'] = "A név mezo kitöltése kötelező!";
		hiba['mezo'] = "nev";
	}
	///////////////
	text = document.CW_AjanlatkeresForm.elements['telefon'].value;
	if (text == "") {
		hiba['szoveg'] = "A telefonszáma megadása kötelező!";
		hiba['mezo'] = "telefon";
	}
	///////////////  
	text = document.CW_AjanlatkeresForm.elements['email'].value;
	if (!EmailCheck(text)) {
		hiba['szoveg'] = "Hibás e-mail cím!";
		hiba['mezo'] = "email";
	}
    ///////////////
	text = document.CW_AjanlatkeresForm.elements['kuldemeny'].value;
	if (text == "") {
		hiba['szoveg'] = "Nem töltötte ki a küldemény mezőt!";
		hiba['mezo'] = "kuldemeny";
	}
	///////////////
	text = document.CW_AjanlatkeresForm.elements['egyeb_varos'].value;
	if (text == "") {
		hiba['szoveg'] = "Nem töltötte ki a város mezőt!";
		hiba['mezo'] = "egyeb_varos";
	}
	//// kiértékelés és hibajelzés
	if (hiba['szoveg'] != "") {
		result = false;
		alert(hiba['szoveg']);
		if ((hiba['mezo'] != "tipus") && (hiba['mezo'] != "evszam")) {
			document.CW_AjanlatkeresForm.elements[hiba['mezo']].select();
		}
	}
	if (result) {
		document.getElementById("ajanlat_submit").disabled = true;
		alert('Kis türelem! Az űrlap hamarosan elküldésre kerül.\nAmennyiben nem jelenik meg a: "Az ajánlatkérés sikeresen elküldve!"\nfelirat, kérjük jelezze munkatársunknak.');
	}
//	return result;
	return false;
}

/**************************/
/* Megrendelés ellenőrzés */

function megrendeles_ellenoriz() {
	
	var result = true;
	hiba = new new_hiba();

	///////////////
	if (cm_KotelezoMezok.indexOf("nev") > -1) {
		text = document.forms['CW_MegrendelesForm'].elements['nev'].value;
		if (text.length < 3) {
			hiba['szoveg'] = "A név legalább 3 karakter kell legyen!";
			hiba['mezo'] = "nev";
		}
		if (text == "") {
			hiba['szoveg'] = "A név mező kitöltése kötelező!";
			hiba['mezo'] = "nev";
		}
	}
	///////////////
	if (cm_KotelezoMezok.indexOf("telefon") > -1) {
		text = document.forms['CW_MegrendelesForm'].elements['telefon'].value;
		if (text == "") {
			hiba['szoveg'] = "A telefonszáma megadása kötelező!";
			hiba['mezo'] = "telefon";
		}
	}
	///////////////  
	if (cm_KotelezoMezok.indexOf("email") > -1) {
		text = document.forms['CW_MegrendelesForm'].elements['email'].value;
		if (!EmailCheck(text)) {
			hiba['szoveg'] = "Hibás e-mail cím!";
			hiba['mezo'] = "email";
		}
	}
	///////////////
	if (cm_KotelezoMezok.indexOf("c_nev") > -1) {
		text = document.forms['CW_MegrendelesForm'].elements['c_nev'].value;
		if (text == "") {
			hiba['szoveg'] = "A címzett neve mező kitöltése kötelező!";
			hiba['mezo'] = "c_nev";
		}
	}
	///////////////
	if (cm_KotelezoMezok.indexOf("c_iranyitoszam") > -1) {
		text = document.forms['CW_MegrendelesForm'].elements['c_iranyitoszam'].value;
		if (text == "") {
			hiba['szoveg'] = "A címzett irányítószáma mező kitöltése kötelező!";
			hiba['mezo'] = "c_iranyitoszam";
		}
	}
	///////////////
	if (cm_KotelezoMezok.indexOf("c_varos") > -1) {
		text = document.forms['CW_MegrendelesForm'].elements['c_varos'].value;
		if (text == "") {
			hiba['szoveg'] = "Az város mező kitöltése kötelező!";
			hiba['mezo'] = "c_varos";
		}
	}
	///////////////
	if (cm_KotelezoMezok.indexOf("c_utca") > -1) {
		text = document.forms['CW_MegrendelesForm'].elements['c_utca'].value;
		if (text == "") {
			hiba['szoveg'] = "Az utca mező kitöltése kötelező!";
			hiba['mezo'] = "c_utca";
		}
	}
	///////////////
	if (cm_KotelezoMezok.indexOf("c_telefon") > -1) {
		text = document.forms['CW_MegrendelesForm'].elements['c_telefon'].value;
		if (text == "") {
			hiba['szoveg'] = "A címzett telefonszáma mező kitöltése kötelező!";
			hiba['mezo'] = "c_telefon";
		}
	}
	///////////////
	if (cm_KotelezoMezok.indexOf("kuldemeny") > -1) {
		if (document.forms['CW_MegrendelesForm'].elements['kuldemeny']) {
			text = document.forms['CW_MegrendelesForm'].elements['kuldemeny'].value;
			if (text == "") {
				hiba['szoveg'] = "Nem töltötte ki a küldemény mezőt!";
				hiba['mezo'] = "kuldemeny";
			}
		}
	}
	if (cm_KotelezoMezok.indexOf("r_ertek") > -1) { // ezt át kell ellenőrizni, mert valószínűleg nem működik
		if (document.forms['CW_MegrendelesForm'].elements['r_ertek']) {
			if (document.forms['CW_MegrendelesForm'].elements['r_ertek'][1].checked) {
				text = document.forms['CW_MegrendelesForm'].elements['egyeb_ertek'].value;
				if (text == "") {
					hiba['szoveg'] = "Adja meg a maximális értékét a küldeménynek!";
					hiba['mezo'] = "egyeb_ertek";
				}
			}
		}
	}
    /////////////// 
	if (cm_KotelezoMezok.indexOf("kiszallitas") > -1) {
		text = document.forms['CW_MegrendelesForm'].elements['ora'].value;
		if (text == "8") {
		  hiba['szoveg'] = "Jelölje meg, hogy mikor kívánja a megrendelt terméket kiszállíttatni!";
		  hiba['mezo'] = "evszam";
		}
	}
	//////////////
	if (cm_KotelezoMezok.indexOf("fizetesi_mod") > -1) {
		modok = document.forms['CW_MegrendelesForm'].fizetesi_mod;
		var nincs_jelolve = true;
		for (var i = 0; i < modok.length; i++) {
			if (modok[i].checked) nincs_jelolve = false;
		}
		if (nincs_jelolve) {
			hiba['szoveg'] = "Nem választott fizetési módot!";
			hiba['mezo'] = "fizetesi_mod";
		}
	}
	//// kiértékelés és hibajelzés
	if (hiba['szoveg'] != "") {
		result = false;
		alert(hiba['szoveg']);
		if ((hiba['mezo'] != "tipus") && (hiba['mezo'] != "evszam") && (hiba['mezo'] != "fizetesi_mod")) {
			document.forms['CW_MegrendelesForm'].elements[hiba['mezo']].select();
		}
	}
	if (result) {
		document.getElementById("CW_MegrendelesSubmit").disabled = true;
		alert('Kis türelem! Az űrlap hamarosan elküldésre kerül.\nAmennyiben nem jelenik meg a: "A megrendelés sikeresen elküldve!"\nfelirat, kérjük jelezze munkatársunknak.');
	}
	return result;
}

function EmailCheck(email) {
	var regex = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/
	var result = regex.test(email) ? true : false;
	if (!result) alert("Hibás e-mail cím!");
	return result;
}

function new_hiba() {
  this['mezo'] = "";
  this['szoveg'] = "";
}

function intOnly(obj) {
	if (obj.value.length > 0) {
		obj.value = obj.value.replace(/[^\d]+/g, ''); 
	}
}

function set_action(url) {
	document.forms["CW_Kosar"].action = url;
	return true;
}
function radiobeallitas(form, r_nev, mezo) {
	text = eval("document.forms['" + form + "'].elements['" + mezo + "'].value");
	eval("document.forms['" + form + "'].elements['" + r_nev + "'][0].checked = (text == \"\")");
	eval("document.forms['" + form + "'].elements['" + r_nev + "'][1].checked = (text != \"\")");
}
function KosarbaCheck(obj) {
	ertek = obj.elements['kosarba'].value;
	van = (ertek != "");
	if (!van) alert("Mennyiség nélkül nem rögzíthető a tétel!");
	return van;
}




