
function fileSelect() {
	var obj = document.getElementById('form');
	var obj2 = document.getElementById('form2');
	if (form.fileSelect.selectedIndex != 0) {
		nextField();
		document.getElementById('formAll').className = '';
		document.getElementById('prgNameHolder').innerHTML = form.fileSelect.options[form.fileSelect.selectedIndex].text;
		var upgrade = document.getElementById('upgrade');
		// ha upgrade, akkor serial bekérése
		if (form['upgrade_' + form.fileSelect.value]) {
			upgrade.className = '';
			isUpgrade = true;
			//form['upgrade_' + form.fileSelect.value].focus();
		} else {
			upgrade.className = 'hide';
			isUpgrade = false;
			form['order[stock]'].focus();
		}
		// ha nincs postaköltség, akkor dobozos termék nem rendelhető
		if (parseInt(form['post_' + form.fileSelect.value].value) == 0) {
			document.getElementById('codeOnly').className = '';
			form['user[sameAddr]'].checked = true;
			document.getElementById('sameAddrCheck').className = 'hide';
			document.getElementById('sameAddr').className = 'hide';
		} else {
			document.getElementById('codeOnly').className = 'hide';
			document.getElementById('sameAddrCheck').className = '';
		}
		// bónusz csomag
		if (form.priceCode_10) {
			if (form.fileSelect.value == 1 || form.fileSelect.value == 3) {
				Bonus.linkShow();
			} else {
				Bonus.linkHide();
			}
		}
		document.getElementById('formView').scrollIntoView(true);
		calc();
	} else {
		document.getElementById('formAll').className = 'hide';
		obj.className = 'hide';
		// bónusz csomag
		if (form.priceCode_10) {
			Bonus.linkHide();
		}
	}
}
function nextField() {
	document.getElementById('form').className = 'hide';
	document.getElementById('form2').className = '';
	changeTag('next');
	if (form.fileSelect.selectedIndex != 0) {
		//form['order[stock]'].focus();
	}

}
function prevField() {
	document.getElementById('form').className = '';
	document.getElementById('form2').className = 'hide';
	form['user[email]'].focus();
	changeTag('prev');
}
function validCode() {
	if (!isUpgrade) {
		return true;
	}
	var type = form['upgrade_' + form.fileSelect.value].value;
	var code = form['order[oldCode]'].value.toUpperCase();
	var v = parseInt(form['version_' + type].value);
	var min = v - 3;
	if (min < 1) {
		min = 1;
	}
	v = min + '-' + (v - 1);
	switch (type) {
		case 'fr' 	: eval('var RE = /^F[A-Z]{3}-[' + v + ']\\d{3}-\\d{4}-\\d{4}-\\d{4}(-\\d{4})?$/;'); break;
		case 'pdft'	: eval('var RE = /^FT[A-Z]{2}-[' + v + ']\\d{3}-\\d{4}-\\d{4}-\\d{4}$/;'); break;
	}

	if (RE.test(code)) {
		return true;
	} else {
		nextField();
		alert('Hibás a megadott licenckód!');
		form['order[oldCode]'].focus();
		return false;
	}
}

function validStock() {
	var s = parseInt(form['order[stock]'].value);
	return (!_isNan(s) && s >= 1);
}

function sameAddr() {
	var display = document.getElementById('sameAddr');
	if (form['user[sameAddr]'].checked) {
		display.className = 'hide';
	} else {
		display.className = '';
		form['user[name2]'].focus();
	}
}


function calc() {
	if (!validStock()) {
		return false;
	}
	checkOrderType();
	var id 			= form.fileSelect.value;
	var priceCode 	= parseInt(form['priceCode_' + id].value);
	var priceBox	= parseInt(form['priceBox_' + id].value);
	var post		= parseInt(form['post_' + id].value);
	var stock		= parseInt(form['order[stock]'].value);
	var percent		= parseInt(form.kuponPercent.value);
	var e 			= (form['user[regio]'].value == 'hu') ? ' Ft.' : ' EUR';
	var priceAll;

	if (form['order[orderType]'].selectedIndex == 0) {
		// letöltős verzió
		priceAll = priceCode * stock;
		post = 0;
		document.getElementById('price').innerHTML = priceCode + e;
		document.getElementById('price2').innerHTML = tax(priceCode) + e;
	} else {
		// dobozos verzió
		priceAll = priceBox * stock;
		document.getElementById('price').innerHTML = priceBox + e;
		document.getElementById('price2').innerHTML = tax(priceBox) + e;
	}
	if (form['user[regio]'].value == 'hu' || (form['user[regio]'].value == 'eu' && _isEmpty(form['user[EU]'].value))) {
		// adó, ha magyar, vagy eu de nincs ue-s adószám
		priceAll = tax(priceAll);
	}
	// kupon
	if (percent > 0) {
		priceAll -= Math.round((priceAll * percent) / 100);
	}
	priceAll += post;
	//if (selectLanguage.selectedIndex == 0) {
	priceAll = priceAll - priceAll % 5 + Math.round(priceAll % 5 / 5) * 5;
	//}

	document.getElementById('post').innerHTML = post + e;
	document.getElementById('priceAll').innerHTML = priceAll + e;
	var orderText 	 = stock + ' db ';
	orderText 		+= form.fileSelect.options[form.fileSelect.selectedIndex].text + ', ';
	orderText 		+= priceAll + e;
	document.getElementById('orderbox').getElementsByTagName('span')[0].innerHTML = orderText;
}

function tax(price) {
	var tax	= parseInt(form.tax.value);
	return Math.round(price * ((tax / 100) + 1));
}

function checkOrderType() {
	//var eu = (form['user[EU]'].value && !_isEmpty(form['user[EU]'].value)) ? true : false;
	var eu = (form['user[regio]'].value == 'hu') ? false : true;
	var post = (parseInt(form['post_' + form.fileSelect.value].value) == 0) ? false : true;

	if (post && !eu) {
		form['order[orderType]'].disabled = false;
	} else {
		form['order[orderType]'].selectedIndex = 0;
		form['order[orderType]'].disabled = true;
	}
}


function changePrices() {
	var obj =  document.getElementById('eu-row');
	if (form['user[regio]'].value == 'eu') {
		obj.className = 'row';
	} else {
		obj.className = 'hide';
	}

	AjaxUpdater.update('POST', 'ajax.php?cmd=changePrices&regio=' + form['user[regio]'].value + '&id=' + form.fileSelect.value, true, loadPrices);
	form['order[stock]'].focus();
}
function loadPrices() {
	var s = Ajax.checkReadyState('requestStatus');
	if (s == 200) {
		var r = Ajax.getResponse();
		eval('var obj=' + r + ';');
  		form["priceCode_" + form.fileSelect.value].value = obj.priceCode;
		form["priceBox_"  + form.fileSelect.value].value = obj.priceBox;
		calc();
	} else if (s > 0) {
		alert(HTTP.status(s));
	}
}

function force(ev) {
	ev || (ev = window.event);
	var obj;
  	obj=getObjectOfEvent(ev);
  	if (!obj) {return true;}

	var id = obj.id.split('_')[1];
	form.fileSelect.value = id;
	fileSelect();
	//document.getElementById('formView').scrollIntoView(true);

	killEvent(ev);
	return false;
}

function checkKupon() {
	form.kuponPercent.value = 0;
	if (!_isEmpty(form['order[kupon]'].value)) {
		AjaxUpdater.update('POST', 'ajax.php?cmd=getkupon&code=' + form['order[kupon]'].value, true, setKupon);
	}
}
function setKupon() {
	var s = Ajax.checkReadyState('requestStatus');
	if (s == 200) {
		var r = Ajax.getResponse();
		if (_isNan(r)) {
			alert("Sikertelen kupon érvényesítés!\n" + r);
		} else {
			alert(r + '% kedvezmény jóváírásra került!');
			form.kuponPercent.value = r;

		}
		calc();
	} else if (s > 0) {
		alert(HTTP.status(s));
	}
}
// Bónusz Csomag

Bonus = {
	active		: false, // ha hamis, akkor inicializálni kell
	activeSelect: false, // ha igaz, akkor már benne van a fájlválasztóban
	activePopup	: false, // ha igaz, a popup nyitva van
	bonusLink	: null
};
Bonus.linkShow = function() {
	if (!this.active) {
		// init
		this.bonusLink = document.getElementById('bonusLink');
		addEvent(this.bonusLink.getElementsByTagName('a')[0], 'click', this.popup);
		addEvent(document.getElementById('bonusOk'), 'click', this.popupClose);
		addEvent(document.getElementById('bonusNo'), 'click', this.popupClose);
		this.active = true;
	}

	this.bonusLink.className = '';
}
Bonus.linkHide = function() {
	if (this.active) {
		this.bonusLink.className = 'hide';
		// popup ha nyitva, bezárni
		if (this.activePopup) {
			this.activePopup = false;
			document.getElementById('bonusPopup').className = 'hide';
		}
	}
}
Bonus.popup = function(ev) {
	ev || (ev = window.event);
	var obj;
  	obj=getObjectOfEvent(ev);
  	if (!obj) {return true;}

	// ha még nincs a bonusz csomag a termékválasztóban, bekerül
	if (!Bonus.activeSelect) {
		var opt = DOMEditor.createElement('option');
		opt.value = 10;
		opt.innerHTML = opt.text = 'Bónusz Csomag (PDF Transformer + FineReader)';
		DOMEditor.append(form.fileSelect, opt);
		Bonus.activeSelect = true;
	}

	if (!Bonus.activePopup) {
		Bonus.activePopup = true;
		obj = document.getElementById('bonusPopup');
		obj.className = '';
		obj.scrollIntoView();
	}

	killEvent(ev);
	return false;
}
Bonus.popupClose = function(ev) {
	ev || (ev = window.event);
	var obj;
  	obj=getObjectOfEvent(ev);
  	if (!obj) {return true;}

	//popup bezárása
	obj.parentNode.parentNode.className = 'hide';
	Bonus.activePopup = false;

	if (obj.id == 'bonusOk') {
		// bónusz kiválasztása
		form.fileSelect.value = 10;
		fileSelect();
	}

	killEvent(ev);
	return false;
}


