function addEvent(obj, evType, fn) {
	if (obj.addEventListener) {
		obj.addEventListener(evType, fn, true);
		return true;
	} else if (obj.attachEvent) {
		var r = obj.attachEvent("on"+evType, fn);
		return r;
	} else {
		return false;
	}
}

function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if (node == null) node = document;
	if (tag == null) tag = '*';
	var elems = node.getElementsByTagName(tag);
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	var i = 0;
	for (var j = 0; j < elems.length; j++) {
		if ( pattern.test(elems[j].className) ) {
			classElements[i++] = elems[j];
		}
	}
	return classElements;
}

function resetForm(field) {
	var frm = document.getElementById('form_choose_vehicle');
	var sel_year = frm.year;
	var sel_veh = frm.vehicle_id;
	
	if (field == 'brand_id') {
		if (sel_year) sel_year.options[sel_year.selectedIndex].value = 0;
		if (sel_veh) sel_veh.options[sel_veh.selectedIndex].value = 0;
	}
	else if (field == 'year') {
		if (sel_veh) sel_veh.options[sel_veh.selectedIndex].value = 0;
	}
	
	frm.submit();
}

function numberFormat(nStr) {
	if (nStr == '0' || nStr == '') return '0';
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ' ' + '$2');
	}
	return x1 + x2;
}

function openWin(url,w,h,resize) {
	var wint = (screen.height-h)/2;
	var winl = (screen.width-w)/2; 
	var win  = window.open(url,'_blank','width=' + w + ',height=' + h + ',resizable=' + resize + ',scrollbars=1,menubar=0,status=1,top=' + wint + ',left=' + winl);
}

function calcTotals() {
	var items = getElementsByClass('calc_form');
	if (items) {
		for (var i=0; i < items.length; i++) {
			var frm = items[i];
			var total = 0;
			if (frm.foot_pack_price != undefined) {
				total += frm.foot_pack_price.value * 1;
				document.getElementById(frm.id + '_foot_pack_price').innerHTML = numberFormat(frm.foot_pack_price.value);
			}
			if (frm.bar_price != undefined) {
				total += frm.bar_price.value * 1;
				document.getElementById(frm.id + '_bar_price').innerHTML = numberFormat(frm.bar_price.value);
			}
			if (frm.kit_price != undefined) {
				total += frm.kit_price.value * 1;
				document.getElementById(frm.id + '_kit_price').innerHTML = numberFormat(frm.kit_price.value);
			}
			if (frm.adapter_price != undefined) {
				total += frm.adapter_price.value * 1;
				document.getElementById(frm.id + '_adapter_price').innerHTML = numberFormat(frm.adapter_price.value);
			}
			if (frm.lock_price != undefined && frm.lock_price.value != 0) {
				if (document.getElementById(frm.id + '_lock_check').checked) {
					total += frm.lock_price.value * 1;
				}
				document.getElementById(frm.id + '_lock_price').innerHTML = numberFormat(frm.lock_price.value);
			}
			var field_total = document.getElementById(frm.id + '_total');
			field_total.innerHTML = numberFormat(total);
		}
	}
}

function calcTotalsBC() {
	var items = getElementsByClass('calc_form');
	if (items) {
		for (var i=0; i < items.length; i++) {
			var frm = items[i];
			var total = 0;
			if (frm.bc_price != undefined) {
				total += frm.bc_price.value * 1;
				document.getElementById(frm.id + '_bc_price').innerHTML = numberFormat(frm.bc_price.value);
			}
			if (frm.adapter_price != undefined) {
				total += frm.adapter_price.value * 1;
				document.getElementById(frm.id + '_adapter_price').innerHTML = numberFormat(frm.adapter_price.value);
			}
			var field_total = document.getElementById(frm.id + '_total');
			field_total.innerHTML = numberFormat(total);
		}
	}
}

function addProduct(id) {
	var action = document.getElementById('frm_products').action;
	var num = document.getElementById('p['+id+'][num]').value;
	document.location.href = action + '/cart_add/' + id + '/' + num;
}

function sendOrder() {
	var frm = document.getElementById('form_order');
	if (frm.customer_name.value == '' || frm.customer_email.value == '' || frm.customer_tel.value == '') {
		alert('Kérjük a mezőket kitölteni!');
	}
	else {
		frm.submit();
	}
}
function toggleSub(el) {
	var nextEl = el.children[1];
	
	if (nextEl.style.display == 'block')
		nextEl.style.display = 'none';
	else
		nextEl.style.display = 'block';
}

function markMenuItem(selfid,parentid) {
	var el = document.getElementById('mi-'+selfid);
	if (parentid > 0) {
		el.setAttribute('class', 'level2 selected');
		toggleSub(document.getElementById('mi-'+parentid));
	}
	else {
		el.setAttribute('class', 'selected');
	}
}

function playSlides(el) {
	var fo = new FlashObject("/i/slides/slideshow.swf", "player", "900px", "200px", "9", "#ffffff");
	fo.addParam("allowFullScreen", "true");
	fo.addParam("allowScriptAccess", "true");
	fo.addParam("swLiveConnect", "true");
	fo.addParam("quality", "best");
	fo.addParam("scale", "noscale");
	fo.addParam("menu", "false");
	fo.addParam("wmode", "transparent");
	fo.addVariable("xmlfile", "/i/slides/slides.xml");
	fo.write(el);
}

function hideOverlay() {
	var o = document.getElementById('overlay');
	var oc = document.getElementById('overlay-cont');
	o.style.display = 'none';
	oc.style.display = 'none';
	oc.innerHTML = '';
}

function showOverlay(el,type) {
	var w, h;
	if (type == 1) {
		w = 600;
		h = 300;
	}
	else {
		w = 618;
		h = 408;
	}
	var o = document.getElementById('overlay');
	var oc = document.getElementById('overlay-cont');
	var html = '';
	html = '<img src="'+el+'" width="'+w+'" height="'+h+'" />';
	oc.innerHTML = html;
	oc.style.top = getPageScroll()[1] + (getViewport().height/2) - (h/2) + 'px';
	if (type == 2) {
		oc.style.width = w +'px';
	}
	o.style.display = 'block';
	oc.style.display = 'block';
}

function initPopins() {
	var popins = getElementsByClass('popin',null,'a');
	if (popins) {
		for (var i = 0; i <= popins.length; ++i ) {
			if (popins[i] == undefined) continue;
			popins[i].onclick = function(e) {
				if(!e) { // IE
					e = window.event;
					e.returnValue = false;
				}
				else {
					e.preventDefault();
				}
				showOverlay(this,1);
			}
		}
	}
	var popins2 = getElementsByClass('popin2',null,'a');
	if (popins2) {
		for (var i = 0; i <= popins2.length; ++i ) {
			if (popins2[i] == undefined) continue;
			popins2[i].onclick = function(e) {
				if(!e) { // IE
					e = window.event;
					e.returnValue = false;
				}
				else {
					e.preventDefault();
				}
				showOverlay(this,2);
			}
		}
	}
}

function getViewport() {
	var e = window, a = 'inner';
	if ( !('innerWidth' in window) ) {
		a = 'client';
		e = document.documentElement || document.body;
	}
	return { width : e[ a+'Width' ] , height : e[ a+'Height' ] };
}


function getPageScroll() {

	var xScroll, yScroll;

	if (self.pageYOffset) {
		yScroll = self.pageYOffset;
		xScroll = self.pageXOffset;
	} else if (document.documentElement && document.documentElement.scrollTop){	 // Explorer 6 Strict
		yScroll = document.documentElement.scrollTop;
		xScroll = document.documentElement.scrollLeft;
	} else if (document.body) {// all other Explorers
		yScroll = document.body.scrollTop;
		xScroll = document.body.scrollLeft;	
	}

	arrayPageScroll = new Array(xScroll,yScroll) 
	return arrayPageScroll;
}

addEvent(window, 'load', initPopins);

